49 lines
1.1 KiB
Markdown
49 lines
1.1 KiB
Markdown
---
|
|
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)
|