Skip to content

A legend that omits a kind - #2863

Merged
gHashTag merged 2 commits into
masterfrom
w721-a-legend-that-omits-a-kind
Aug 29, 2026
Merged

A legend that omits a kind#2863
gHashTag merged 2 commits into
masterfrom
w721-a-legend-that-omits-a-kind

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Refs #2851

Before adding anything, the question worth asking was whether the signal had ever reached the author. It had:

PR seal check
#2841 fail
#2844 fail
#2845 fail
#2849 fail
#2856 fail
#2859 fail

Six emitter pull requests, the gate red on the pull request itself, all six merged. The barrier was not knowledge, not tooling, not timing.

The output is why

The legend explained stale, dangling and phantom. The kind that fired was gen-drift, which had no entry — and the only repair the page named was --update-baseline, which for that kind records the drift as accepted debt instead of recording what the compiler now produces.

The one actionable line on the page was the wrong action.

Three kinds, five kinds, eight kinds

The fix looked like two legend lines. Instead the legend became data, and --self-check now reads this file's own source for every kind it can attach. Its first run:

legend covers 5 of 8 kind(s)  MISSING: no-spec-hash, no-spec-path, unreadable

Three kinds beyond the two I was fixing. The script attaches eight; the legend explained three. Second guard this session to earn itself on its first execution.

What an author sees now

  gen-drift the spec is UNCHANGED and its generated output is not. This is
           what an emitter fix looks like from here, and it is normal --
           the seals simply have not been told yet:
               tri seals drift --fix
           Re-sealing is a STATEMENT that the new output is the one you
           want, so read the acceptance columns first:
               t27c corpus

  Deliberate debt goes in seal_baseline.txt via --update-baseline.
  That is the WRONG repair for gen-drift: baselining it records the
  drift as accepted debt instead of recording what the compiler now
  produces.

The legend is also selective: only kinds present in this run print. An author with 134 gen-drift rows used to read three paragraphs about stale, dangling and phantom seals, none of them theirs.

Controls

remove gen-drift's entry MISSING: gen-drift, exit 1
add an entry nothing attaches UNREACHABLE: invented-kind, exit 1
plant a real drift prints the new paragraph, and none of the other seven
restore exit 0, legend covers 8 of 8

An explanation for a state that cannot occur is the same defect as a state with no explanation — one wastes the reader, the other strands them.

ci-gates 270–272.

Refs #2851

Six emitter pull requests carried a RED seal-coverage check ON THE PULL REQUEST
ITSELF -- #2841 #2844 #2845 #2849 #2856 #2859 -- and all six merged. The signal
reached the author six times out of six.

THE OUTPUT IS WHY. The legend explained stale, dangling and phantom. The kind
that fired was `gen-drift`, which had NO entry, and the only repair the page
named was --update-baseline, which for that kind records the drift as accepted
debt instead of recording what the compiler now produces. The one actionable
line on the page was the wrong action.

The legend is now data, and --self-check reads THIS FILE'S SOURCE for every kind
it can attach. Its first run:

    legend covers 5 of 8 kind(s)  MISSING: no-spec-hash, no-spec-path, unreadable

Three kinds beyond the two being fixed. The script attaches eight; the legend
explained three.

It is also selective: only the kinds present in this run print. An author with
134 gen-drift rows used to read three paragraphs, none of them theirs.

Controls: remove an entry -> MISSING + exit 1; add an entry nothing attaches ->
UNREACHABLE + exit 1; planted drift prints the new paragraph and none other.

ci-gates 270-272.
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-08-29 18:15:01 UTC

Summary

Status Count
Total Open PRs 10
PRs with Failing Checks 8
PRs with All Checks Green 2
READY 0
FAILING 8
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=4e3bf9d6a10c != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@github-actions

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

This notebook contains session context, decisions, and artifacts for this work.

@github-actions

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

This notebook contains session context, decisions, and artifacts for this work.

@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-08-29 18:17:15 UTC

Summary

Status Count
Total Open PRs 9
PRs with Failing Checks 8
PRs with All Checks Green 1
READY 0
FAILING 8
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=7bce701f0d82 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@gHashTag
gHashTag merged commit dfe5e90 into master Aug 29, 2026
23 checks passed
@gHashTag
gHashTag deleted the w721-a-legend-that-omits-a-kind branch August 29, 2026 18:18
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