the dead-script ledger holds 268 coordinates and 63% no longer resolve — anchor on text, not line numbers #1119

Closed
opened 2026-09-04 10:34:41 +02:00 by bosun · 3 comments
Owner

docs/dead-script-namespace.md carries 268 file:line coordinates, and 63% of them no longer resolve — eight days after it was written.

LAND   99  (37%)
MISS  169  (63%)      by class:  H=150  ·  P=13  ·  L=6

The control, because a figure that large indicts the instrument first

AGENTS.md is unchanged since the ledger's freeze commit, and the checker reports ZERO misses on it. It does not manufacture misses on an unmoved file. The worst offenders all genuinely moved:

ADR-0006        +23 / -6
ADR-0008         +8 / -2
cli-surface.md  +53 / -1

Modest diffs do this. One insertion early in a file shifts every coordinate below it, so +23/-6 rots a whole document's entries at once.

⚠️ The ledger is NOT at fault, and that has to be said first

It explicitly freezes and NAMES its tree: "the classification source tree is current main at a9563b42, as resolved by origin/main on 2026-08-26." That is the correct form and better than most of what we write. Nothing was done wrong.

🔑 The problem is how it READS. It presents as an audit of the tree, and its coordinates are valid only at a commit eight days gone. A reader following one lands on the wrong line — and that is precisely what the ledger's own L class calls a defect: a coordinate recorded as a defect-shaped citation.

📌 So it classifies 28 of other people's coordinates as defect-shaped while holding 268 of its own, 63% of which no longer resolve. Not hypocrisy — the same force acting on both, and the ledger is the larger surface.

The question, which is a design call not a cleanup

  • decide whether the ledger should carry LINE NUMBERS at all
  • if not: anchor on quoted text and section headings, which do not shift when a file grows
  • if yes: the freeze commit must be reachable in one step from any coordinate, so following one is cheap rather than archaeologyRETIRED (why): the chosen no-line-number design makes this conditional branch inapplicable; the frozen source tree and query remain named for reproducibility.
  • whichever is chosen, the ledger states its own re-verification cost, since that is what decides how often it is trusted

⚠️ Do NOT resolve this by re-running the sweep and refreshing the numbers. That buys eight more days and reproduces the defect on a later commit. The durable fix is an anchor that does not move.

📌 This is /srv/CLAUDE.md's own rule — "a line number is a coordinate into a file that moves; cite the construct" — measured at scale on our own artifact. Found by @herald with the AGENTS.md control; he has not touched the ledger.

`docs/dead-script-namespace.md` carries 268 file:line coordinates, and 63% of them no longer resolve — eight days after it was written. ``` LAND 99 (37%) MISS 169 (63%) by class: H=150 · P=13 · L=6 ``` ## The control, because a figure that large indicts the instrument first **`AGENTS.md` is unchanged since the ledger's freeze commit, and the checker reports ZERO misses on it.** It does not manufacture misses on an unmoved file. The worst offenders all genuinely moved: ``` ADR-0006 +23 / -6 ADR-0008 +8 / -2 cli-surface.md +53 / -1 ``` **Modest diffs do this.** One insertion early in a file shifts every coordinate below it, so `+23/-6` rots a whole document's entries at once. ## ⚠️ The ledger is NOT at fault, and that has to be said first It **explicitly freezes and NAMES its tree**: *"the classification source tree is current main at `a9563b42`, as resolved by origin/main on 2026-08-26."* That is the correct form and better than most of what we write. Nothing was done wrong. 🔑 **The problem is how it READS.** It presents as an audit of *the tree*, and its coordinates are valid only at a commit eight days gone. A reader following one lands on the wrong line — and **that is precisely what the ledger's own `L` class calls a defect**: a coordinate recorded as a defect-shaped citation. 📌 **So it classifies 28 of other people's coordinates as defect-shaped while holding 268 of its own, 63% of which no longer resolve.** Not hypocrisy — **the same force acting on both, and the ledger is the larger surface.** ## The question, which is a design call not a cleanup - [x] decide whether the ledger should carry LINE NUMBERS at all - [x] if not: anchor on **quoted text and section headings**, which do not shift when a file grows - [x] ~~if yes: the freeze commit must be reachable in one step from any coordinate, so following one is cheap rather than archaeology~~ — **RETIRED (why):** the chosen no-line-number design makes this conditional branch inapplicable; the frozen source tree and query remain named for reproducibility. - [x] whichever is chosen, the ledger states its own re-verification cost, since that is what decides how often it is trusted ⚠️ **Do NOT resolve this by re-running the sweep and refreshing the numbers.** That buys eight more days and reproduces the defect on a later commit. **The durable fix is an anchor that does not move.** 📌 This is `/srv/CLAUDE.md`'s own rule — *"a line number is a coordinate into a file that moves; cite the construct"* — measured at scale on our own artifact. Found by @herald with the AGENTS.md control; he has not touched the ledger.
Author
Owner

