Files
GearBox/.planning/phases/34-i18n-foundation/34-VALIDATION.md

2.9 KiB

phase, slug, status, nyquist_compliant, wave_0_complete, created
phase slug status nyquist_compliant wave_0_complete created
34 i18n-foundation draft false false 2026-04-13

Phase 34 — Validation Strategy

Per-phase validation contract for feedback sampling during execution.


Test Infrastructure

Property Value
Framework Bun test runner + Playwright
Config file bunfig.toml / playwright.config.ts
Quick run command bun test
Full suite command bun test && bun run test:e2e
Estimated runtime ~15 seconds (unit) + ~60 seconds (e2e)

Sampling Rate

  • After every task commit: Run bun test
  • After every plan wave: Run bun test && bun run build
  • Before /gsd-verify-work: Full suite must be green
  • Max feedback latency: 15 seconds

Per-Task Verification Map

Task ID Plan Wave Requirement Threat Ref Secure Behavior Test Type Automated Command File Exists Status
34-01-01 01 1 D-05 N/A unit bun test tests/i18n/init.test.ts W0 pending
34-01-02 01 1 D-06 N/A unit bun test tests/i18n/locales.test.ts W0 pending
34-02-01 02 1 D-01 N/A unit bun test pending
34-03-01 03 2 D-04 N/A unit bun test tests/i18n/formatters.test.ts W0 pending
34-04-01 04 2 D-09, D-10, D-11 N/A unit bun test tests/i18n/language-hook.test.ts W0 pending
34-05-01 05 3 D-13, D-14 N/A manual Visual check: German UI text N/A pending

Status: pending · green · red · ⚠️ flaky


Wave 0 Requirements

  • tests/i18n/init.test.ts — i18n initialization loads both locales
  • tests/i18n/locales.test.ts — all en keys have corresponding de keys
  • tests/i18n/formatters.test.ts — locale-aware formatting produces correct output
  • tests/i18n/language-hook.test.ts — language hook returns correct value from settings

Manual-Only Verifications

Behavior Requirement Why Manual Test Instructions
German UI text renders correctly D-13 Visual quality of AI-generated translations Switch to German in settings, navigate all pages, verify text is natural German
Language picker pill-toggle UX D-11 Visual layout consistency with weight/currency toggles Open settings, verify language picker matches existing toggle patterns

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

Approval: pending