Skip to content

Preserve target obstacle regions when loading hypergraphs#112

Closed
ShiboSoftwareDev wants to merge 3 commits into
tscircuit:mainfrom
ShiboSoftwareDev:main
Closed

Preserve target obstacle regions when loading hypergraphs#112
ShiboSoftwareDev wants to merge 3 commits into
tscircuit:mainfrom
ShiboSoftwareDev:main

Conversation

@ShiboSoftwareDev
Copy link
Copy Markdown
Contributor

@ShiboSoftwareDev ShiboSoftwareDev commented Jun 3, 2026

Fixes srj18 sample004 static reachability failures by keeping _containsTarget regions in the loaded
topology even when they are also marked _containsObstacle and lack a serialized net id. Adds a
synthetic loader regression plus a real srj18 sample004 static reachability regression.

@ShiboSoftwareDev
Copy link
Copy Markdown
Contributor Author

/benchmark --dataset 18

@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 3, 2026

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

Project Deployment Actions Updated (UTC)
tiny-hypergraph Ready Ready Preview, Comment Jun 3, 2026 8:41am

Request Review

@tscircuitbot
Copy link
Copy Markdown

Benchmark This PR

Run benchmarks by commenting on this PR:

/benchmark [benchmark.sh args...]
/benchmark --dataset <hg07|srj18> --limit <n> --solver <core|poly> --families <default|default+deep|all> --concurrency <n|auto>

Everything after /benchmark is forwarded directly to ./benchmark.sh.
The result comment shows the matching dataset from the latest stored main-branch benchmark artifact beside the PR run; main is not rerun for each PR benchmark request.

Examples:

  • /benchmark -> hg07, all samples, core solver
  • /benchmark --dataset srj18 --limit 20 -> first 20 srj18 samples
  • /benchmark --dataset srj18 --concurrency auto -> srj18 samples with runner CPU-count concurrency
  • /benchmark --sample sample002 -> one hg07 sample
  • /benchmark --limit 20 --solver poly -> first 20 hg07 samples with the poly solver
  • /benchmark --limit 40 --families default+deep -> first 40 hg07 samples with deeper candidate families

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

@tscircuitbot
Copy link
Copy Markdown

tscircuitbot commented Jun 3, 2026

Tiny Hypergraph Benchmark Results

Run Dataset Solver Families Success P50 P95
Main srj18 core default 31.3% 2.049s 6.221s
PR srj18 core default 43.8% 2.302s 10.040s
Main Branch Details
Metric Value
Dataset srj18
Solver core
Families default
Samples 16
Success rate 31.3%
Improved rate 60.0%
Zero final max region cost rate 0.0%
Avg baseline max region cost 0.565
Avg final max region cost 0.499
Avg max region delta 0.066
Avg candidate count 5.200
Avg duration 2.160s
P50 duration 2.049s
P95 duration 6.221s
Sample Status Baseline Final Delta Attempts Duration Error
sample001 success 0.670 0.579 0.090 4 2.103s
sample002 success 0.391 0.358 0.033 6 1.232s
sample003 success 0.429 0.429 0.000 5 0.671s
sample004 failed n/a n/a n/a 0 0.029s Error: Static reachability precheck failed: 2 route(s) have no legal path under the current reservation and start-reg...
sample005 success 0.423 0.423 0.000 7 0.864s
sample006 failed n/a n/a n/a 0 0.199s Error: Static reachability precheck failed: 9 route(s) have no legal path under the current reservation and start-reg...
sample007 failed n/a n/a n/a 0 6.221s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample008 failed n/a n/a n/a 0 2.049s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample009 failed n/a n/a n/a 0 0.193s Error: Static reachability precheck failed: 2 route(s) have no legal path under the current reservation and start-reg...
sample010 failed n/a n/a n/a 0 3.195s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample011 failed n/a n/a n/a 0 3.817s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample012 failed n/a n/a n/a 0 5.315s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample013 failed n/a n/a n/a 0 0.215s Error: Static reachability precheck failed: 11 route(s) have no legal path under the current reservation and start-re...
sample014 failed n/a n/a n/a 0 2.643s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample015 failed n/a n/a n/a 0 3.404s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample016 success 0.912 0.707 0.205 4 2.413s
PR Details
Metric Value
Dataset srj18
Solver core
Families default
Samples 16
Success rate 43.8%
Improved rate 14.3%
Zero final max region cost rate 0.0%
Avg baseline max region cost 1.000
Avg final max region cost 0.983
Avg max region delta 0.017
Avg candidate count 6.000
Avg duration 2.930s
P50 duration 2.302s
P95 duration 10.040s
Sample Status Baseline Final Delta Attempts Duration Error
sample001 failed n/a n/a n/a 0 2.302s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample002 success 0.357 0.241 0.116 6 2.312s
sample003 success 0.691 0.691 0.000 7 1.444s
sample004 success 1.054 1.054 0.000 9 0.671s
sample005 success 0.423 0.423 0.000 6 1.175s
sample006 failed n/a n/a n/a 0 0.312s Error: Static reachability precheck failed: 9 route(s) have no legal path under the current reservation and start-reg...
sample007 success 1.410 1.410 0.000 8 10.040s
sample008 failed n/a n/a n/a 0 2.131s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample009 failed n/a n/a n/a 0 2.306s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample010 failed n/a n/a n/a 0 3.490s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample011 success 1.535 1.535 0.000 5 2.941s
sample012 failed n/a n/a n/a 0 7.228s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample013 failed n/a n/a n/a 0 0.410s Error: Static reachability precheck failed: 11 route(s) have no legal path under the current reservation and start-re...
sample014 failed n/a n/a n/a 0 3.481s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample015 failed n/a n/a n/a 0 4.719s Error: TinyHyperGraphSectionPipelineSolver ran out of iterations
sample016 success 1.525 1.525 0.000 1 1.911s

Workflow: View run
Artifact: https://github.com/tscircuit/tiny-hypergraph/actions/runs/26872003470

@ShiboSoftwareDev ShiboSoftwareDev changed the title fix Preserve target obstacle regions when loading hypergraphs Jun 3, 2026
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