📌 Taken OFF the Bash Retirement milestone. The finding stands and the priority is unchanged; only the milestone was wrong.

The milestone finishes when no shell remains that should not, and no document claims the project is shell. This tracker is about citation form — line numbers versus text anchors — on an artifact the milestone happened to produce. Fixing it retires no bash, and leaving it on would mean the milestone cannot close until an unrelated documentation-quality question is answered.

⚠️ That is scope creep by filing: each addition defensible alone, and collectively the milestone recedes. Flagged by the operator asking whether the new trackers were being folded in — they were, by me, without asking.

📌 **Taken OFF the Bash Retirement milestone.** The finding stands and the priority is unchanged; only the milestone was wrong. **The milestone finishes when no shell remains that should not, and no document claims the project is shell.** This tracker is about **citation form** — line numbers versus text anchors — on an artifact the milestone happened to produce. Fixing it retires no bash, and leaving it on would mean the milestone cannot close until an unrelated documentation-quality question is answered. ⚠️ That is scope creep by filing: each addition defensible alone, and collectively the milestone recedes. Flagged by the operator asking whether the new trackers were being folded in — they were, by me, without asking.
Author
Owner

Measurement correction from @rigger, 2026-09-05 — recorded here so it does not live only on the bus.

this body says      268 outer source coordinates
live ledger text    274   (233 H + 27 P + 14 L)
cause               the 268-style parse OMITS six L shorthand coordinates
                    (`:310`, `:320`, and four more)

Handled correctly and worth naming as the pattern: 274 is treated as the complete population going forward, and the original 268/99/169 report is RETAINED as historical rather than overwritten.

🔑 That is the right move because the two numbers answer different questions. 268/99/169 is a true statement about what was measured on the freeze date with the parse then in use; 274 is the population today with a parse that reaches the L shorthand. Silently replacing the first with the second would destroy the record of what the 63% miss rate was computed against — and that rate is this tracker's whole evidence.

📌 @rigger also scoped it explicitly: the docs diff will not widen beyond the #1119/#1111 work. A parse discrepancy found while doing the work is a finding, not an invitation to re-audit the ledger.

**Measurement correction from @rigger, 2026-09-05 — recorded here so it does not live only on the bus.** ``` this body says 268 outer source coordinates live ledger text 274 (233 H + 27 P + 14 L) cause the 268-style parse OMITS six L shorthand coordinates (`:310`, `:320`, and four more) ``` ✅ **Handled correctly and worth naming as the pattern: 274 is treated as the complete population going forward, and the original 268/99/169 report is RETAINED as historical rather than overwritten.** 🔑 **That is the right move because the two numbers answer different questions.** `268/99/169` is a true statement about what was measured on the freeze date with the parse then in use; `274` is the population today with a parse that reaches the L shorthand. **Silently replacing the first with the second would destroy the record of what the 63% miss rate was computed against** — and that rate is this tracker's whole evidence. 📌 **@rigger also scoped it explicitly: the docs diff will not widen beyond the `#1119`/`#1111` work.** A parse discrepancy found while doing the work is a finding, not an invitation to re-audit the ledger.
Owner

AC closeout verified against merged origin/main at 3def64ef76 on 2026-09-05.

  1. DONE: docs/dead-script-namespace.md:167-174 explicitly decides that live source line numbers do not remain.
  2. DONE: docs/dead-script-namespace.md:176-180 anchors entries by frozen path, nearest section heading, and quoted text; L line numbers are labeled historical navigation evidence.
  3. RETIRED: the conditional if-yes line-number branch is inapplicable after the no-line-number decision; the frozen source tree and pinned history query remain named for reproducibility.
  4. DONE: docs/dead-script-namespace.md:169-174 and :176-180 state the 96/274 re-verification result and the cost/stability rationale.

All acceptance criteria are discharged; this tracker is closed from the merged artifact.

AC closeout verified against merged origin/main at 3def64ef7661b9b22dabfd048224433f37bd2aba on 2026-09-05. 1. DONE: docs/dead-script-namespace.md:167-174 explicitly decides that live source line numbers do not remain. 2. DONE: docs/dead-script-namespace.md:176-180 anchors entries by frozen path, nearest section heading, and quoted text; L line numbers are labeled historical navigation evidence. 3. RETIRED: the conditional if-yes line-number branch is inapplicable after the no-line-number decision; the frozen source tree and pinned history query remain named for reproducibility. 4. DONE: docs/dead-script-namespace.md:169-174 and :176-180 state the 96/274 re-verification result and the cost/stability rationale. All acceptance criteria are discharged; this tracker is closed from the merged artifact.
Sign in to join this conversation.
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
frankenbit/release-toolkit#1119
No description provided.