Files
gijs_pong/.planning/phases/01-foundation/01-VALIDATION.md
2026-03-10 14:38:44 +01:00

3.9 KiB

phase, slug, status, nyquist_compliant, wave_0_complete, created
phase slug status nyquist_compliant wave_0_complete created
1 foundation draft false false 2026-03-10

Phase 1 — Validation Strategy

Per-phase validation contract for feedback sampling during execution.


Test Infrastructure

Property Value
Framework No test framework — manual visual validation only
Config file none — single HTML file, no npm/testing setup
Quick run command Open index.html in browser; visually confirm ball bounces, paddle responds
Full suite command Test on Retina/HiDPI device; test on 120 Hz display; test on 30 Hz device
Estimated runtime ~2 minutes

Sampling Rate

  • After every task commit: Open index.html in browser; visually confirm the feature just implemented works
  • After every plan wave: Full visual validation on HiDPI device, confirm all implemented features still work together
  • Before /gsd:verify-work: All 6 success criteria must be manually confirmed green
  • Max feedback latency: ~120 seconds (open browser, observe, confirm)

Per-Task Verification Map

Task ID Plan Wave Requirement Test Type Automated Command File Exists Status
1-01-01 01 1 CORE-01 Manual visual Open index.html, observe ball moves and bounces After Phase 1 pending
1-01-02 01 1 VFX-05 Manual visual Open on Retina device; graphics should be sharp After Phase 1 pending
1-01-03 01 1 CORE-07 Manual visual Press W/S; paddle moves smoothly without input lag After Phase 1 pending
1-01-04 01 1 CORE-03 Manual visual Hit ball at top/center/bottom of paddle; angle should change After Phase 1 pending
1-01-05 01 1 CORE-04 Manual visual + console Rally 10+ times; confirm speed increases; check console.log(ball.speed) After Phase 1 pending
1-01-06 01 1 CORE-02 Manual visual Paddle deflects ball correctly off all zones After Phase 1 pending

Status: pending · green · red · ⚠️ flaky


Wave 0 Requirements

Existing infrastructure covers all phase requirements.

No automated test framework needed for Phase 1. The project is a single HTML file with vanilla JS — manual visual validation is appropriate and sufficient for this phase's prototype nature.


Manual-Only Verifications

Behavior Requirement Why Manual Test Instructions
Ball moves continuously and bounces off top/bottom walls CORE-01 Visual physics — no DOM assertion possible Open index.html, observe ball moves at all times and bounces off top/bottom
Player 1 controls paddle with W/S keys CORE-07 Requires human keyboard input Press W to move up, S to move down; confirm smooth, immediate response
Ball angle changes based on paddle hit zone CORE-03 Requires observing trajectory variation Hit ball at top, middle, and bottom of paddle; confirm different angles result
Ball speed increases over match CORE-04 Requires sustained play session Rally 10+ times; speed should noticeably increase; verify with console.log(ball.speed)
Canvas renders sharply on Retina/HiDPI VFX-05 Requires HiDPI display hardware Open on Retina device; compare with devicePixelRatio=1 display to confirm sharpness
Paddle deflects ball CORE-02 Visual interaction — no DOM assertion Move paddle into ball's path; confirm ball bounces off paddle surface

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 < 120s
  • nyquist_compliant: true set in frontmatter

Approval: pending