docs(governance): PENDING-86 (d) landed — item fully dispositioned
Records what shipped, the disclosure disciplines carried over from PENDING-96/97, and the finding the structural pass produced on its first run: REVIEWED-11/-12/-74 were hidden from item_spans by leading whitespace, making the jurist's 2026-07-29 discovery failure over-determined. Steward unindented all three; 78 -> 81 items. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AB3Kryoy6b1pm2Nz1DYdLh
This commit is contained in:
co-authored by
Claude Opus 5
parent
673823961c
commit
f3f062defc
+7
-1
@@ -679,7 +679,13 @@ Executed as §VII eyeball-after-gate: pages rendered with `pdftoppm` and read, n
|
||||
**AUTHORIZED + LANDED 2026-08-05 — option (a) only.** Steward-authorized on the jurist's own request while it was unable to close PENDING-99's Q2 (a question turning on §II.3's *"inline anchor marker"* and §V's marker exclusion). `governance-mcp.py` gains two enum keys — `chamber-spec`, `graduation-spec` (`5cd5faf`). No new tool, no path argument, no traversal surface; every existing refusal control still passes. Selftest **29 → 35 controls, 0 fail**; live stdio round-trip confirms the §V clause arrives verbatim.
|
||||
⚠ **Reachability of the key is not reachability of the clause**, and this nearly went wrong: the constitution's operative sections start near line 354, above which sit ~330 lines of **superseded** version headers. A jurist reading at the default `limit=400` lands in obsoleted text — the new access *causing* the misruling it exists to prevent. The trap is now disclosed on the key's own description, with two controls pinning it: the §II.3 and §V clauses are both reachable in one paged call (`offset=350, limit=2000`), and a **negative control** confirms a first-page read does land in the `(obsoleted)` region.
|
||||
⚠ **Requires a Claude.app restart** — the running server carries the old code until respawned.
|
||||
**Still open on this item:** **(d)**, keyword search across `PENDING.md`/`PENDING-archive.md`/`REVIEWED.md`. The jurist asked for (a)+(d) together; (d) is a new tool surface rather than two enum entries, so it was not folded in silently. **(b)** stands built and in use (`check_containment.py`, applied to the PENDING-99 package: 16/16 contained, 9/9 controls absent).
|
||||
**(d) ALSO AUTHORIZED + LANDED 2026-08-05** (`6738239`). `governance_search(query, limit)` over the three governance files; result unit is the **item**, boundaries from `wd.item_spans` (no second parser), results naming ids to hand to `governance_item` so the two tools compose. Terms are **ANDed and that is disclosed on every result**, and a miss is a **legible empty** stating corpus, items scanned, terms and match mode — the engine's PENDING-97 failure shape is not being rebuilt here unannounced, and PENDING-96's disclose-your-blindness discipline is applied to a new instrument on the day it was ruled. Ranked by exact-phrase then raw term-count, labelled a **count**, not a relevance score.
|
||||
|
||||
**The structural pass earned itself immediately, and this is the substantive finding.** Search carries a query-*independent* check for item headers hidden by leading whitespace — invisible to `item_spans`, therefore unable to appear in any result, so their absence reads as a genuine miss. It found three: **REVIEWED-11, REVIEWED-12 and REVIEWED-74**. The last is *precisely* the ruling the 2026-07-29 amendment says the jurist could not find — so that failure was **over-determined**: it did not know the id, **and `governance_item('REVIEWED-74')` returned NOT FOUND**. The executor may not edit `REVIEWED.md` (Constitutional Constraint 1), so the census was handed to the steward, who unindented all three in-session. **Items visible 78 → 81; hidden headers now zero**, with a negative control that goes red if one is ever hidden again. Selftest **29 → 44 controls, 0 fail**.
|
||||
|
||||
⚠ **Both (a) and (d) require a Claude.app restart** — the running server carries the old code.
|
||||
|
||||
**(b)** stands built and in use (`check_containment.py`, applied to the PENDING-99 package: 16/16 contained, 9/9 controls absent). **This item is now fully dispositioned: (a) landed · (b) standing · (c) = (a)+(b), satisfied · (d) landed.** Ready to close on steward confirmation.
|
||||
|
||||
**Amendment 2026-08-02 (third instance, jurist-raised in REVIEWED-86):** the jurist could not reach `contamination-problem.md` — *"same gap as the skill files last time, now touching the part of the argument that establishes the doctrine actually has a gap to fill"* — and called this *"a second, independent argument for it"*. So the tally is now three distinct documents the jurist has been unable to read while design-gating work that turns on them: the chamber constitution, the skill files, and now a CapableMind methodology doc. **The workaround was built rather than proposed this time:** `dotfiles/claude/governance/check_containment.py`, positive controls mandatory, which discharged REVIEWED-85's stated precondition (7/7 contained, 5/5 controls absent) and caught a fabricated terminal period in the executor's own package. That is evidence option (b) is *workable*, not merely proposable — and it bears on the (a)/(b)/(c)/(d) choice, which remains the steward's.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user