Skip to content

feat(analog,t27f): netlist block as a T27F widget card - #13675

Open
gHashTag wants to merge 1 commit into
masterfrom
claude/netlist-card-13673
Open

gHashTag wants to merge 1 commit into
masterfrom
claude/netlist-card-13673

Conversation

@gHashTag

@gHashTag gHashTag commented Nov 14, 2026 •

Copy link
Copy Markdown
Collaborator

What

specs/analog/netlist_card.t27: one census block of the netlist drawn as a T27F widget card through the
visual factory (card, text, stack, badge). No hand-written SVG, no manual coordinates: the layout comes
from vcf_layout over a VfGraph, spacing from the resolved tokens.

  • node 0 card, 1 block name, 2 class and element-line caption, 3 pin row, 4 pin badge, 5 body row,
    then one badge per element kind present (inst, mos, mim, passive)
  • a block out of range or of class EMPTY is the refusal card (DANGER badge)
  • main: stdin block theme -> one PPM still

Evidence

  • 6 tests in the spec (graph validity, badges equal the census, card text, both themes fit the viewport,
    deterministic render, blocks differ)
  • render on the build host: 18 blocks x 2 themes = 36 stills, 36 of 36 distinct, every repeat render
    byte-identical (visual regression = 0 differing bytes)
  • lab row for the head commit is posted in a comment

Closes #13673
Refs #13650

🤖 Generated with Claude Code


Note

Low Risk
Additive spec and tests for visualization only; no changes to auth, data paths, or existing runtime behavior.

Overview
Adds specs/analog/netlist_card.t27, which describes how each netlist census block is shown as a T27F visual-factory card instead of hand-tuned SVG. The spec builds a VfGraph (card, name/class text, pin row, per-element-kind badges) from analog::netlist_meaning counts, uses vcf_layout / vc_render_s for layout and pixels, and returns a refusal card for unknown/empty blocks or invalid tokens. Wire widgets are explicitly refused because the census has no net geometry.

A small main accepts block theme on stdin and writes a fixed 375×300 P6 still. Six tests lock widget→factory mapping, graph validity, badge totals vs census, label text, viewport fit in both themes, and deterministic/distinguishable renders.

Reviewed by Cursor Bugbot for commit 832ed84. Bugbot is set up for automated code reviews on this repo. Configure here.

netlist_card.t27 states what a census block's card holds as a
visual-factory graph (card, heading, caption, pin badge, one badge per
element kind present). Layout, tokens, themes and pixels come from the
factory (vf_card_fit, vf_card_tok, vf_theme, vf_card); the spec holds
no node coordinate, colour or size. A wire is refused: the census has
counts, not nets.

Closes #13673
Refs #13650

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
@cursor

cursor Bot commented Nov 14, 2026

Copy link
Copy Markdown
Contributor

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: b9980cbe-83b5-4baf-a520-df2c70f0847e)

@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-11-14 06:40:53 UTC

Summary

Status Count
Total Open PRs 39
PRs with Failing Checks 34
PRs with All Checks Green 5
READY 0
FAILING 34
PENDING 0
NO CHECKS YET 0

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

Seal Status

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

Copy link
Copy Markdown
Collaborator Author

Lab row for head 832ed84 (t27os lab run 43567287597): specs/analog/netlist_card.t27|tests=6|pass=6|FAIL=0|vacuous=0|blocked=0. Render on the build host: 36 stills, 36 of 36 distinct, 36 of 36 repeat renders byte-identical.

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

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Netlist block as a T27F widget card (visual factory, no hand SVG)

1 participant