@@ -114,35 +114,37 @@ ABI coordination model (four axes: spec authority / coordinated
114114landing / test parity / conflict resolution). Both filed in
115115META.a2ml; ADR-020 lands first as the first test of ADR-021's
116116protocol. Both require owner ratification. |*PROPOSED 2026-05-23*
117- |DOC-16 |In-repo enforcement of the DOC-04/05 truthing invariant —
118- `tools/check-doc-truthing.sh` (toolchain-free bash) fails if any
119- over-claiming doc loses its `CAPABILITY-MATRIX.adoc` banner, if the
120- matrix stops self-declaring primacy or loses its "What AffineScript is
121- NOT" section, or if `STATE.a2ml` drops its mirror keys. Wired into
122- `just check` (the `guard` recipe) and CI (`ci.yml` build job). Converts
123- the DOC-08/09 MONITOR posture from external-bot-only to a first-class
124- in-repo gate. |*DONE 2026-05-30*
125- |DOC-17 |Over-claim ratchet — the *phrase-detection* complement to DOC-16.
126- `tools/check-doc-overclaims.sh` + `tools/doc-overclaims.allow` baseline:
127- a frozen-signature ratchet over README + `docs/**` (excluding the two
128- governance docs that quote the rule — CAPABILITY-MATRIX + this ledger)
129- fails any *new* backend-breadth / "production-ready" / stdlib-% phrase
130- beyond the 13-line baseline (future-tense roadmap milestones, dated
131- history snapshots, the corrective banners — none a live over-claim).
132- DOC-16 deliberately checks banner *presence* not phrasing (a naive grep
133- false-positives); the ratchet closes that gap without false positives
134- because the legitimate set is frozen and only *new* phrases fail.
135- Re-baseline via `--update` / `just doc-overclaims-bless`; the diff is
136- the audit trail. Wired into `just check` + CI (toolchain-free bash).
137- |*DONE 2026-05-30*
117+ |DOC-16 |In-repo doc-truthing re-drift guard — `tools/check-doc-truthing.sh`
118+ (toolchain-free bash), the single gate enforcing *both* halves of the
119+ MONITOR. *Presence invariants (DOC-04/05):* fails if any over-claiming doc
120+ loses its `CAPABILITY-MATRIX.adoc` banner, if the matrix stops
121+ self-declaring primacy or loses its "What AffineScript is NOT" section, or
122+ if `STATE.a2ml` drops its mirror keys. *Over-claim ratchet (DOC-08/09):*
123+ a frozen-signature baseline (`tools/doc-overclaims.allow`) over README +
124+ `docs/**` (excluding the two governance docs that quote the rule —
125+ CAPABILITY-MATRIX + this ledger) fails any *new* backend-breadth /
126+ "production-ready" / stdlib-% phrase beyond the 13-line accepted set
127+ (future-tense roadmap milestones, dated history snapshots, the corrective
128+ banners — none a live over-claim). Presence-checking handles the banners
129+ (where "production-ready" legitimately appears); the frozen baseline adds
130+ phrase detection without false positives. Re-baseline via `--update` /
131+ `just doc-truth-bless`; the diff is the audit trail. Wired into
132+ `just check` (the `guard` recipe) and CI (`ci.yml` build job). Converts the
133+ DOC-08/09 MONITOR posture from external-bot-only to a first-class in-repo
134+ gate. |*DONE 2026-05-30*
135+ |DOC-17 |Over-claim ratchet — *folded into DOC-16.* Briefly shipped as a
136+ separate `tools/check-doc-overclaims.sh` (PR #475) alongside #476's banner
137+ guard; consolidated into the single `tools/check-doc-truthing.sh` so the
138+ two near-identically-named guards do not linger. The ratchet behaviour +
139+ `tools/doc-overclaims.allow` baseline are unchanged — see DOC-16.
140+ |*DONE 2026-05-30 (consolidated)*
138141|===
139142
140143MONITOR enforcement (DOC-08/09): any PR re-introducing backend-breadth,
141- "production-ready", or stdlib-percentage over-claims must be rejected.
142- As of 2026-05-30 this is enforced in-repo on *both* halves: DOC-16
143- (`tools/check-doc-truthing.sh`) holds the banner/primacy/mirror presence
144- invariant, and DOC-17 (`tools/check-doc-overclaims.sh`) ratchets against
145- new over-claim *phrasings*. The external Hypatia/gitbot DOC rules remain
144+ "production-ready", or stdlib-percentage over-claims must be rejected. As of
145+ 2026-05-30 this is enforced in-repo by the single unified guard
146+ `tools/check-doc-truthing.sh` (DOC-16) — presence invariants *and* the
147+ over-claim ratchet in one run. The external Hypatia/gitbot DOC rules remain
146148the estate-level backstop for anything outside both nets.
147149
148150== Section B — CORE (compiler soundness / completeness)
0 commit comments