# AI AGENT RULES - MANDATORY ENTRY POINT **READ THIS ENTIRE FILE BEFORE EXECUTING ANY TASK.** This is the **Single Source of Truth** for ALL Artificial Intelligence agents (Claude, Gemini, etc.) working on this project. (Automatic IDE entry points like `GEMINI.md` and `CLAUDE.md` exist solely to redirect agents to this main file). For technical architecture, data models, and stack details, refer to [PROJECT_ARCHITECTURE.md](PROJECT_ARCHITECTURE.md). ## 1. Multi-AI Coordination & Memory - **MANDATORY STARTUP**: Every AI session MUST first read `dev_docs/SESSION_STATE.md` to understand current context. - **MANDATORY HANDOVER**: At the end of every task/session, update the handover note in `dev_docs/SESSION_STATE.md`. Specify: **Active AI**, **Current Status**, **Technical Context**, and **Next Steps**. - **ARCHIVAL RULE**: Before writing new state, move all content of the *previous* session handover into the top of `dev_docs/SESSION_HISTORY.md` to prevent bloat. - **NO INTERACTION OVERLAP**: Never modify a file if another AI session is explicitly working on it. ## 2. Global Operational Laws - **STRICT ENGLISH POLICY**: All web interfaces, code, variables, scripts, and documentation MUST BE DIRECTLY AND ONLY IN ENGLISH. If you find Romanian text in code, translate it immediately. - **COMMUNICATION LANGUAGE**: Conversation with the user will be in Romanian or English (preferably Romanian). - **GIT BINARY PATH**: On this macOS environment, the system `git` is often broken. ALWAYS use the binary path stored in `.git_path` at the project root for all Git operations. - **COMMIT & PUSH STRICT RULE**: - Never push to remote (`git push`) or use force flags (`--hard`, `--force`) unless explicitly requested. - Always update `VERSION.json` on every commit. - Do NOT add AI co-author signatures (e.g., `Co-Authored-By: AI...`) to commit messages. - Branching: `master` (stable), `dev` (active development), `vX` (archival releases). - **PACKAGE MANAGEMENT**: Any new package installed via `pip install` MUST be added to `backend/requirements.txt` with version constraints (e.g., `slowapi>=0.1.9`). Keep requirements.txt synchronized with installed packages. - **MANDATORY LOGGING**: Document coding/architecture changes in `dev_docs/ARCHIVE_LOGS.md` at the end of the task. - **TRIPLE CONFIRMATION (Safe Forget)**: You cannot delete a physical location, item, or critical entity without explicit user permission three times. ## 3. UI/UX Fidelity Specifications - **Fidelity First**: Never simplify the UI unless asked. Density and aesthetics must remain "Premium". - **Styling**: Tailwind CSS. Font weights/spacing must be consistent (Inter/Roboto). - **Readability**: NO `uppercase` or `tracking-widest` styles. Use standard camel/Title case. - **Icons**: Use **Lucide Icons** exclusively. NO emojis. - **Interactive Affordance**: All select/dropdown boxes MUST have a `ChevronDown` icon. Masked passwords should have reduced opacity (`text-white/50`). - **Iconography Standardization**: - **Categories**: ALWAYS use `Layers` (Color: `text-primary`). - **Item Types**: ALWAYS use `Package` (Color: `text-green-500`). ## 4. Documentation Maintenance - **SSOT INTEGRITY**: Whenever a feature is added, modified, or removed, you MUST update all corresponding documentation files: - `README.md` (General usage & technical modes). - `USER_GUIDE.md` (End-user instructions). - `PROJECT_ARCHITECTURE.md` (Technical logic & data models). - `export_prod.sh` (If new scripts or files must be included in the production bundle). - **REAL-TIME UPDATES**: Documentation updates are NOT optional and must be performed within the same session as the code changes. ## 5. End of Session Protocol - Once a phase/task from `PLAN.md` is completed and verified, move that entry into `dev_docs/PLAN_HISTORY.md`. - After finishing an entire job (including updating session state, architecture logs, and versioning), end your final response on a separate line exactly with: ``` --- ✓ Done. ``` - Do not provide unnecessary verbatim summaries of the code.