Skip to content

Use isolated post-solve unravel step in Pipeline7 - #2126

Closed
seveibar wants to merge 4 commits into
agent/remove-trace-density-portfoliofrom
agent/use-isolated-unravel-step
Closed

Use isolated post-solve unravel step in Pipeline7#2126
seveibar wants to merge 4 commits into
agent/remove-trace-density-portfoliofrom
agent/use-isolated-unravel-step

Conversation

@seveibar

@seveibar seveibar commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Summary

  • pin Pipeline7 to the isolated post-solve unravel implementation from Add isolated post-solve unravel region optimizer tiny-hypergraph#169
  • use a Pipeline7-specific pathing class so Pipelines 4, 8, and 9 keep their existing solver and output
  • pass only preloaded/fixed route IDs into the Pipeline7 unravel stage
  • consume the completed optimizeRegionCosts solver for Pipeline7 output, visualization, and downstream routing
  • add one integration test proving Pipeline7 consumes the optimizer while the shared solver does not run it

This PR is stacked on #2125 so its diff and benchmark base contain no trace-density region-cost model or route-count-gated alternative pipeline. It contains no geometric-connectivity inference or simpleRouteJson plumbing changes.

Validation

  • all eight Bun Test CI shards pass on the final scoped head
  • bunx tsc --noEmit
  • bun run build
  • Pipeline7-only unravel integration test passes
  • focused Pipeline7 DRC tests pass
  • representative Pipeline4 and Pipeline9 visual tests retain their existing snapshots
  • git diff --check

Benchmark

/benchmark --dataset 18 --same-machine compared final head 56dfbe7 directly with the clean #2125 base 243c6de on one 8-vCPU runner (16 srj18 scenarios).

Pipeline7 metric Base Unravel Delta
Completion 81.3% 81.3% 0.0 pp
Relaxed DRC pass 43.8% 31.3% -12.5 pp
Total relaxed DRC errors 195 139 -28.7%
Via-related DRC errors 56 23 -58.9%
Mean DRC errors per completed sample 15.0 10.7 -28.7%
Median DRC errors per completed sample 0 1 +1
Timeouts 3 3 0
P50 time 141.6s 164.3s +16.0%
P80 time 350.9s 278.7s -20.6%
Average vias 210.15 204.85 -2.5%

Error counts improve on four samples, regress on three, and are unchanged on nine. The largest change is sample 2 improving from 49 errors to 3, but samples 3 and 5 each acquire one clearance error and change from DRC-passed to solved-with-DRC-fail. The isolated unravel step therefore reduces congestion-related DRC severity substantially, but does not yet improve the binary pass rate without the excluded region-cost-model changes.

@vercel

vercel Bot commented Aug 15, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
capacity-node-autorouter Ready Ready Preview Aug 15, 2026 8:25pm

Request Review

@tscircuitbot

Copy link
Copy Markdown
Contributor

Benchmark This PR

Run benchmarks by commenting on this PR:

/benchmark [benchmark.sh args...]
/benchmark-long [benchmark.sh args...]
/benchmark-all
/benchmark --same-machine
/benchmark-all --same-machine

Comment /benchmark to run the default dataset, or append any arguments accepted by ./benchmark.sh.
Comment /benchmark-long for an 8-vCPU run that defaults to 8 workers and has an eight-hour timeout.
Comment exactly /benchmark-all to start separate workflow runs and result comments for the default dataset plus srj18, srj19, srj20, srj21, and srj23.
Append --same-machine to /benchmark or /benchmark-all to compare current main and the PR head sequentially on the same 8-vCPU Blacksmith runner.

Everything after /benchmark or /benchmark-long is safely forwarded to ./benchmark.sh, except --profile-solvers, which enables profile comparison tables, and --same-machine, which enables the paired runner.
Examples: /benchmark --dataset 18 --sample-timeout 2000s, /benchmark --pipeline 7 --scenario-limit 20, /benchmark all 20 --concurrency 8, /benchmark --same-machine, /benchmark-all --same-machine, and /benchmark-long --dataset 18.

Use /update-snapshots (or /us) to run BUN_UPDATE_SNAPSHOTS=1 bun test --timeout 120_000 on the PR branch and auto-commit snapshot updates.
Use /usf to read recent failed test files, update and verify their exact CI test shards, and auto-commit only their snapshots. It uses the configured fast benchmark runner by default; use /usf --ubuntu-latest for GitHub-hosted x64 CI parity.

Any PR whose title contains [BENCHMARK TEST] will automatically run one default-dataset benchmark on PR updates; it does not post a PR result comment.

@seveibar

Copy link
Copy Markdown
Contributor Author

/benchmark --dataset 18 --same-machine

@tscircuitbot

tscircuitbot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Same Machine Benchmark Results

Both revisions ran sequentially in one Blacksmith job on blacksmith-01m03ds22gsdgyp33nha9j0w5c-8vcpu.

Dataset: srj18 · Scenarios: 16
Main: 243c6de · PR: 0b62ec0

Solver Metric Main PR Delta
Pipeline7 Completion 81.3% (🕒18.8%) 81.3% (🕒18.8%) 0.0 pp
Pipeline7 Relaxed DRC pass 43.8% (🕒18.8%) 31.3% (🕒18.8%) -12.5 pp
Pipeline7 Timeouts 3 3 0
Pipeline7 P50 time 142.3s 165.8s +16.5%
Pipeline7 P60 time 203.5s 222.3s +9.3%
Pipeline7 P70 time 240.1s 253.0s +5.4%
Pipeline7 P80 time 350.7s 278.8s -20.5%
Pipeline7 P90 time 360.0s 360.0s 0.0%
Pipeline7 P95 time 360.0s 360.0s 0.0%
Pipeline7 Average vias 210.15 204.85 -2.5%

Outcome changes: 0 improved, 2 regressed. Timing percentiles include solved and timed-out samples; negative timing deltas are faster.

Changed outcomes (2)
Solver Sample Main PR Main time PR time Delta
Pipeline7 3 DRC passed Solved (DRC failed) 40.9s 39.1s Regressed
Pipeline7 5 DRC passed Solved (DRC failed) 31.4s 36.1s Regressed

Workflow: View run
Artifact: Download raw reports

@seveibar

Copy link
Copy Markdown
Contributor Author

/usf --ubuntu-latest

@tscircuitbot

tscircuitbot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

📸 Update Snapshots (focused)

❌ Snapshot update failed. Please inspect workflow logs.

Focused test files:

  • tests/autorouting-dataset18-sample10-exact-drc-residue-visual.test.ts
  • tests/bugs/bugreport12-35ce1c.test.ts
  • tests/bugs/bugreport18-1b2d06.test.ts
  • tests/bugs/bugreport47-8ee80e-esp32-breakout.test.ts
  • tests/bugs/bugreport51-7db9f8.test.ts
  • tests/bugs/bugreport54-3a54af.test.ts
  • tests/bugs/bugreport58-b69d72.test.ts
  • tests/bugs/bugreport62-0f6ca4.test.ts
  • tests/bugs/bugreport63-274be2.test.ts
  • tests/bugs/bugreport66-e6c7e0.test.ts
  • tests/bugs/bugreport68-41562e.test.ts
  • tests/bugs/bugreport71-dd7d15.test.ts
  • tests/bugs/bugreport74-8499df.test.ts
  • tests/bugs/bugreport77-07f6a7.test.ts
  • tests/bugs/bugreport80-75ab58.test.ts
  • tests/bugs/bugreport84-726193.test.ts
  • tests/bugs/bugreport87-76a6de.test.ts
  • tests/bugs/bugreport88-9a86ed.test.ts
  • tests/bugs/bugreport89-f8bab9.test.ts
  • tests/bugs/bugreport90-6dc620.test.ts
  • ...and 7 more
    CI test shards: 1, 3, 4, 5, 6, 7, 8

Source failure run: https://github.com/tscircuit/tscircuit-autorouter/actions/runs/31905146649

Changed snapshots:

  • tests/__snapshots__/e2e3.snap.svg
  • tests/bugs/__snapshots__/bugreport18-1b2d06.snap.svg
  • tests/bugs/__snapshots__/bugreport54-3a54af-linux.snap.svg
  • tests/bugs/__snapshots__/bugreport58-b69d72-linux.snap.svg
  • tests/bugs/__snapshots__/bugreport62-0f6ca4.snap.svg
  • tests/bugs/__snapshots__/bugreport74-8499df.snap.svg
  • tests/bugs/__snapshots__/bugreport77-07f6a7.snap.svg
  • tests/bugs/__snapshots__/bugreport84-726193.snap.svg
  • tests/bugs/__snapshots__/bugreport88-9a86ed.snap.svg
  • tests/bugs/__snapshots__/bugreport90-6dc620.snap.svg

Environment: ubuntu-latest (X64), Bun 1.3.8

🔗 Workflow: View run

@seveibar

Copy link
Copy Markdown
Contributor Author

/benchmark --dataset 18 --same-machine

@tscircuitbot

tscircuitbot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Same Machine Benchmark Results

Both revisions ran sequentially in one Blacksmith job on blacksmith-01m03j7138yq2y71ngz3rn63gj-8vcpu.

Dataset: srj18 · Scenarios: 16
Main: 243c6de · PR: 56dfbe7

Solver Metric Main PR Delta
Pipeline7 Completion 81.3% (🕒18.8%) 81.3% (🕒18.8%) 0.0 pp
Pipeline7 Relaxed DRC pass 43.8% (🕒18.8%) 31.3% (🕒18.8%) -12.5 pp
Pipeline7 Timeouts 3 3 0
Pipeline7 P50 time 141.6s 164.3s +16.0%
Pipeline7 P60 time 192.1s 211.8s +10.2%
Pipeline7 P70 time 238.1s 252.6s +6.1%
Pipeline7 P80 time 350.9s 278.7s -20.6%
Pipeline7 P90 time 360.0s 360.0s 0.0%
Pipeline7 P95 time 360.0s 360.0s 0.0%
Pipeline7 Average vias 210.15 204.85 -2.5%

Outcome changes: 0 improved, 2 regressed. Timing percentiles include solved and timed-out samples; negative timing deltas are faster.

Changed outcomes (2)
Solver Sample Main PR Main time PR time Delta
Pipeline7 3 DRC passed Solved (DRC failed) 42.7s 39.5s Regressed
Pipeline7 5 DRC passed Solved (DRC failed) 32.3s 37.0s Regressed

Workflow: View run
Artifact: Download raw reports

@seveibar

Copy link
Copy Markdown
Contributor Author

/benchmark --same-machine --dataset 1

@tscircuitbot

tscircuitbot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Same Machine Benchmark Results

Both revisions ran sequentially in one Blacksmith job on blacksmith-01m03mfw03wpkvya3x1ps2vhe4-8vcpu.

Dataset: dataset01 · Scenarios: 85
Main: 243c6de · PR: 56dfbe7

Solver Metric Main PR Delta
Pipeline7 Completion 100.0% 100.0% 0.0 pp
Pipeline7 Relaxed DRC pass 97.6% 98.8% +1.2 pp
Pipeline7 Timeouts 0 0 0
Pipeline7 P50 time 3.0s 3.2s +7.3%
Pipeline7 P60 time 4.3s 4.8s +12.9%
Pipeline7 P70 time 5.3s 5.9s +10.5%
Pipeline7 P80 time 7.8s 8.3s +5.7%
Pipeline7 P90 time 10.5s 10.7s +2.1%
Pipeline7 P95 time 11.9s 13.6s +13.7%
Pipeline7 Average vias 37.92 37.69 -0.6%

Outcome changes: 1 improved, 0 regressed. Timing percentiles include solved and timed-out samples; negative timing deltas are faster.

Changed outcomes (1)
Solver Sample Main PR Main time PR time Delta
Pipeline7 58 Solved (DRC failed) DRC passed 18.7s 15.3s Improved

Workflow: View run
Artifact: Download raw reports

@github-actions

Copy link
Copy Markdown

This PR has been automatically marked as stale because it has had no recent activity. It will be closed if no further activity occurs.

@github-actions

Copy link
Copy Markdown

This PR was closed because it has been inactive for 1 day since being marked as stale.

@github-actions github-actions Bot closed this Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants