mirror of
https://github.com/Matysh/houseplan-card
synced 2026-09-30 11:49:16 +00:00
Validate / docs (push) Failing after 26s
Validate / process-workflow-sync (push) Successful in 35s
Validate / provenance (push) Successful in 46s
Validate / changes (push) Successful in 31s
Validate / process-gate (push) Failing after 45s
Validate / reuse (push) Successful in 46s
Validate / hacs (push) Failing after 16s
Validate / hassfest (push) Failing after 18s
Validate / frontend (push) Successful in 9m19s
Validate / backend (push) Failing after 9m31s
Validate / smoke (1) (push) Failing after 17m56s
Validate / smoke (3) (push) Failing after 17m52s
Validate / smoke (2) (push) Failing after 18m9s
Validate / smoke_done (push) Skipped
Validate / golden (push) Failing after 23m10s
Validate / performance_smoke (push) Failing after 51m44s
The continuity gate cannot see the defect from the owner's 66.json: masonry is continuous there and the record agrees with what is painted. The record itself is wrong — a partial resize left 43 steps of a former shared boundary as an exterior wall while it kept the 20 cm of that boundary, next to 30 cm exterior neighbours. Thickness followed the key, not the role of the edge. A width check would not have caught it, and I built one before throwing it away. It compares the painted body against the record, and here the two agree. On real plans it also fires where masonry is legitimately wider — columns, junction influence, abutting parallel walls: 76 to 82 steps measured against 4 expected, every case legal. A gate that needs explaining half the time is noise. The defect is expressible in a single state instead: one record whose span is partly shared and partly exterior. Nobody sets that on purpose. Roles come from the polygons — a stretch is shared when another room's edge covers it — so the check needs neither a build nor product code. Two traps found by measurement, both of which produced false positives. Count distinct rooms rather than edges: in a corner one room owns two edges, and counting edges called every exterior corner a shared boundary — 12 and 14 false positives. And do not sample the endpoints: an endpoint is a node, where a wall legitimately touches two rooms, and including them reported 95 per cent exterior on every wall abutting a shared one. Mutation coverage, stated honestly: the endpoint mutant is killed by the real-plan test. The rooms-versus-edges mutant survived — once endpoints are excluded, counting edges gives the same answer on real plans, so that choice is not load-bearing. I removed the mutant rather than ship a surviving one, and said so in the code. Issue: #287 User-Visible: no