--- inclusion: auto --- # OrgMyLife Standards ## Quality Gates (before every commit) 1. `gitleaks detect --source . --no-git` — no secrets in code 2. `ruff check .` — linting passes (if configured) 3. `pytest` — all tests pass 4. No hardcoded secrets in source ## Conventional Commits ``` feat(sync): add Gmail label filtering fix(api): handle empty task list gracefully test(digest): add test for overdue calculation docs(spec): update component descriptions ``` ## Testing - pytest for unit and integration tests - httpx TestClient for API endpoint tests - Given-When-Then structure - 80% coverage target for new code ## Autonomous Mode - Never push directly to main — use feature branches - Create PRs on GitHub targeting main - If stuck after 3 attempts: stop and document - Report: `PROGRESS: X%` / `HELP: description` ## Architecture - FastAPI + SQLAlchemy + PostgreSQL - Alembic for migrations - MCP server for Kiro integration - Sync services: Nextcloud (CalDAV/ToDo), Gmail (IMAP), Backlog.md ## Deployment - Docker on VPS (https://api.andreknie.de) - `docker compose up -d --build` for deploy - .env file on VPS for secrets (not in repo)