01aa4c52c3
Surface-matrix sweep of every source doc; added nine missed behaviors (METADATA-115, REVIEW-50, APP-55/60/65, SETTINGS-45 mode, Generate-text availability, defaults-off). 153 requirements, 0 coverage gaps. Migrated capabilities to docs/capabilities/ and contracts to docs/contracts/; added WOO-API, API, DATA-MODEL, PROMPTS, UX, TEST-SPEC. Populated MILESTONES; branch-neutral trunk docs; renamed umbrella term to Woo Slab Taxonomy. Archived reconciliation working records under .audit/archive/.
110 lines
4.2 KiB
Markdown
110 lines
4.2 KiB
Markdown
# Coverage matrix — TEST-SPEC.md
|
|
|
|
Source: `docs/TEST-SPEC.md` at tag `pre-simplification` (107 cases). Reconciled last, against the
|
|
finished PoR.
|
|
|
|
## Findings
|
|
|
|
Two behaviors were tested but not required; both are now PoR rows:
|
|
|
|
- FUND-3, FUND-5, FUND-6, FUND-7 (keyboard tab order, visible focus ring, 320 px reflow) → `APP-60`
|
|
- FUND-24 (no secret material in logs) → `APP-65`
|
|
|
|
## Superseded cases to purge on migration
|
|
|
|
- UI-1, UIE-9, UIE-10 — four knobs (edge offset, feather) → two controls
|
|
- V-3, API-8 — shared validation module, version hash, 412
|
|
- C2-2 — `previous_response_id` / per-slab thread
|
|
- C1-1 — "inventory photos at 1024" → clean processed photos
|
|
- C2-4 — prompt file edits without restart → prompts live in the DB
|
|
- TV-6, TV-7, E2E-5 — 80 percent fill / 1600 px → 90 percent / 800 px
|
|
- UIE-1, E2E-4 — manual override of computed fields → read-only
|
|
|
|
## Case map
|
|
|
|
FUND
|
|
- FUND-1..4, 8..11 — test conventions → dropped (test practice, not requirements)
|
|
- FUND-3, 5, 6, 7 — accessibility → APP-60
|
|
- FUND-12, 13, 16 — SQLite constraints/migrations → dropped (engineering practice)
|
|
- FUND-14 — WAL stale reads → dropped (engineering practice)
|
|
- FUND-15 — illegal status transitions rejected → APP-5
|
|
- FUND-17 — fresh nonce, tamper fails → SETTINGS-25
|
|
- FUND-18 — ciphertext absent from GET → SETTINGS-75
|
|
- FUND-19 — missing key refuses startup → SETTINGS-25
|
|
- FUND-20 — Basic auth app passwords, HTTPS → SETTINGS-15
|
|
- FUND-21 — 401/400/404 mapped → APP-50
|
|
- FUND-22 — pre-create SKU lookup, race → PUBLISH-15
|
|
- FUND-23 — timeouts/network errors graceful, no stack → PUBLISH-30, PUBLISH-35
|
|
- FUND-24 — secrets redacted in logs → APP-65
|
|
- FUND-25 — HTTPS, health via proxy, port collision → OPS-5, OPS-15, OPS-20
|
|
|
|
TV
|
|
- TV-1..TV-10 → QUALITY-55..QUALITY-100 (TV-6/TV-7 numeric values superseded)
|
|
|
|
Validation
|
|
- V-1 — SKU charset → REVIEW-45
|
|
- V-2 — title/description limits → REVIEW-50
|
|
- V-3 — module hash / 412 → dropped
|
|
|
|
AES / health / draft
|
|
- AES-1 → QUALITY-125, SETTINGS-75
|
|
- AES-2 → SETTINGS-25
|
|
- H-1 → APP-45
|
|
- D-1 → API contract, APP-5
|
|
|
|
Gate C / Woo
|
|
- GC-1 → PUBLISH-10; GC-2 → PUBLISH-15; GC-3 → SETTINGS-40; GC-4 → SETTINGS-85; GC-5 → SETTINGS-10
|
|
- W-1 → PUBLISH-25; W-2 → PUBLISH-15; W-3 → SETTINGS-55; W-4 → SETTINGS-40; W-5 → PUBLISH-30
|
|
|
|
Inference
|
|
- INF-1 → METADATA-75, QUALITY-20
|
|
- INF-2, INF-3 → SETTINGS-45 (mode is kept)
|
|
- INF-4 → SETTINGS-45
|
|
|
|
UI (capture)
|
|
- UI-1 → superseded CAPTURE-40
|
|
- UI-2 → CAPTURE-50, CAPTURE-55, CAPTURE-165
|
|
- UI-3 → CAPTURE-60, CAPTURE-65
|
|
- UI-4 → CAPTURE-70, CAPTURE-80, CAPTURE-85, CAPTURE-90
|
|
- UI-5 → REVIEW-5, REVIEW-20
|
|
|
|
Ops
|
|
- OPS-1 → APP-45; OPS-2 → OPS-15; OPS-3 → SETTINGS-40, SETTINGS-65, APP-45; OPS-4 → OPS-30;
|
|
OPS-5 → OPS-35
|
|
|
|
API
|
|
- API-1 → APP-20; API-2 → APP-40; API-3 → SETTINGS-75; API-4 → METADATA-35, METADATA-115;
|
|
API-5 → METADATA-45; API-6 → REVIEW-5; API-7 → SETTINGS-50, SETTINGS-55; API-8 → dropped;
|
|
API-9 → API contract; API-10 → SETTINGS-80
|
|
- TAX-1 → SETTINGS-60; TAX-2 → METADATA-5; TAX-3 → SETTINGS-60
|
|
|
|
UI end-to-end
|
|
- UIE-1 → superseded REVIEW-30, REVIEW-40
|
|
- UIE-2 → METADATA-45, REVIEW-20
|
|
- UIE-3 → PUBLISH-15; UIE-4 → PUBLISH-20; UIE-5 → PUBLISH-25; UIE-6 → PUBLISH-30
|
|
- UIE-7 → METADATA-70, METADATA-110
|
|
- UIE-8 → SETTINGS-5, SETTINGS-15, SETTINGS-20, SETTINGS-30, SETTINGS-35, SETTINGS-65
|
|
- UIE-9, UIE-10 → superseded CAPTURE-40, CAPTURE-45, CAPTURE-145
|
|
|
|
Calls
|
|
- C1-1 → superseded METADATA-35 (clean processed photos)
|
|
- C1-2, C1-3 → METADATA-45, REVIEW-5
|
|
- C2-1 → METADATA-55, METADATA-60
|
|
- C2-2 → superseded (thread work out)
|
|
- C2-3 → METADATA-65
|
|
- C2-4 → METADATA-66, METADATA-105
|
|
- OFF-1 → QUALITY-20; OFF-2 → SETTINGS-45
|
|
|
|
Instrumentation
|
|
- INS-1 → APP-45; INS-2 → APP-55; INS-3 → METADATA-66; INS-4 → PUBLISH-30
|
|
|
|
E2E
|
|
- E2E-1..3 → QUALITY-115
|
|
- E2E-4 → superseded REVIEW-30, REVIEW-40
|
|
- E2E-5 → superseded CAPTURE-100, CAPTURE-105
|
|
|
|
## Test harness (contract detail)
|
|
|
|
Harness layout, allowed result values, evidence rules, and the Gitea-issue bug log are engineering
|
|
practice. They belong in `docs/contracts/TEST-SPEC.md`, not the PoR.
|