Skip to content

Align Repair03 DRC scoring with Core - #102

Open
Abse2001 wants to merge 3 commits into
tscircuit:fix/preserve-trace-layer-improvementsfrom
Abse2001:codex/interleave-via-pad-after-stall
Open

Align Repair03 DRC scoring with Core#102
Abse2001 wants to merge 3 commits into
tscircuit:fix/preserve-trace-layer-improvementsfrom
Abse2001:codex/interleave-via-pad-after-stall

Conversation

@Abse2001

@Abse2001 Abse2001 commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Summary

  • keep the complete via-pad phase active after legacy repair stalls
  • reject final repair candidates that introduce new reference-DRC identities without reducing the total
  • match Core via-spacing semantics by checking drill-hole edge spacing with the board's declared clearance

Why

Pipeline 9 must be repaired against the same physical rules that Core applies to the final board. Repair03 previously used via copper diameter and trace-to-pad clearance for via pairs, while Core uses hole diameter and the via-hole-edge clearance.

Validation

  • bun test v1.3.14 (0d9b296a) (92 tests, 604 assertions)
  • Checked 100 files in 40ms. No fixes applied.

Stacked on #97 because that branch owns the staged repair pipeline this change updates.

@tscircuitbot

Copy link
Copy Markdown

Benchmark This PR

Run benchmarks by commenting on this PR:

/benchmark [benchmark.sh args...]
/benchmark [scenario-limit|all] --dataset <drc14|srj18> --concurrency <n> --effort <n> --max-iterations <n>

Everything after /benchmark is forwarded directly to ./benchmark.sh.

Examples:

  • /benchmark -> run default SRJ18 benchmark settings
  • /benchmark 10 -> run first 10 SRJ18 samples
  • /benchmark --dataset srj18 -> run all SRJ18 samples
  • /benchmark 1 --dataset srj18 -> run the first SRJ18 sample
  • /benchmark --dataset drc14 -> run all DRC14 samples
  • /benchmark all --concurrency 4 -> run all SRJ18 samples with 4 workers
  • /benchmark --scenario-limit all --effort 2 -> run all samples with effort 2
  • /benchmark --scenario-limit 20 --max-iterations 100 -> run 20 samples with a max iteration override

Any PR whose title contains [BENCHMARK TEST] will automatically run the benchmark workflow on PR updates.

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