Skip to content

fix: preserve SMT pad solder mask settings during Circuit JSON import - #4973

Open
rushabhcodes wants to merge 2 commits into
repro/smtpad-mask-round-tripfrom
fix/smtpad-mask-round-trip
Open

rushabhcodes wants to merge 2 commits into
repro/smtpad-mask-round-tripfrom
fix/smtpad-mask-round-trip

Conversation

@rushabhcodes

@rushabhcodes rushabhcodes commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Saving and importing a board now preserves SMT pad solder-mask coverage and explicit margins. Core's ANT1 PCB antenna keeps its automatically generated 0.8 × 0.8 mm feed pad masked; Gerber export stays at zero openings after import.

Forward is_covered_with_solder_mask and soldermask_margin into the rectangle, circle, pill, rotated-pill and rotated-rectangle constructors. The polygon branch already preserves them. The production change is ten lines.

This PR builds on #4972 in native GitHub stack #4976 and changes only the importer and one antenna-board snapshot. The numeric regression still covers all six pad shapes on both layers, positive/zero/negative margins, omitted defaults, and saved-JSON immutability.

Validation: seven focused antenna/mask tests, tsc --noEmit, formatting, and git diff --check pass. Gerber validation confirms the antenna stays at zero openings; native rectangle/circle cases preserve coverage, signed/zero margins and aperture dimensions.

The single updated snapshot shows the imported antenna with its feed pad still masked. The faulty version is in #4972.

Imported antenna with preserved feed mask

Copilot AI balanced review requested due to automatic review settings October 27, 2026 20:16
@vercel

vercel Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
tscircuit-core-benchmarks Ready Ready Preview Oct 28, 2026 4:04am UTC

Request Review

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

This branch was successfully deployed

1 active deployment
Preview — 7638d13a Deployed Oct 28, 2026 by vercel[bot]
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.

2 participants