Default to Pipeline9 and keep footprint copper fixed - #3608
Draft
seveibar wants to merge 4 commits into
Draft
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
This PR has been automatically marked as stale because it has had no recent activity. It will be closed if no further activity occurs. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Use Pipeline9 for the implicit local autorouter,
autorouter="default", andautorouterVersion="latest". Explicitbeta_pipeline7remains available. Raise the capacity-autorouter development dependency to 0.0.869, which includes the Pipeline9 DRC performance fix.The migration exposed a core integration bug: footprint copper was represented both as fixed obstacles and as preloaded traces. Exclude component-owned copper without a source trace from the preloaded list, while retaining its obstacles and original Circuit JSON. This fixes the generated antenna's routing failure and restores the solder-jumper fixture from 4 vias to Pipeline7's 2. Regression checks protect the copper geometry, completed trace count, via budget, and default/version selection.
Draft: an upstream solver release and remaining quality regressions need review before enabling this default. The package dependency is still published 0.0.869. The updated snapshots and assertions require a release containing tscircuit/tscircuit-autorouter#2359; local validation uses its rebuilt bundle.
The SOT23 power-rail snapshot exposed a real simplification defect. Preloaded route roots can be net keys, while
connMap.areIdsConnected()expects member IDs. The upstream fix resolves root-net keys through their existing members in the sharedconnMap, preserving pad handling without copying or modifying connectivity. The upstream fix reduces the ground route from 50 to 11 emitted points, total route points from 190 to 112, and vias from 9 to 8. Same-layer crossings in the original snapshot were same-net; different-net crossings were on opposite layers. The revised fixture protects both the via budget and route complexity, with its trace/pad-clearance checks unchanged.The simplification improvement is restricted to two-layer boards. Multilayer via checks in the autorouter currently cover endpoint layers, while core emits through-hole vias on every layer. Applying the shortcut to the four-layer BGA fixture exposed contacts and increased vias. Its current routing is preserved, with added assertions for at most 6 vias and zero trace/via-clearance errors.
The differential-pair fixture exposed a validator defect in length-matching-solver, fixed in tscircuit/length-matching-solver#63 and integrated in autorouter #2359. Core's pair skew drops from 4.395931 mm to approximately 0.0000000004 mm, within the 0.05 mm requirement.
Reviewed the original 32 changed PCB/phase snapshots, then rendered and reviewed all 14 snapshots updated by the simplification fix. Current emitted via counts are:
The simplification fix reduces Arduino lower-middle rerouting from 117 to 114 vias. The shared-
connMaprevision preserves all records in the 27 captured core outputs, including route geometry, vias, and errors. One capture differs only in top-level record order. The large Arduino via duplication seen in earlier migration PRs is already addressed on main. Remaining parity gaps are real routing changes: the two-fanout fixture retains two new trace-clearance diagnostics (0.092/0.093 mm gaps), and some imported-board fixtures retain or gain diagnostics relative to Pipeline7. The BGA handoff removes its previous trace error but uses four extra vias.The existing QFP topology fix in tscircuit/tscircuit-autorouter#2337 was also tested against core and restores 0 vias and 0 trace errors. That separate trial is not included in these snapshots.
Validation uses Bun 1.4.0, matching core CI. 35 focused routing/default-selection tests across 33 files passed, plus TypeScript and build, against the locally rebuilt #2359 bundle without the QFP trial. Autorouter #2359 passes 31 focused tests across 27 files. The SOT23 and four-layer BGA snapshots were also rerun without updating snapshots. A prior single-process full-suite diagnostic stalled in the large AM62L fixture and was stopped; this is not a full-suite pass. Full CI and a dependency release remain required before merging.