nexus/.planning/phases/30-hardware-detection-mode-selection/30-VALIDATION.md
2026-04-04 03:55:49 +00:00

2.7 KiB

phase slug status nyquist_compliant wave_0_complete created
30 hardware-detection-mode-selection draft false false 2026-04-02

Phase 30 — Validation Strategy

Per-phase validation contract for feedback sampling during execution.


Test Infrastructure

Property Value
Framework vitest
Config file server/vitest.config.ts
Quick run command cd server && npx vitest run --reporter=verbose src/services/hardware-detection.test.ts
Full suite command cd server && npx vitest run --reporter=verbose
Estimated runtime ~15 seconds

Sampling Rate

  • After every task commit: Run quick command
  • After every plan wave: Run full suite command
  • Before /gsd:verify-work: Full suite must be green
  • Max feedback latency: 15 seconds

Per-Task Verification Map

Task ID Plan Wave Requirement Test Type Automated Command File Exists Status
30-01-01 01 1 ONBD-02 unit vitest run hardware-detection W0 pending
30-01-02 01 1 ONBD-03 unit vitest run model-catalog W0 pending
30-02-01 02 2 ONBD-01 integration vitest run mode-selection W0 pending
30-02-02 02 2 ONBD-07 integration vitest run onboarding-probe W0 pending

Status: pending · green · red · ⚠️ flaky


Wave 0 Requirements

  • server/src/services/hardware-detection.test.ts — stubs for ONBD-02, ONBD-03
  • server/src/routes/system.test.ts — stubs for unauthenticated probe endpoint
  • ui/src/components/ModeSelector.test.tsx — stubs for ONBD-01

If none: "Existing infrastructure covers all phase requirements."


Manual-Only Verifications

Behavior Requirement Why Manual Test Instructions
Apple Silicon unified memory label ONBD-02 Requires M-series hardware On Mac Mini M4: call /api/system/providers, verify "unified memory" label
Mode selector persists across page reload ONBD-01 Browser state Select mode, refresh browser, verify selection persists
Privacy premium copy visible ONBD-07 Visual verification Check onboarding UI shows "runs entirely on your machine" copy

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