Skip to content

fix(freeze): reseal FROZEN_HASH -- master does not build (Closes #2316) - #2318

Merged
gHashTag merged 2 commits into
masterfrom
fix/frozen-hash-reseal-2316
Aug 20, 2026
Merged

fix(freeze): reseal FROZEN_HASH -- master does not build (Closes #2316)#2318
gHashTag merged 2 commits into
masterfrom
fix/frozen-hash-reseal-2316

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Closes #2316

Master cannot be built right now. #2317 merged the compiler.rs change
without resealing the frozen digest, so every cargo build of t27c panics in
bootstrap/build.rs before compiling anything:

thread 'main' panicked at bootstrap/build.rs:235:9:
t27c FROZEN HASH violation: bootstrap/src/compiler.rs has changed without a seal update.
Expected seal: cbbfac87dff32a7a8c0fee2331715453566d75f2e338e0c5ea76c089b96a8028
Live hash:   c3ec9fba947b9d5845af10d1270619f6e49298698139d0e227ab669f93868bbf

On master head right now:

$ git show origin/master:bootstrap/src/compiler.rs | shasum -a 256
c3ec9fba947b9d5845af10d1270619f6e49298698139d0e227ab669f93868bbf
$ git show origin/master:bootstrap/stage0/FROZEN_HASH
cbbfac87dff32a7a8c0fee2331715453566d75f2e338e0c5ea76c089b96a8028  bootstrap/src/compiler.rs

This PR sets the operational line to the live digest. The value was taken with
shasum -a 256 and is the same string the failing runner printed as
Live hash, so the seal and the blob CI actually has are confirmed to agree
from two independent sources.

Why it got in

fpga-smoke caught this on #2317 at 12:35:22Z, 20 seconds into the Build t27c
step. It is not a required context, so auto-merge fired on the required set and
the PR merged while that job was still red. The fix commit was pushed to the
branch after the squash had already happened, which is why it needs its own PR.

…2316)

`bootstrap/build.rs` panics on every `cargo build` when
`sha256(bootstrap/src/compiler.rs)` differs from the operational line in
`bootstrap/stage0/FROZEN_HASH` (FROZEN.md 4.1), so the previous commit failed
`fpga-smoke` at the Build t27c step before a single spec was generated.

The new digest was taken with `shasum -a 256` and matches the live hash the
failing runner computed for the same blob:
`c3ec9fba947b9d5845af10d1270619f6e49298698139d0e227ab669f93868bbf`.

Closes #2316
@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-20 12:38:54 UTC

Summary

Status Count
Total Open PRs 20
PRs with Failing Checks 5
PRs with All Checks Green 15
READY 7
FAILING 5
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=c3ec9fba947b != 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 enabled auto-merge (squash) August 20, 2026 12:38
…loses #2316)

`check-now-freshness` requires every PR to update `docs/NOW.md`; the reseal
commit did not, so the PR that unbreaks the build could not merge.

The entry also carries the end-to-end measurement, which only became available
once `t27c` built again: in the `fpga-verilog` artifact of run 32369917564,
`mac.v` is the only one of the 32 files that changed, `iverilog` on it goes from
28 errors to 22 with none mentioning `Trit_`, and `fpga-conformance` still
reports 28/32 modules failed -- unchanged, because the imported-enum defect was
never the sole reason any module failed.

Closes #2316
@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-20 12:45:58 UTC

Summary

Status Count
Total Open PRs 20
PRs with Failing Checks 5
PRs with All Checks Green 15
READY 7
FAILING 5
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=c3ec9fba947b != 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).

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.

gen-verilog: an enum reached through use is referenced but never declared

2 participants