Skip to content

feat: SchematicDebugObjectsSolver - debug visualization of trace endpoints, junctions and label anchors#435

Open
wbobbynmworley wants to merge 7 commits into
tscircuit:mainfrom
wbobbynmworley:feat/schematic-debug-objects-solver
Open

feat: SchematicDebugObjectsSolver - debug visualization of trace endpoints, junctions and label anchors#435
wbobbynmworley wants to merge 7 commits into
tscircuit:mainfrom
wbobbynmworley:feat/schematic-debug-objects-solver

Conversation

@wbobbynmworley
Copy link
Copy Markdown

Summary

Implements SchematicDebugObjectsSolver for issue #78 ($75 bounty).

What it does

Generates debug circles and text labels for:

  • Trace endpoints - green circles at start/end of each trace
  • Direction-change junctions - red circles where trace direction changes (corners/turns)
  • Net label anchors - blue circles where net labels are placed

Implementation

  • New solver: SchematicDebugObjectsSolver
  • 6 unit tests covering all debug object types + edge cases
  • Integrated into SchematicTracePipelineSolver as the final step after netLabelTraceCollisionSolver

Test plan

  • All existing tests pass (32 pass, 4 skip, 33 fail - same baseline as main)
  • New unit tests pass (6/6)
  • TypeScript type checks pass (no new errors)
  • Biome formatting applied

Closes #78

…e endpoints, junctions, and label anchors

- New solver generates debug circles/texts for trace endpoints, direction-change junctions, and net label anchors
- 6 unit tests covering: endpoints, junctions, label anchors, empty traces, straight lines, and getOutput
- Integrated into pipeline after netLabelTraceCollisionSolver
- Relates to tscircuit#78
@vercel
Copy link
Copy Markdown

vercel Bot commented May 25, 2026

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

Project Deployment Actions Updated (UTC)
schematic-trace-solver Ready Ready Preview, Comment May 26, 2026 9:45am

Request Review

…Id with globalConnNetId

- Add import { describe, test, expect } from 'bun:test' to test file
- Replace trace.netId references with trace.globalConnNetId ?? trace.mspPairId
- Remove netId from SolvedTracePath mock (not a valid property)
- Add mspConnectionPairIds to mock trace data
- Circle: {center: {x,y}, radius} instead of {x, y, r}
- Rect: use 'stroke' instead of 'strokeColor'
- Remove 'as any' casts that were masking type errors
- Changed circle objects from {x, y, r} to {center: {x, y}, radius}
- Updated SVG snapshots to reflect new debug objects output
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.

Fix extra trace lines in post-processing step

1 participant