Skip to content

File the class a correctness review structurally cannot see: a mechanism outliving the population it was built for - #10892

Merged
briansrls merged 1 commit into
mainfrom
ledger/mechanism-outlives-its-population
Sep 9, 2026
Merged

briansrls merged 1 commit into
mainfrom
ledger/mechanism-outlives-its-population

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Open, not merged. One file: a RecurringFailureMode row. Membership is the directory, so no registration edit exists to make.

The class

A mechanism lands for a population a root fix has already removed. A change that classifies or handles an observed failure signature merges after another change eliminated that signature at its root. Nothing in the declaration is false — the population was real when observed — and the mechanism is correct, complete, tested and reviewed. Only the world changed, in another change, between observation and merge.

Why this is not "we shipped something unnecessary"

The harm is that correctness review structurally cannot see it. On the specimen the mechanism was an auto-admission arm inside a required gate: it could not go red, could not be falsified by any run, and would thereafter have been cited as coverage of a class it never sees. That is §5's populationless arm — worse than an absent one, because absence is visible.

Base staleness is the mechanism, not the context. A required run's evidence is pinned at push against the base as it then was. It can answer is this correct with full rigour and cannot answer is this still needed. No participant is negligent and the defect lands anyway.

Specimen

root fix #10856 aba7939b54 — 2026-09-08T18:51:35-04:00
the arm #10871 d2559c36e3 — 23:19:18, 4½ h later
reviews four, all approving
firings after landing 0, across three floor runs on two branches
revert #10889

Recognition rule

After landing, grep the required gate's own log for the symbol you added. Zero firings is the finding. One grep, and it is what none of the four reviews did.

Two supporting tells available before merge: the motivating artifact's base is not an ancestor of current main; and the mechanism's only executing consumers are the fixtures shipped with it — which reads as full coverage and is the same reading either way, since a fixture cannot distinguish a live population from an empty one.

Why its own row, and not folded into the frontier row

declared_frontier_outlives_the_firing_of_its_own_trigger (#10842) is a declaration that announced it was waiting — admitted under §3c with a named later consumer, detectable by re-reading the trigger beside it. This is a mechanism that announced it was already needed: no frontier, no trigger, undetectable from the declaration at all.

Same family, opposite tense. Folding them would be a §3 meaning fork — one name over two materially different invalid states — and would blunt the rule that just fired.

Ceiling, stated below where it looks

Deciding is this still needed in general is asking whether a population is empty, which is not decidable from the declaration. Structural is not the ceiling, and claiming it would be inflation. What is decidable is the tell: a landed symbol with zero firings in the gate's executed log over a window — a lens over an executed artifact, rung 2 at best.

It sits at rung 1 today, mitigation, because nothing runs it: the tell was performed by hand on the specimen and no enrolled check performs it. The next-rung trigger is that lens existing and executing on the merge path — not someone remembering to grep.

🤖 Generated with Claude Code

https://claude.ai/code/session_01GwvzQ3SQoWWDgHkAeffMeF

…ism outliving the population it was built for

gunbc#10871 landed an auto-admission arm classifying a binding delta that
gunbc#10856 had eliminated at its root four and a half hours earlier. It was
reviewed four times and approved. Every reviewer, the manager and I reasoned
from CI bound to a base predating the root fix. Reverted at gunbc#10889; this
row is the obligation that revert did not discharge -- DESIGN requires every
discovered class to file or update one row, and a PR body is not that.

THE HARM IS THE REVIEW-INVISIBILITY, NOT THE WASTED WORK. The mechanism was
correct, complete and tested; nothing in it was false, because the population was
real when observed. It would thereafter have been cited as coverage of a class it
never sees -- and being an auto-admit inside a required gate, no execution could
ever contradict it. That is section 5's populationless arm, and it is worse than
an absent one because absence is visible.

THE MECHANISM IS BASE STALENESS AS A CAUSE, not as context: a required run's
evidence is pinned at push, so it answers `is this correct` with full rigour and
CANNOT answer `is this still needed`. No participant is negligent and it lands
anyway.

RECOGNITION RULE, AND THE TELL IS THE WHOLE OF IT: after landing, grep the
required gate's own log for the symbol you added -- zero firings is the finding.
It costs one grep and it is what none of the four reviews did.

FILED AS ITS OWN ROW, NOT FOLDED INTO THE FRONTIER ONE. That class is a
declaration that announced it was WAITING, detectable by re-reading the trigger
beside it. This is a mechanism that announced it was ALREADY NEEDED: no frontier,
no trigger, undetectable from the declaration. Same family, opposite tense, and
widening either would blunt the rule that just fired.

CEILING STATED BELOW WHERE IT LOOKS. Deciding whether a population is empty is
not decidable from the declaration, so structural is NOT the ceiling and claiming
it would be inflation. The tell is a lens over an executed artifact -- rung 2 at
best, and rung 1 today because nothing runs it. The trigger names that lens
executing on the merge path, not someone remembering to grep.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GwvzQ3SQoWWDgHkAeffMeF
@briansrls
briansrls merged commit a9b7421 into main Sep 9, 2026
4 checks passed
@briansrls
briansrls deleted the ledger/mechanism-outlives-its-population branch September 9, 2026 13:44
@briansrls
briansrls restored the ledger/mechanism-outlives-its-population branch September 9, 2026 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant