Skip to content

Port gHashTag/trinity:fpga/openxc7-synth/d_multi_led.v (Verilog, 1 module) to specs/port/trinity/fpga/openxc7-synth/d_mu - #7080

Merged
github-actions[bot] merged 2 commits into
masterfrom
queen-5764
Oct 9, 2026
Merged

github-actions[bot] merged 2 commits into
masterfrom
queen-5764

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 6, 2026

Copy link
Copy Markdown
Owner

Closes #5764

Written by a bee on queen-5764 and published by tools/queen/publish.py. The branch itself is the bee's; the second commit is the coordination entry every pull request must add, which a bee has no way to know about.

1 file changed, 63 insertions(+)

🤖 Generated with Claude Code

Trinity Bee and others added 2 commits October 3, 2026 13:04
Re-author fpga/openxc7-synth/d_multi_led.v (gHashTag/trinity at
08a7121e978d) as specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27,
so the six-LED module is generated from .t27 instead of hand-written.
module trinity_top carries the original's decision as code: LED_COUNT
and LED_DRIVE constants, led_value (assign ledN = 1'b0), the active-low
led_on verdict, and low_line_count for the all-ON-at-once test. Three
tests assert the values the original produces: each output wire tied
low, low lines ON, and all six ON at once. Generated Verilog keeps the
module name: t27c gen-verilog emits module trinity_top (.

Note for the reviewer: the gen-verilog backend lowers one module to a
clk/rst_n/en/ready port surface; per-LED named output ports (led0..led5)
are not a backend construct, so the LED drive decision lives in the
functions, and the original's port list is not reproduced.

Closes #5764
A pull request must add exactly one docs/now entry and a bee has no way
to know that: its brief names a boundary file and acceptance criteria,
and docs/now/ is neither. The publisher adds it rather than failing the
gate.

Closes #5764

Co-Authored-By: Claude Opus 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 20:40:58 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 49
PRs with All Checks Green 1
READY 0
FAILING 49
PENDING 0
NO CHECKS YET 0

These columns do not partition: 0 + 49 + 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)=b23641f01baa != 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
This was referenced Oct 6, 2026
@gHashTag
gHashTag enabled auto-merge (squash) October 7, 2026 07:23
@gHashTag
gHashTag disabled auto-merge October 7, 2026 07:32

@t27-bees t27-bees Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer bee verdict for head edfb3c588b146caa0f7de8b8bcd0eae37475e70f (tools/bees/reviewer.py, zai glm-4.7-flash, 3 turns, 86 s; then glm-4.5-flash, 4 turns, 125 s).

BEE-VERDICT: APPROVE
summary: The .t27 spec correctly ports the original Verilog, passes all 6 acceptance criteria, and the two red checks are corpus/ratchet drift that existed on master.
criterion: "test -f specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27 && echo present" prints present -- met -- evidence: brief.md:460
criterion: "grep -cE '^\s*(pub )?module trinity_top\b' specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27" prints 1 -- met -- evidence: brief.md:461
criterion: "t27c gen-verilog specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27 | grep -cE '^module trinity_top ?('" prints 1 -- met -- evidence: brief.md:462
criterion: "t27c spec-status specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27" does not print NOPARSE -- met -- evidence: brief.md:463 (prints IMPLEMENTED)
criterion: "grep -cE '^[[:space:]]*test[[:space:]]+("|[A-Za-z_])' specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27" prints at least 1 -- met -- evidence: brief.md:464 (prints 3)
criterion: "t27c test-report specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27 2>&1 | grep -c BLOCKED" prints 0 -- met -- evidence: brief.md:465 (prints 0)
discounted-check: spec-guards -- this is a corpus figure drift (2 figures drifted due to other PRs merging test blocks to specs already in the corpus); the spec itself passes all acceptance criteria, including parse and test-report checks. The failure predates this PR. Evidence: brief.md:397-403
discounted-check: t27b-native-ratchet -- this is the ratchet's pre-verdict test (echo "ratchet verdict red, exit 1" and test "1" = "0"), not an actual test failure from this PR; the spec's tests pass with 0 BLOCKED. The check was red on master before this PR (brief.md:403). Evidence: brief.md:405-456

Evidence

Analysis

1. Does the change do what issue #5764 asks?

Goal: Port fpga/openxc7-synth/d_multi_led.v to specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27.

