Commit Graph
4 Commits
Author SHA1 Message Date
David F GliddenandClaude Opus 5 bcc02ada3d [FIX] register integrity: an amendment must never replace the record it amends
REVIEWED-87's original entry (PENDING-99, the fidelity_equivalence@3
design-gate ruling of 2026-08-05) was replaced this afternoon by the
PENDING-111 amendment block placed at the same heading. The amendment's own
"**Amends:** REVIEWED-87" line then pointed at a record no longer in the
file, and the register could no longer answer what was ruled under 87 — the
register's whole job.

Recoverable, and recovered: the entry was intact in git HEAD and the
underlying jurist ruling is separately filed at
studium-engine/docs/quoted-tier-acceptance-JURIST-RULING-2026-08-05.md. But
the register entry uniquely held Q2's reframing (the route to PENDING-100),
Q3 REJECTED and its strengthened basis, Q5 CONCUR D-1, and the finding that
"the decisive sentence was one the executor had read and not surfaced, which
a verbatim-containment check passes every time."

CAUSE, and it is the executor's. The handoff draft was headed
"## REVIEWED-87 — AMENDMENT 2026-08-07" and described as "the block to
place", with no instruction that it join rather than replace. That reads as a
replacement heading, and the steward's reading of it was reasonable. The
copy-paste-clean discipline exists so a placement cannot be ambiguous, and
this draft was ambiguous.

NOTHING DETECTED IT. It surfaced because a diff was read by hand and the tell
was a deletion count on what should have been a pure append. This is
`removing-a-claim-is-not-removing-the-reliance` at the governance layer: the
amendment's dependency on the original survived the original's removal and
became invisible.

Check 7 added to governance-drift-check.py, which already runs at every wake:
every `## REVIEWED-N — AMENDMENT` requires an un-amended `## REVIEWED-N`
entry, and every `**Amends:** REVIEWED-N` must resolve. Reported separately
from the CLAUDE.md findings so that report's own claim stays true.

Controls per the standing epistemic standard, and the third is the lesson of
the day — a check that has never fired on a known-bad input is unestablished,
so the instrument is run against a synthetic reproduction of the actual
failure. Red-witnessed on a copy of the live file with the deletion replayed:
fires both findings. 11/11 controls pass.

Detection only. REVIEWED.md is [ESCALATE], the steward's hand
(Constitutional Constraint #1); the restoration above was placed by the
steward, not by the executor.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NEWjLBP4quXbDPDL2byEzZ
2026-08-07 17:21:07 +02:00
David F Glidden 8abfe8835a session 2026-07-28: governance block closed — CLAUDE.md drift 9→0 (REVIEWED-76/77/79/80), PENDING.md split 1848→430 + archive, wake-digest SessionStart hook, doctrine ids live, PENDING-79/80/81 2026-07-28 09:45:44 +02:00
David F GliddenandClaude e8cd376741 fix(drift-check): handle SIGPIPE so | head does not traceback
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xefg5EXwcpd9RMAr63dWrD
2026-07-27 22:15:06 +02:00
David F GliddenandClaude e8b6ce06a3 session 2026-07-27 evening: PENDING-76/77/78 placed; governance drift-check built + wired into /wake-up
PENDING-76 remanded by jurist — required count returned 0 of 11 (the package's own
IV.2 refinement proved its target category empty); executor recommends withdrawal.
PENDING-77 (5 structural defects) and PENDING-78 (.app preferences) released by the
ruling from needing it. Drift check reports contradicted state claims at every wake
and corrects nothing — detection needs no authorization, correction does.

MEMORY.md compacted 20.5KB -> 17.1KB (budget hook); prior Active Session demoted to
MEMORY-reference.md. CLAUDE.md and REVIEWED.md untouched.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xefg5EXwcpd9RMAr63dWrD
2026-07-27 22:14:25 +02:00