docs(remediation): bank D-29 (syntactic criterion binding) and D-30 (false comparator, mine)

D-29: rev-974 moved two criterion bindings to an unrelated case, reformatted the
manifest, and gate:verify still exited 0. The registry verifies a criterion HAS a
binding, not that the bound case can fail for that criterion's stated reason —
RM02-REQ-03 unsatisfied. The keystone reproduced the defect it exists to eliminate, in
its own coverage check. Caught only by mutating and re-running; inspection would have
passed it.

D-30: my review brief claimed the ci-postgres FAIL appeared on #2167 — it did not
(#2167 is OK). My own banked D-21 says so explicitly; I restated from memory instead of
reading my record. D-26 recurring, in a reviewer brief, hours after promoting
render-not-restate to the charter.

The harm is not the inaccuracy but that I supplied a reviewer with fabricated supporting
evidence for my own reading. It refuted me — query-for-refutation paying for itself in
the same document that introduced it.

Requirement: briefs cite evidence from the record with identifiers, never from recall.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
mos-dt-0
2026-07-31 23:59:25 -05:00
co-authored by Claude Opus 5
parent 8ce77fcb0d
commit 16d11cd6cd
+40
View File
@@ -179,6 +179,46 @@ outage and defers the degraded path to "later", which in this codebase means **a
under incident pressure**. Three such bypasses are already on the books; do not create the conditions
for a fourth.
### D-29 — the registry's own coverage clause was SYNTACTIC, not semantic
`rev-974` blocked PR #1030 with a finding that lands in the keystone's own enforcement:
> It **moved** `RM02-MEANING-PROVENANCE` and `RM02-PROSE-CONTROL` from the stale-build-lock case to an
> **unrelated type-error case**, reformatted the manifest, and **`pnpm gate:verify` still exited 0.**
So the registry verifies that a criterion **has a binding**, not that the bound case **can fail for that
criterion's stated reason**. That is exactly what **RM02-REQ-03 (clause 2, from D-17)** requires, and it
is not satisfied — `gates/gates.manifest.json:471-488` + `scripts/gate-verify.mjs:410-417`.
**The keystone reproduced the defect it was built to eliminate, in its own coverage check.** D-17 said a
green suite can leave a criterion untested; here the tool that enforces that clause enforces only its
_syntax_. A binding that can be pointed anywhere without complaint is a binding that proves nothing —
**D-24's "true answer to a different question" wearing a manifest.**
Caught only because the reviewer **mutated the binding and re-ran**, rather than reading the manifest and
confirming the entries existed. Inspection would have passed it.
### D-30 — the orchestrator fed a reviewer a false comparator supporting its own conclusion
In the review brief for #1030 I stated the `ci-postgres` FAIL had "appeared under overall-success on
**#2167**/#2170/#2175". `rev-974` refuted it: **#2167's `ci-postgres` step is `OK`.** Verified —
#2158 `OK`, **#2167 `OK`**, #2170 `FAIL`, #2175 `FAIL`, #2182 `FAIL`.
**My own banked D-21 says so explicitly:** _"Observed on #2170 and #2175 (**not on #2158, #2167**, or the
manual #2171)."_ I contradicted my own written record — because I **restated it from memory instead of
reading it.** That is **D-26 recurring**, committed by the orchestrator, in a reviewer brief, hours after
promoting render-not-restate to the charter.
**The specific harm is worse than the inaccuracy.** I supplied a reviewer with **fabricated supporting
evidence for my own reading**, in a brief that also asked it to accept my `ci-postgres` interpretation.
Had it deferred, the false comparator would have propagated into the review record and strengthened a
conclusion it never supported. It refuted me instead — which is the query-for-refutation rule paying for
itself in the same document that introduced it.
**Requirement.** A brief that supplies evidence must **cite it from the record, not from recall**
findings are quoted with their identifier, not paraphrased. RM-02 registers it: where a document cites a
finding, the citation must match the banked text, with a must-fail control on divergence.
### D-28 — a swallowed diagnostic destroyed the evidence a fail-closed check needed
RM-02's CI run failed on four `scripts/gate-history.test.mjs` sandbox tests. **The fail-closed logic