Skip to content

Answer "nothing to check" before "the tool is missing" - #2750

Merged
gHashTag merged 2 commits into
masterfrom
w699-seal-order
Aug 28, 2026
Merged

Answer "nothing to check" before "the tool is missing"#2750
gHashTag merged 2 commits into
masterfrom
w699-seal-order

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Refs #2161

#2746 put the compiler requirement ahead of the empty-tree check, so a tree with no seals answered

check_seal_coverage: the compiler is not built

which is true, and is not the diagnosis. With no seals there is nothing to recompute, and the file already had the right answer: FAIL: no seals found at all -- the path is wrong, not the tree.

check_gate_preconditions.py hands every gate in its table an empty tree and asks what it says. It caught this on the commit after #2746 — the loud-failure gate doing exactly its job, one merge after I gave this one a way to lie.

Controls

empty tree           -> exit 1, "no seals found at all"
gen_hash corrupted   -> exit 1, gen-drift
compiler absent      -> exit 2, says so
clean tree           -> exit 0
--self-check         -> exit 0
check_gate_preconditions.py + --self-check -> exit 0

🤖 Generated with Claude Code

gHashTag and others added 2 commits August 28, 2026 08:04
#2746 put the compiler requirement first, so an empty tree got

    check_seal_coverage: the compiler is not built

which is true and is not the diagnosis. With no seals there is nothing to
recompute, and the answer the file already had is the right one:

    FAIL: no seals found at all -- the path is wrong, not the tree

check_gate_preconditions.py hands every gate in its table an empty tree and
asks what it says. It caught this on the commit after #2746 -- a gate doing
exactly its job, one merge after I added a way for this one to lie.

Controls, all re-run:

    empty tree           -> exit 1, "no seals found at all"
    gen_hash corrupted   -> exit 1, gen-drift
    compiler absent      -> exit 2, says so
    clean tree           -> exit 0
    --self-check         -> exit 0
    check_gate_preconditions.py and its --self-check -> exit 0

Refs #2161

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Refs #2161

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-08-28 01:05:14 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)=25a9c40dc273 != 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.

@gHashTag
gHashTag merged commit fe530e0 into master Aug 28, 2026
22 of 23 checks passed
@gHashTag
gHashTag deleted the w699-seal-order branch August 28, 2026 01:14
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