Skip to content

Preserve obstacle connectivity in mesh nodes#138

Merged
0hmX merged 14 commits into
mainfrom
agent/preserve-obstacle-connectivity
Jul 20, 2026
Merged

Preserve obstacle connectivity in mesh nodes#138
0hmX merged 14 commits into
mainfrom
agent/preserve-obstacle-connectivity

Conversation

@0hmX

@0hmX 0hmX commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • emit one obstacle-backed mesh node for each SRJ obstacle
  • copy the obstacle's connectedTo names directly to _connectedTo
  • remove connectedToByZ / _connectedToByZ
  • add a public-pipeline regression for colocated obstacles on different layers

Root cause

finalizeRects grouped obstacle output using only XY geometry. Distinct SRJ obstacles could therefore be merged when they shared bounds despite belonging to different layers or nets.

Impact

Free-space generation still uses the per-layer obstacle indexes. Final obstacle nodes now come directly from SRJ, preserving each obstacle's layer and connectivity identity without extra per-layer metadata.

Validation

  • bun test tests/obstacle-connectivity.test.ts
  • bun run build
  • bun run format:check

@vercel

vercel Bot commented Jul 19, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
rectdiff Ready Ready Preview, Comment Jul 20, 2026 3:26am

Request Review

@0hmX
0hmX marked this pull request as ready for review July 20, 2026 03:40
@0hmX
0hmX merged commit e460777 into main Jul 20, 2026
5 checks passed
@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