3.9 KiB
3.9 KiB
| phase | slug | status | nyquist_compliant | wave_0_complete | created |
|---|---|---|---|---|---|
| 11 | individual-planning | draft | true | true | 2026-05-16 |
Phase 11 - Validation Strategy
Per-phase validation contract for feedback sampling during execution.
Test Infrastructure
| Property | Value |
|---|---|
| Framework | Go testing with DB-backed integration helpers |
| Config file | backend/go.mod, backend/sqlc.yaml, backend/justfile |
| Quick run command | cd backend && go test ./internal/web -run 'TestPlanning' -count=1 |
| Full suite command | cd backend && just generate && TEST_DATABASE_URL='postgres://xtablo:xtablo@localhost:5432/xtablo?sslmode=disable' go test ./... -count=1 |
| Estimated runtime | ~60 seconds with local Postgres already running |
Sampling Rate
- After every task commit: Run
cd backend && go test ./internal/web -run 'TestPlanning' -count=1when planning tests exist; otherwise run the named targeted test from the task. - After every plan wave: Run
cd backend && just generate && TEST_DATABASE_URL='postgres://xtablo:xtablo@localhost:5432/xtablo?sslmode=disable' go test ./... -count=1. - Before
$gsd-verify-work: Full suite must be green andgit diff --checkmust pass. - Max feedback latency: 90 seconds with local services available.
Per-Task Verification Map
| Task ID | Plan | Wave | Requirement | Threat Ref | Secure Behavior | Test Type | Automated Command | File Exists | Status |
|---|---|---|---|---|---|---|---|---|---|
| 11-01-01 | 01 | 1 | PLAN-01, PLAN-02, PLAN-03, PLAN-04 | T-11-01, T-11-02, T-11-04, T-11-05 | Protected route, owned-only aggregation, valid fallback date, source tablo links | DB/integration | cd backend && go test ./internal/web -run 'TestPlanning' -count=1 |
W0 | pending |
| 11-01-02 | 01 | 1 | PLAN-01, PLAN-02, PLAN-03, PLAN-04 | T-11-02, T-11-03, T-11-05 | Server-rendered agenda escapes content and links back to owned tablo context | DB/integration | cd backend && just generate && go test ./internal/web -run 'TestPlanning' -count=1 |
W0 | pending |
| 11-02-01 | 02 | 2 | PLAN-01, PLAN-02, PLAN-03, PLAN-04 | T-11-01..T-11-05 | Full generated backend remains green after route/template additions | Full suite | cd backend && just generate && TEST_DATABASE_URL='postgres://xtablo:xtablo@localhost:5432/xtablo?sslmode=disable' go test ./... -count=1 |
W0 | pending |
| 11-02-02 | 02 | 2 | PLAN-01, PLAN-02, PLAN-03, PLAN-04 | T-11-01..T-11-05 | Browser UAT confirms protected agenda behavior and navigation | Manual UAT | cd backend && go test ./internal/web -run 'TestPlanning' -count=1 |
W0 | pending |
Status: pending / green / red / flaky
Wave 0 Requirements
Existing infrastructure covers all phase requirements:
backend/internal/web/testdb_test.goprovides schema-isolated DB setup.backend/internal/web/handlers_auth_test.goprovidespreInsertUser.backend/internal/web/handlers_events_test.goprovides reusable event/tablo/session helper patterns.backend/justfileprovidesjust generate.
Manual-Only Verifications
| Behavior | Requirement | Why Manual | Test Instructions |
|---|---|---|---|
| First working agenda UX approval | PLAN-01, PLAN-04 | ROADMAP user-in-loop requires approval of today/upcoming behavior vs week navigation | Start app, sign in, open /planning, confirm default 14-day upcoming agenda, previous/today/next controls, empty state, and event deep links. |
Validation Sign-Off
- All tasks have
<automated>verify or Wave 0 dependencies - Sampling continuity: no 3 consecutive tasks without automated verify
- Wave 0 covers all missing references
- No watch-mode flags
- Feedback latency < 90s
nyquist_compliant: trueset in frontmatter
Approval: approved 2026-05-16