Skip to content

Add resolved component exclusions to PCB keepouts - #670

Merged
seveibar merged 1 commit into
mainfrom
agent/keepout-excluded-pcb-components
Aug 1, 2026
Merged

Add resolved component exclusions to PCB keepouts#670
seveibar merged 1 commit into
mainfrom
agent/keepout-excluded-pcb-components

Conversation

@seveibar

@seveibar seveibar commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add optional excluded_pcb_component_ids to rectangular and circular pcb_keepout elements
  • expose the field through the corresponding TypeScript interfaces
  • verify both the direct keepout schema and any_circuit_element preserve the IDs

Why

Keepout exemptions originate as TSX selectors, but downstream DRC operates on Circuit JSON without access to core's selector engine. Persisting resolved PCB component IDs gives @tscircuit/checks and other Circuit JSON consumers a portable, stable representation of the exemption while leaving autorouting behavior unchanged.

Follow-ups

Validation

  • bun test — 273 passed, 0 failed
  • bunx tsc --noEmit
  • bun run build
  • bun run lint:zod
  • bun run check-snake-case
  • Biome check on changed files

@seveibar
seveibar marked this pull request as ready for review August 1, 2026 02:45
@seveibar
seveibar merged commit bee9418 into main Aug 1, 2026
4 checks passed
@seveibar
seveibar deleted the agent/keepout-excluded-pcb-components branch August 1, 2026 02:45
@tscircuitbot

Copy link
Copy Markdown
Contributor

Thank you for your contribution! 🎉

PR Rating: ⭐⭐⭐
Impact: Major

Track your contributions and see the leaderboard at: tscircuit Contribution Tracker


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