From 958222d0c04cbc9924abd5fff86b0cb4b1d3fcee Mon Sep 17 00:00:00 2001 From: nitrix Date: Wed, 4 Mar 2026 18:10:22 +0100 Subject: [PATCH] Track completion of T-1 and T-2 health endpoint, add progress tracking rule Check off all T-1 acceptance criteria (retroactively) and the health-check criterion of T-2. Add methodology rule to CLAUDE.md requiring acceptance criteria to be checked off when tasks or stories are completed. Co-Authored-By: Claude Opus 4.6 --- CLAUDE.md | 1 + spec/setup-tasks.md | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index c54e476..5eba3bb 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -21,6 +21,7 @@ These are the non-negotiable principles of this project. Every decision — arch - Refactoring is permitted freely as long as it does not alter the fundamental architecture. - No vibe coding. Every line of code must be intentional and traceable to a requirement. - Document integrity: when a decision is revised (pivot), add an addendum with rationale — never rewrite or delete the original decision. Traceability over tidiness. +- When a setup task or user story is completed, check off its acceptance criteria in the corresponding spec file (`spec/setup-tasks.md` or `spec/userstories.md`) before committing. Progress must be tracked — no silent completions. ### Privacy diff --git a/spec/setup-tasks.md b/spec/setup-tasks.md index 6ecc6a7..1e0fdeb 100644 --- a/spec/setup-tasks.md +++ b/spec/setup-tasks.md @@ -10,12 +10,12 @@ **Description:** Set up the repository structure with separate directories for backend and frontend, scaffolded with the chosen tech stack. **Acceptance Criteria:** -- [ ] Single repository with `backend/` and `frontend/` directories -- [ ] Backend: Java (latest LTS), Spring Boot, Maven, hexagonal/onion architecture scaffold -- [ ] Frontend: Vue 3 with Vite as bundler, TypeScript, Vue Router -- [ ] Shared top-level files: README, Dockerfile, CLAUDE.md, LICENSE (GPL), .gitignore -- [ ] Both projects build successfully with no source code (empty scaffold) -- [ ] .gitignore covers build artifacts, IDE files, and dependency directories for both Java/Maven and Node/Vue +- [x] Single repository with `backend/` and `frontend/` directories +- [x] Backend: Java (latest LTS), Spring Boot, Maven, hexagonal/onion architecture scaffold +- [x] Frontend: Vue 3 with Vite as bundler, TypeScript, Vue Router +- [x] Shared top-level files: README, Dockerfile, CLAUDE.md, LICENSE (GPL), .gitignore +- [x] Both projects build successfully with no source code (empty scaffold) +- [x] .gitignore covers build artifacts, IDE files, and dependency directories for both Java/Maven and Node/Vue **Dependencies:** None @@ -29,7 +29,7 @@ - [ ] Single multi-stage Dockerfile at repo root that builds backend and frontend and produces one container - [ ] App connects to external PostgreSQL via environment variable (e.g. `DATABASE_URL`) - [ ] All runtime configuration via environment variables: database connection, optional Unsplash API key, optional max active events -- [ ] Health-check endpoint so Docker/orchestrators can verify the app is alive +- [x] Health-check endpoint so Docker/orchestrators can verify the app is alive - [ ] README documents setup with a docker-compose example (app + postgres) - [ ] Container starts and responds to health checks with an empty database (migrations run on startup or are documented)