Record Phase 0 repo layout in CLAUDE.md and ARCHITECTURE

Documents the scaffolded tree (/backend, /deploy, /.gitea, pending /frontend), the deploy-first sequencing, and the toolchain choices (uv for backend deps, Alembic for migrations), as CLAUDE.md's layout section requires when code lands.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Justin Paul <justin@jpaul.me>
This commit is contained in:
2026-06-06 10:17:12 -04:00
parent 9e4252ba8f
commit 03124027fe
2 changed files with 16 additions and 1 deletions
+11
View File
@@ -175,6 +175,17 @@ Jobs are idempotent and retryable; an external failure degrades gracefully rathe
- **Migrations** run on backend start (or via an explicit job) so an image pull + restart is a complete upgrade.
- **Backups:** documented procedure for Postgres dump + object-store sync; restore is the inverse.
**Repository layout (as scaffolded):**
```
/backend # FastAPI service, uv-managed (app/ = api, core; service/repository/domain land with the data model)
/deploy # docker-compose.yml, Caddyfile, .env.example
/.gitea/workflows # Gitea Actions: build images → Gitea registry
/frontend # Next.js (pending)
```
The compose stack runs `postgres` (pgvector image — includes `pgvector`; `pg_trgm` ships in contrib), `minio`, `backend`, and `caddy`. The **worker** container (same image as backend, worker mode) joins once queue-driven jobs exist. Phase 0 ships a minimal backend with `/health` (liveness) and `/health/ready` (Postgres reachability) to validate the deploy wiring before the data model lands.
## 13. Observability
- Structured (JSON) logs from backend and worker.