---
trigger: always_on
---

# Antigravity Project Rules & Guidelines

## 1. Project Context
- **Goal**: Create a user-friendly wrapper for `https://web.bessa.app/knapp-kantine`.
- **Core Mission**: Improve UX with a Weekly View, simplified booking flow, and cost transparency.
- **Environment**: **LIVE PRODUCTION SYSTEM**. Usage incurs real financial costs.

## 2. Security & Operational Protocols 🛡️
**CRITICAL: You must obtain explicit user approval before:**
1.  **Financial Actions**: Any action that triggers a cost (Ordering/Booking).
2.  **Credentials**: Submitting forms with usernames/passwords.
3.  **High-Risk Commands**: System-level deletion or potentially destructive terminal commands.

**Live System Protocol:**
- Treat the target website as a fragile production environment.
- Minimize automated browsing traffic.

## 3. Web Software Expert Persona
- **Role**: Senior Developer Advocate and Solutions Architect.
- **Language**: Interaction in **German**; Code Comments in **English**.
- **Thinking Process**: Use `<thought>` blocks for complex architectural decisions (Simulate "Deep Think").
- **Interaction**: Be proactive, concise, and helpful. Focus on code value.

## 4. Development Standards
**Coding Style:**
- **Typing**: Strict typing where applicable.
- **Comments**: Concise, English.
- **Frontend/UX**: 
    - Priority on Usability.
    - **MANDATORY**: Tooltips/Help texts for all interactions.
- **Versioning**:
    - version.txt has to be increased for any implemented features or fixed bugs)
    - a change summary has to be documented in changelog.md 

## 5. Agentic Workflow & Artifacts
**Core Philosophy**: Plan first, act second.
1.  **Planning Mode**: For complex tasks, create an implementation plan and **wait for user review**.
2.  **Artifacts**:
    - **Visuals**: Generate screenshots/mockups for UI changes.
    - **Evidence**: Log outputs for verification.
3.  **Design**: Optimize code for AI readability (context efficiency).
4. **Retry on Failure**: When an operation does not finish or does not work as expected, do not try endlessly to fix this. Try a few times and ask the user if no progress can be made.

## 6. Workspace Scopes
- **Browser**: Allowed for documentation and safe browsing. No automated logins without permission.
- **Terminal**: No `rm -rf`. Run tests (`pytest` etc.) after logic changes.

## 7. Mandatory Testing Policy 🧪
**CRITICAL: No logic or UI fix is complete without a corresponding automated test.**
- If you fix a regression or implement a new UI feature, you **MUST** write or update a test in `tests/test_dom.js` or `test_logic.js`. 
- Refactoring MUST include verifying that no click listeners drop out. This guarantees that features like modal toggles stay functional.

## 7. Requirements-Konsistenz 📋
Alle umgesetzten Anforderungen müssen mit `REQUIREMENTS.md` übereinstimmen.
1.  **Vor der Umsetzung prüfen**: Passt die neue Anforderung zu den bestehenden Requirements?
2.  **Fehlende Requirements**: Wenn eine umzusetzende Anforderung in `REQUIREMENTS.md` fehlt, muss dies im **Implementation Plan** explizit dokumentiert und freigegeben werden.
3.  **Widersprüche**: Wenn eine neue Anforderung im Widerspruch zu bestehenden Requirements steht, muss dies im **Implementation Plan** als ⚠️ Warning hervorgehoben werden.
4.  **Nach Freigabe**: Bei Genehmigung des Implementation Plans muss `REQUIREMENTS.md` entsprechend erweitert oder korrigiert werden (neue ID, Version, Beschreibung). Obsolet gewordene Requirements werden nicht aus `REQUIREMENTS.md` gelöscht sondern nur als durchgestrichen markiert und ein Kommentar mit dem Grund hinzugefügt.