Skip to content

docs: rename pcbkeepout → keepout (matches actual core element name) - #23

Open
gsdali wants to merge 1 commit into
tscircuit:mainfrom
gsdali:fix-skill-docs-sync-with-runtime
Open

docs: rename pcbkeepout → keepout (matches actual core element name)#23
gsdali wants to merge 1 commit into
tscircuit:mainfrom
gsdali:fix-skill-docs-sync-with-runtime

Conversation

@gsdali

@gsdali gsdali commented May 6, 2026

Copy link
Copy Markdown

Summary

The element doc was filed at elements/pcbkeepout.md with the example showing <pcbkeepout shape="rect" .../> — but @tscircuit/core's element catalogue registers this component as Keepout, exposed via JSX as <keepout>. Trying to use <pcbkeepout> in actual circuit code fails the build:

error: Unsupported component type "pcbkeepout". No element with this name
is registered in the @tscircuit/core catalogue.

This is a pure docs mismatch — the runtime element exists and works correctly under the name <keepout> (verified with a 5-line repro that produces a pcb_keepout record in circuit.json).

Changes

  • Rename elements/pcbkeepout.mdelements/keepout.md
  • Update the example tag <pcbkeepout ...><keepout ...> in that file
  • Update SKILL.md element catalog: <pcbkeepout /><keepout />, repositioned alphabetically (between <jumper> and <led>)
  • Add note in the keepout doc pointing at <copperpour outline=...> as the alternative for "exclude pour fill from a region"
  • Document the outline prop on <copperpour> with a worked example (antenna keep-out polygon) — same use case, different mechanism

Test plan

  • <keepout shape="rect" pcbX={0} pcbY={0} width="6mm" height="4mm" /> builds successfully and produces a pcb_keepout record in circuit.json
  • No mention of pcbkeepout remains in the skill repo: grep -r pcbkeepout . returns nothing
  • SKILL.md element list is alphabetically sorted

Why

Hit while trying to add an antenna keep-out for an InsightSiP ISP3080-UX module. Followed the doc, used <pcbkeepout>, build crashed. Wasted ~10 minutes diagnosing before grepping register-catalogue.ts to find the actual export name. Renaming the doc + example will save the next person that time.

The PcbKeepoutProps type name in @tscircuit/props is unchanged — only the JSX tag and skill doc are affected.

🤖 Generated with Claude Code

The element doc was filed under <pcbkeepout /> with the example
showing <pcbkeepout shape="rect" .../> — but @tscircuit/core's
element catalogue registers this component as Keepout, exposed via
JSX as <keepout>. Trying to use <pcbkeepout> in actual circuit code
fails the build with "Unsupported component type 'pcbkeepout'".

Rename the doc and example to match the working JSX tag <keepout>.
The PcbKeepoutProps type name in @tscircuit/props is unchanged
(still PcbKeepoutProps); only the doc filename and the example tag
need fixing.

Also update the SKILL.md element catalog to point at the new path
and re-sort it alphabetically.

While here, document the <copperpour> outline prop with a worked
example showing how to define an antenna keep-out by constraining
the pour to a polygon. <keepout> and <copperpour outline=...> are
the two canonical ways to exclude a region from copper fill; both
should be discoverable from the docs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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