diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md index c1bee04..19fb711 100644 --- a/.planning/ROADMAP.md +++ b/.planning/ROADMAP.md @@ -96,7 +96,7 @@ Plans: **Wave 4** *(blocked on Wave 3 completion)* -- [ ] 02-04-PLAN.md — Wire honest Go replay with testcontainers Postgres +- [x] 02-04-PLAN.md — Wire honest Go replay with testcontainers Postgres **Wave 5** *(blocked on Waves 1–4 completion)* @@ -329,7 +329,7 @@ Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → | Phase | Plans Complete | Status | Completed | |-------|----------------|--------|-----------| | 1. Framework kernel foundation | 4/4 | Complete | 2026-09-16 | -| 2. API parity harness bootstrap | 3/5 | In Progress| | +| 2. API parity harness bootstrap | 4/5 | In Progress| | | 3. First vertical slice — genres end to end | 0/TBD | Not started | - | | 4. CLI scaffolding, i18n and mail | 0/TBD | Not started | - | | 5. Data layer full fidelity | 0/TBD | Not started | - | diff --git a/.planning/STATE.md b/.planning/STATE.md index 3c1155a..2dd2b0d 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -3,15 +3,15 @@ gsd_state_version: 1.0 milestone: v1.0 milestone_name: milestone status: executing -stopped_at: Completed 02-03-PLAN.md -last_updated: "2026-09-17T11:47:35.044Z" +stopped_at: Completed 02-04-PLAN.md +last_updated: "2026-09-17T11:59:14.712Z" last_activity: 2026-09-17 progress: total_phases: 15 completed_phases: 1 total_plans: 9 - completed_plans: 7 - percent: 78 + completed_plans: 8 + percent: 89 --- # Project State @@ -26,30 +26,30 @@ See: .planning/PROJECT.md (updated 2026-09-16) ## Current Position Phase: 02 (api-parity-harness-bootstrap) — EXECUTING -Plan: 4 of 5 +Plan: 5 of 5 Status: Ready to execute Last activity: 2026-09-17 -Progress: [████████░░] 78% +Progress: [█████████░] 89% ## Performance Metrics **Velocity:** -- Total plans completed: 7 -- Average duration: 17 min -- Total execution time: 80 min +- Total plans completed: 8 +- Average duration: 16 min +- Total execution time: 89 min **By Phase:** | Phase | Plans | Total | Avg/Plan | |-------|-------|-------|----------| | 01 | 4 | - | - | -| 02 | 3 | 80 min | 27 min | +| 02 | 4 | 89 min | 22 min | **Recent Trend:** -- Last 5 plans: 02-01 7 min, 02-02 12 min, 02-03 61 min +- Last 5 plans: 02-01 7 min, 02-02 12 min, 02-03 61 min, 02-04 9 min - Trend: - *Updated after each plan completion* @@ -77,6 +77,9 @@ Recent decisions affecting current work: - [Phase 02]: 154 is the app manifest validated route count, not a framework constant; --next-batch above 15 is refused — D-16 and the 15-route resume workflow; keep tide generic - [Phase 02]: Isolated PHP uses a parity-named SQLite file on 127.0.0.1:8423; record/reset refuse any other DB — T-02-05 - [Phase 02]: Client OAuth replay merges `/tmp/summercms-parity/pkce.vars` after seed; the verifier is not in git — D-07 D-11 +- [Phase 02]: newTarget and seedHooks live in the app test package so Phase 3 can swap the synthetic handler for the real app and add a temporary genres SQL hook until POST genres is ported — D-10 D-12: framework tide stays app-agnostic; the handler/seed-hook seam is app-owned +- [Phase 02]: Pending never equals passing: TestParityCorpus reports recorded 154/154 passing 0 pending 154 and does not replay PHP fixtures against the synthetic handler — D-16: unported PHP routes must never count as a Go pass +- [Phase 02]: Unavailable Docker fails TestMain; testing.Short skips the container so the fast loop stays fast — QA-03 and D-12: no false green skip when Postgres cannot start ### Pending Todos @@ -98,6 +101,6 @@ Items acknowledged and carried forward from previous milestone close: ## Session Continuity -Last session: 2026-09-17T11:47:35.029Z -Stopped at: Completed 02-03-PLAN.md +Last session: 2026-09-17T11:59:09.617Z +Stopped at: Completed 02-04-PLAN.md Resume file: None