diff --git a/docs/requirements.md b/docs/requirements.md index f6735b1..4792fc6 100644 --- a/docs/requirements.md +++ b/docs/requirements.md @@ -171,6 +171,15 @@ extraction `AR-021`/`AR-022` landing, and on system open question 2 (whether unidentified presence is published at all) — decomposing it now would fix an interface against an undecided upstream. +**It carries tiers (T2 + T4) despite being undesigned, and stays in the coverage +denominator.** Tiers say *how* it will be verified, which is knowable — an +association endpoint is CI-testable, the UI is not — without asserting *what* +the assertions are, which is not. Recording it as T4-only would have been the +tempting move, because that drops it out of CI scope and lifts the CI +percentage; it would also have been the 158%-coverage error in miniature, a +number improved by reclassifying work rather than by doing it. An unbuilt +requirement should count against coverage until it is built. + --- ## Verification strategy @@ -277,7 +286,7 @@ framework reference and leans on `RollForward` to reach the 10.0 runtime. | JR-043 | **T1** | Signature matches the shared golden vector **bit-for-bit** | Media < 120 s → no signature; identical result in both repos | | JR-044 | T1 | Media < 120 s yields no signature and no offset | Exactly 120 s — the boundary both repos must agree on | | JR-045 | T1 | `v1:` emitted; an unknown prefix is refused, not parsed | `v2:` signature from a future producer | -| JR-046 | **TBD** | — | Undesigned; depends on AR-021/AR-022 and system open question 2 | +| JR-046 | T2 + **T4** | *Assertions deferred* — recording an association and persisting it is T2; the review UI itself is T4 | Cannot be written until the truth-file interface for unidentified presence is settled (system open question 2) and AR-021/AR-022 land | Three are worth singling out. **JR-021** and **JR-041** are static checks because both are requirements to *not do something*, and a prohibition is verified by