Commit Graph
20 Commits
Author SHA1 Message Date
matthewtrahan a859524258 examples: compare.js passes the pad too, so it scores like probe.js; the pad's reach reads PROP.gap per call (a material profile sets it); README says the pad rule is centroid-only like the wall rule (review) 2026-10-06 22:11:42 -05:00
matthewtrahan 2cfbb0458c examples/held: a face at most 0.5 mm over the bed pad's top (or under its tack) is held -- the pad shims a cleat sole on studs as a wall would; probe.js reports low% (how much of the near-plate strip is held), probe_diff.js its total. Builds unchanged; same builds rescored: must% 64.4 -> 64.4 (Auto), 78.2 -> 78.2 (Full), Isaac up +8.8; near-plate strip held 86.6% -> 88.2% of 9175 mm2 2026-10-06 22:11:42 -05:00
matthewtrahan d89c2dc6f7 scoreboard: vs-base.sh BASE_MODE (Full vs Full shows what a fill change does, not what the mode adds) 2026-10-06 15:29:20 -05:00
matthewtrahan 7e2e97aa93 scoreboard: probe.js --angle (the Overhang slider) 2026-10-06 09:41:04 -05:00
matthewtrahan 553e070328 scoreboard: probe --dump keeps the fill walls apart and render_held.py draws them teal 2026-10-05 22:11:15 -05:00
matthewtrahan 3e5577a608 scoreboard: probe.js --mode and build seconds, probe_diff totals walls/grams/seconds, vs-base.sh HEAD_MODE=full scores the working tree in Full coverage against base Auto 2026-10-05 22:11:15 -05:00
matthewtrahan 4616c4f7c1 fins/coverage: the must-hold rule (classify, reachOf) moves into web/, so the coming Full coverage fill pass aims at the scoreboard's number; held.js scores with it, output byte-identical; examples README drops local paths 2026-10-05 21:18:22 -05:00
matthewtrahan a3aae895e7 prototype: the ruler puts the engine's cached inside-grid back after scoring (the next pose's build reuses the topo); --web followed by another flag says it needs a path (review) 2026-10-05 20:49:03 -05:00
matthewtrahan b3a216ea2e prototype: a tiny hole needs air at its plan centre under the apex (a flat collar round a post read as one: the probes started inside the stem; the pocket-tactics mini's leg tips); the ruler drops the other engine's cached inside-grid; --web without a path says so; probe_diff fails a case only on >2 points AND >=1 mm2 lost; KEEP is created; baseline now 64.4% of 283,431 mm2 (review) 2026-10-05 20:49:03 -05:00
matthewtrahan 3c78cb7292 prototype: examples README -- the must% policy column and its two exempt classes, the scoreboard commands, the DRO housing in reports/, and the 2026-10-05 baseline: 64.8% of 281,534 mm2 must-hold area held on main 7ef4cfa 2026-10-05 20:49:03 -05:00
matthewtrahan 9b6a4480ed prototype: coverage scoreboard -- vs-base.sh probes origin/main and the working tree on reports/ + real/ (one process at a time, ~2 min), probe_diff.js compares must% per case and area-weighted, exit 1 on a case losing more than 2 points 2026-10-05 20:49:03 -05:00
matthewtrahan 9f56cf827d prototype: probe scores must% -- every overhang face but tiny holes' ceilings (a horizontal bore or slot up to ~6 mm: cylinder or flat roof, walled equally both sides, floored within the diameter) and the strip under the squat floor, reported apart; --web builds with another checkout's engine, --json writes the rows; pictures colour the two exempt classes 2026-10-05 20:49:03 -05:00
matthewtrahan 889009574c prototype: compare.js returns heldFrac again (the shared held.js left it reading deleted locals); README says compare.js's held numbers changed too, and the proxy note sits with held% (review) 2026-10-03 21:08:00 -05:00
matthewtrahan 10a9f36f4d prototype: coverage probe counts EVERY overhang face (held.js, shared with compare.js) and reports how much sits under the 12 mm2 floor; --dir/--poses/--dump + render_held.py pictures; reports/ (git-ignored) holds the user-reported parts; baseline logged 2026-10-03 21:08:00 -05:00
matthewtrahan b6bf589af7 prototype: drop the generated example models -- probe runs on real/; bowl/dome/torus become raster test fixtures 2026-09-28 08:14:34 -05:00
matthewtrahan abca1dbdd4 tests: raster:false test asserts something real; grip/wedge test adds X45 2026-09-27 21:43:50 -05:00
matthewtrahan d325c6eefe prototype: compare.js + render.py -- one model, raster off vs on, as a picture 2026-09-27 21:43:50 -05:00
matthewtrahan 65b01e0e77 prototype: commit the example STLs; every example is one piece
*.stl is git-ignored repo-wide, so models/ never made it into the previous
commits. Also three generated parts had pieces that didn't touch the rest
(the new floating-piece check caught them): the figure's sword, the dome's
cap (tangent to its post) and the cape. gen.py now asserts each model is
one piece.
2026-09-27 14:03:51 -05:00
matthewtrahan 63775e5ba4 prototype: fetch real curved, mini and tall examples from Thingi10K
19 Thingiverse files picked by eye (whole, upright objects), written to a
git-ignored real/ with a CREDITS.md, since each keeps its own license.
Miniatures are also written at 32 mm. probe.js --real scores them.
2026-09-27 14:03:51 -05:00
matthewtrahan c9b3da70f2 prototype: example models + area-coverage probe for curved, mini and tall parts
The stress set calls a case OK once any wall is placed. These 12 shapes
(tall/high-ceiling, curved, ~30 mm miniatures) are scored by overhang AREA
held instead, plus bed-to-part stilt height for the branching work (#8).
2026-09-27 14:03:51 -05:00