Skip to content

fix(fpga): elaboration ratchet green -- uart restored, adapter recorded, ternary_isa a named gap - #6686

Merged
gHashTag merged 3 commits into
masterfrom
claude/fpga-elab-uart-adapter
Oct 6, 2026
Merged

gHashTag merged 3 commits into
masterfrom
claude/fpga-elab-uart-adapter

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 6, 2026

Copy link
Copy Markdown
Collaborator

Closes #5908

Cause (master run 37423783199: 178 (baseline 176))

row change cause this PR
uart 0 -> 1 942a001 (#4651) replaced fn on_comb(data: u8) -> bool { return uart_tx_send(data); } in specs/fpga/uart.t27 with an on_clock reproduction of compiler issue #2364: Could not find variable on_clock in ZeroDSP_UART. fixed: the original spec line is restored; the 3 seals naming the spec are resealed with t27c seal --save on the Railway t27c lab.
adapter NEW at 0 d4a7164 added specs/fpga/adapter.t27, which elaborates cleanly; the ratchet treats any new module as a failure. recorded at 0 -- this hides nothing.
ternary_isa 6 -> 7 gen-verilog W459 binds the test-local given stages = [...] (901ed4f, #4594) to the module array and drops input [263:0] stages;. KNOWN GAP, not fixed: recorded at 7 with a note in the baseline. Compiler defect filed as #6685; its fix is PR #5948, hand-written Rust that needs the owner's owner-approved-foreign label. When it lands the row must return to 6.

About PR #5948

It targets the same failure, but it changes bootstrap/src/compiler.rs, tools/check_elab_ratchet.py and the workflow, and has no owner-approved-foreign label, so under the only-t27 rule it cannot be finished here. This PR takes only its t27 and data parts (the uart line, the adapter row, the 12.0 version header). Once #5948 is labelled and merged, it lowers ternary_isa back to 6 and should re-take the baseline.

Verification (Railway t27c lab, master t27c at edb5372)

  • python3 tools/check_elab_ratchet.py -> elaboration errors: 177 (baseline 177), OK, exit 0 (iverilog 11.0 on the lab; every row matches CI's 12.0 numbers).
  • --self-check passes.
  • tools/check_seal_currency.py -> 0 STALE.

Only .t27, t27c-written seals, baseline data and prose.

🤖 Generated with Claude Code

…sa W459 gap (Closes #5908)

The elaboration ratchet read 178 vs 176 on master. uart 1 -> 0 by restoring
the spec line #4651 replaced with an on_clock reproduction of #2364 (seals
resealed on the t27c lab). adapter is a new module at 0 errors. ternary_isa
6 -> 7 is a known compiler gap (#6685, fix in PR #5948 awaiting the owner's
owner-approved-foreign label) and is recorded as such in the baseline notes.

Closes #5908

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

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-06 07:02:52 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 38
PRs with All Checks Green 12
READY 11
FAILING 38
PENDING 0
NO CHECKS YET 0

These columns do not partition: 11 + 38 + 0 + 0 = 49, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

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

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-06 07:17:45 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 38
PRs with All Checks Green 12
READY 10
FAILING 38
PENDING 0
NO CHECKS YET 0

These columns do not partition: 10 + 38 + 0 + 0 = 48, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

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

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-06 10:57:32 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 39
PRs with All Checks Green 11
READY 9
FAILING 39
PENDING 0
NO CHECKS YET 0

These columns do not partition: 9 + 39 + 0 + 0 = 48, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

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

This was referenced Oct 6, 2026
@gHashTag
gHashTag merged commit 4bc47a3 into master Oct 6, 2026
33 of 34 checks passed
@gHashTag
gHashTag deleted the claude/fpga-elab-uart-adapter branch October 26, 2026 05:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant