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

Open
gHashTag wants to merge 2 commits into
masterfrom
queen-5764
Open

gHashTag wants to merge 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

This branch has not been deployed

No deployments
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