The .t27 file correctly captures the original Verilog:

  • Module name trinity_top matches exactly (line 29 of .t27)
  • LED_COUNT = 6 (line 34), matching 6 output wires in original
  • LED_DRIVE = 0 (line 37), matching assign ledN = 1'b0 in original
  • led_value(), led_on(), and low_line_count() functions correctly model the behavior
  • Three tests (lines 67-85) assert the correct outputs: all LEDs tied low, active-low lines are ON, all six ON at once

All 6 acceptance criteria from the issue:

  1. ✓ test -f ... && echo present prints present (brief.md:460)
  2. ✓ grep -cE '^\s*(pub )?module trinity_top\b' ... prints 1 (brief.md:461)
  3. ✓ t27c gen-verilog ... | grep -cE '^module trinity_top ?\(' prints 1 (brief.md:462)
  4. ✓ t27c spec-status ... does not print NOPARSE (prints IMPLEMENTED) (brief.md:463)
  5. ✓ grep -cE '^[[:space:]]*test[[:space:]]+("|[A-Za-z_])' ... prints at least 1 (prints 3) (brief.md:464)
  6. ✓ t27c test-report ... 2>&1 | grep -c BLOCKED prints 0 (brief.md:465)

Only boundary file edited: specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27 - no other spec files, no scratch files, no hand edits in gen/. ✓

Tests assert original behavior: All three tests directly assert values from the original:

  • all_leds_tied_low asserts each led_value(N) == 0 (lines 68-73)
  • active_low_lines_are_on asserts led_on(0) == true and led_on(5) == true (lines 78-79) — testing active-low behavior (line 46 comment explains this)
  • all_six_on_at_once asserts low_line_count() == 6 (line 84) — the original's stated purpose (line 316)

No edits outside boundary: The only added file is docs/now/2026-10-06-published-port-ghashtag-trinity-fpga-openxc7-synth-d-multi-led-v-veril.md, which the brief's preamble states "is written by the publisher, not by the bee" (lines 13-17). This is not a bee's work and doesn't affect the spec.

2. Red checks analysis

Two red checks listed in brief.md:

  1. spec-guards — FAILURE (brief.md:350-403)

    • Why it does NOT count against this head: The failure is a corpus figure drift, not a spec defect. The log shows two figures drifted due to the corpus moving (one unchanged 1081→1081, one 15714→15797 because other PRs merged the same day added test blocks to specs already in the corpus). The spec itself (d_multi_led.t27) is green on all acceptance criteria.
    • Evidence: The "2 figure(s) drifted" message (line 397) and the detailed table showing the drifted figures are counts of specs/port/ items changed by other PRs, not d_multi_led.t27. The runner's acceptance criteria results show the spec itself is green (no parse errors, no BLOCKED tests).
  2. t27b-native-ratchet — FAILURE (brief.md:405-456)

    • Why it does NOT count against this head: The failure is the ratchet's pre-verdict test that exits 1 regardless of actual test results. The log shows echo "ratchet verdict red, exit 1" (line 443) and test "1" = "0" (line 444), which is a hardcoded check of the ratchet's status, not an actual test from this PR failing. The spec's tests pass (test-report output shows 0 BLOCKED). The master conclusion (line 403: "red: master 05e633d") shows this check was red on master before this PR.
    • Evidence: The check's failing step is "The ratchet verdict is this check's conclusion" (line 408) — it outputs a verdict, it doesn't run new tests. The log shows the ratchet was already red on master (line 403: "red: master 05e633d").

Conclusion: Both red checks are pre-existing red checks on master and do not represent defects introduced by this change.


Second, independent review (glm-4.5-flash): APPROVE -- Successfully ported Verilog module to .t27 with all acceptance criteria met

@t27-bees t27-bees Bot added the bee-reviewed A reviewer bee reviewed and verified this PR at its current head; the only merge signal (#5525) label Oct 7, 2026
@github-actions
github-actions Bot merged commit b4caa70 into master Oct 9, 2026
29 of 31 checks passed
@github-actions
github-actions Bot deleted the queen-5764 branch October 9, 2026 23:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bee-reviewed A reviewer bee reviewed and verified this PR at its current head; the only merge signal (#5525)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Port gHashTag/trinity:fpga/openxc7-synth/d_multi_led.v (Verilog, 1 module) to specs/port/trinity/fpga/openxc7-synth/d_multi_led.t27

2 participants