Skip to content

Infer fanout plane drops from copper pours - #2929

Merged
seveibar merged 3 commits into
mainfrom
agent/bus-plane-termination
Jul 30, 2026
Merged

Infer fanout plane drops from copper pours#2929
seveibar merged 3 commits into
mainfrom
agent/bus-plane-termination

Conversation

@seveibar

@seveibar seveibar commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • derive fanout plane drops from an explicit fanoutPourNetMap
  • infer the same layer-to-net mapping from <copperpour> components in the current or enclosing subcircuit
  • synthesize the fanout solver's plane buses internally for source-only traces
  • preserve each supply drop as an independent connection instead of collapsing same-net pads into one route
  • use source-trace names for optional per-drop fanout directions
  • pass fanoutRoutingLayers through as the solver's allowed signal escape layers

Why

Plane termination belongs to the board's copper intent. Users should be able to
write a normal source-only trace to net.GND or net.VCC and have fanout drop
it to the matching pour layer without declaring a singleton
BusFanoutTermination.

If a net is poured on multiple layers, core reports the ambiguity and asks for
an explicit fanoutPourNetMap.

Dependency

Main branch sync

Validation

  • focused fanout and formerly failing regression tests — 7 passed, 0 failed
  • full CI shard 3 — 311 passed, 0 failed
  • full CI shard 4 — 305 passed, 0 failed
  • explicit map and copper-pour inference are both covered
  • bunx tsc --noEmit
  • bun run build

@vercel

vercel Bot commented Jul 30, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
tscircuit-core-benchmarks Ready Ready Preview Jul 30, 2026 8:59pm

Request Review

@seveibar
seveibar force-pushed the agent/bus-plane-termination branch from d4a569e to fd8e24c Compare July 30, 2026 20:59
@seveibar
seveibar marked this pull request as ready for review July 30, 2026 21:25
@seveibar
seveibar merged commit 21cdd55 into main Jul 30, 2026
11 checks passed
@seveibar
seveibar deleted the agent/bus-plane-termination branch July 30, 2026 21:26
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.

1 participant