A suite of headless checks plus a dev-only visual harness. test-builder3d compiles src/lib/builder3d with tsc and asserts four families: joinery and anti-z-fight, opening framing, no mid-air members, and a sloped-plane audit. Shape-specific scripts cover the hip eave, the mansard shell and the monitor shell. check-handle-affordances drives the harness in a headless browser. check-price-book-units guards the pricing path.
Also called: regression tests · headless checks · geometry audit · dev harness
- 1The pure engine has no three.js or React, so it compiles and runs with no browser.
- 2Audits sample rotated boxes at eight corners and twelve edge midpoints, because a rotated member's naive bounds lie.
- 3The sloped-plane audit exists because the pairwise axis-aligned one cannot catch a poke against a sloped roof plane.
- 4The harness route uses a .html path segment so the auth middleware skips it in dev, and it hard 404s in production builds.
- 5Harness query params drive reproducible states: preset, view, camera override, selection, walk mode, addition kind and wall, timber truss on/off, enclosed, porch slab, a deliberately invalid spec, and validation notices.
- 6The renderer publishes the live handle table so headless checks can assert what is on screen in each UI state, that hover produces the right label and cursor, and that clamp limits are announced before and during a pull.
Almost every geometry rule in the builder came from a builder sending in a screenshot of something wrong, and fixing a render defect is worthless if the next change quietly brings it back. A test suite locks each of those rules in — members inside stock lengths, nothing crossing the shell, tails terminated at the roof edge. The finished shell's planes are published in one place so the geometry and the check auditing it read the same numbers, and a control drawn without declaring what it does fails the build as a mistake by construction.
- Geometry regressions found by eye, late.
- Rules duplicated between the engine and its tests.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →