Files
GearBox/.planning/phases/17-object-storage/17-VALIDATION.md

2.5 KiB

phase, slug, status, nyquist_compliant, wave_0_complete, created
phase slug status nyquist_compliant wave_0_complete created
17 object-storage draft false false 2026-04-05

Phase 17 — Validation Strategy

Per-phase validation contract for feedback sampling during execution.


Test Infrastructure

Property Value
Framework Bun test runner
Quick run command bun test tests/services/storage.service.test.ts
Full suite command bun test
Estimated runtime ~30 seconds

Sampling Rate

  • After every task commit: Run bun test tests/services/storage.service.test.ts tests/routes/images.test.ts
  • After every plan wave: Run bun test
  • Before /gsd:verify-work: Full suite must be green
  • Max feedback latency: 30 seconds

Per-Task Verification Map

Task ID Plan Wave Requirement Test Type Automated Command File Exists Status
17-01-01 01 1 IMG-04 manual docker compose up -d && curl MinIO health N/A pending
17-01-02 01 1 IMG-01 unit bun test tests/services/storage.service.test.ts W0 pending
17-02-01 02 2 IMG-01 integration bun test tests/routes/images.test.ts (needs update) pending
17-02-02 02 2 IMG-03 integration bun test tests/routes/items.test.ts (needs update) pending
17-03-01 03 3 IMG-02 integration Migration script test W0 pending

Wave 0 Requirements

  • tests/services/storage.service.test.ts — mock S3Client, test upload/delete/getUrl
  • Update tests/routes/images.test.ts — verify routes call storage service
  • Update tests/routes/items.test.ts — verify imageUrl in responses

Manual-Only Verifications

Behavior Requirement Why Manual Test Instructions
MinIO starts in Docker Compose IMG-04 Requires Docker runtime Run docker-compose.dev.yml, verify MinIO health endpoint
Existing images accessible after migration IMG-02 Requires real migration against uploads/ Run migration script, verify images load in browser

Validation Sign-Off

  • All tasks have <automated> verify or Wave 0 dependencies
  • Sampling continuity maintained
  • Wave 0 covers all MISSING references
  • Feedback latency < 30s
  • nyquist_compliant: true set in frontmatter

Approval: pending