Skip to content

Allow length-matched routes beside their connected terminal pads - #63

Open
seveibar wants to merge 2 commits into
mainfrom
fix/connected-terminal-clearance
Open

Allow length-matched routes beside their connected terminal pads#63
seveibar wants to merge 2 commits into
mainfrom
fix/connected-terminal-clearance

Conversation

@seveibar

@seveibar seveibar commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Pipeline9's SOIC8 differential-pair route has a valid terminal escape that passes close to its own pad. Post-processing applied the clearance reserved for unrelated copper to the next segment, rejected the completed meander, and returned the original pair with 4.395931 mm skew instead of the requested 0.05 mm.

For connected pads, validate the actual copper envelope without the extra unrelated-copper margin. Terminal exceptions stay limited to terminal segments; nonterminal copper still cannot overlap the pad, and unrelated-pad clearance is unchanged.

The regression reproduces the input emitted by tscircuit/core's differential-pair/routing-phase.test.tsx. It now produces 0.0000000004 mm skew and preserves both route endpoints. A separate geometry test verifies that pad overlap and unrelated-pad clearance violations are still rejected.

Validation: 83 tests passed, TypeScript and structural file checks passed, build passed. The emitted routing snapshot was rendered and inspected. This unblocks the Pipeline9 default migration in core.

@vercel

vercel Bot commented Sep 3, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
differential-pairs-solver Ready Ready Preview Sep 3, 2026 1:30am UTC

Request Review

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