[FIX] Tarbuckle's body: the status line wired, and refreshInterval's real semantics

Tier 1 of §8's three. The body renders the name and one mark, every turn.

Verified against the substrate rather than assumed, because §13.2 gates §8 on it:
the statusLine schema is {type, command, padding?, refreshInterval?}, seconds, min 1.
The first name-match found was refreshIntervalMs, which belongs to the certificate
watcher — reading the context rather than trusting the match is what separated them.

⚠ One clause of PENDING-152 does not survive that read. It says the 20-minute tick is
"a counter over refreshes rather than over events" and that "no event-gating remains
within a session". refreshInterval re-runs the command every N seconds IN ADDITION TO
event-driven updates, so invocations burst with activity and a per-invocation counter
would be event-keyed — the v1 defect §8 exists to remove. The conclusion survives; the
mechanism named does not. The tick therefore consults the CLOCK, and the reasoning is
written into the script rather than left in this message.

The binding constraint — the variation must not correlate with anything — is carried by
render()'s signature: it takes the minute and nothing else, so a function that cannot
see the session cannot leak it. C3 asserts that structurally (argcount, co_names) and
C3n proves the assertion can fail by feeding it a deliberately leaky fixture. C4 asserts
len(MARKS) is coprime with the mumble interval, so the mark visible when a mumble lands
walks the whole cycle instead of announcing it; C4n catches a commensurate cycle.
16/16 controls, positive and negative, written before first execution.

Also placed: a STATE-CLAIM marker on the false "STEWARD OWES: place REVIEWED-127" line.
Steward-directed to defer the correction itself to the next session; this makes the
deferral machine-checked rather than remembered. It could NOT be placed beside the claim
— governance-drift-check.py scans */docs/**, claude/governance/**, PENDING.md and the
archive, and claude/memory/MEMORY.md matches none of them. The file read at the start of
every session is the one governance surface the checker cannot see.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J6hZXNYSxEfZseBGTni4sf
This commit is contained in:
David F Glidden
2026-08-25 16:15:55 +02:00
co-authored by Claude Opus 5
parent ebccdd84a7
commit 6f0ccde4c6
4 changed files with 215 additions and 0 deletions
+33
View File
@@ -5144,3 +5144,36 @@ So: **60% coverage for near-zero new code; 100% for two trigger kinds of a few l
**C2 — the 57 is a grep and the item must keep saying so.** It is not a census, the candidates are unclassified, and it is unknown how many are currently false. ⚠ **Held as a standing condition because the number will get quoted**, and "57 stale claims" is the proxy-census error this record already carries twice today.
**Awaiting:** ~~Steward authorization, jointly with PENDING-157.~~ **AUTHORIZED.** Steward to place REVIEWED-127; build proceeds under C1 and C2.
---
## STATE-CLAIM marker — the wake index asserts an obligation the register has already discharged
**Date:** 2026-08-25
**Tag:** [FIX] — a marker on a known-false claim, not a new item. Steward-directed 2026-08-25:
the correction itself is deferred to the next session; this makes the deferral machine-checked
rather than remembered, which is the whole subject of REVIEWED-127.
`MEMORY.md`'s Active Session block carries `📌 STEWARD OWES: place REVIEWED-127`. The placement
happened in **the same commit that wrote the line** (`2676a7e`) — and that commit's own message
names the class: *"a line that went false the moment the steward acted."* The ruling is at
`REVIEWED.md:2218`, byte-identical to the draft. This is instance six.
⚠ **The line is deliberately NOT corrected here.** Repairing it in the session where *"is
`STATE-CLAIM` adopted?"* is the live question would make the author who forgot also the author who
tidied away the evidence. It is marked, which is what the schema is for.
⚠ **And the marker cannot be placed where the claim lives.** `governance-drift-check.py` scans
`*/docs/**/*.md`, `claude/governance/**/*.md`, `PENDING.md` and `PENDING-archive.md`.
`claude/memory/MEMORY.md` matches none of them, so a block placed beside the claim would be
**inert** — the silent-net failure the checker's own comments were written to prevent. It is
placed here instead, in a file that is scanned and never size-skipped. **See the separate item
on the coverage inversion this exposes.**
<!-- STATE-CLAIM: memory-index-claims-reviewed-127-unplaced
since: 2026-08-25
claims: MEMORY.md's Active Session block says the steward still owes the placement of REVIEWED-127
falsified-by: text-present REVIEWED.md ## REVIEWED-127 — PENDING-157 + PENDING-158 -->
**Awaiting:** nothing. Discharged by correcting the MEMORY.md line at the next wrap or wake, then
setting `resolved:` with a pointer to the commit that did it.