## Repository Structure

- `infra/`: Infrastructure and operations (Docker, scripts, deployment).
- `backend/`: FastAPI backend.
- `apps/`: Flutter mobile app.
- `docs/`: Documentation and design/planning artifacts.

## Rules Hierarchy

- This root `AGENTS.md` defines global rules and applies to all changes.
- When editing `backend/`, you must also follow `backend/AGENTS.md`.
- When editing `apps/`, you must also follow `apps/AGENTS.md`.

## Docker Startup

Always start services with the env file:

```bash
docker compose --env-file .env -f infra/docker/docker-compose.yml up -d
```

## Git Branch and Worktree Policy

- Use `dev` as the default base branch for day-to-day development.
- New development worktrees must be created from `dev` (never from `main`).
- Do not develop or commit directly on `main` outside explicit release/merge workflows.
- Do not rewrite `main` history unless explicitly requested (including reset and force push).
