bug(compose): hallucinated cylinder + through-hole on flat strategy_l_bracket (coverage 0.756) #75
Labels
No labels
blocked:needs-decision
blocked:preflight
bug
in-progress
in-progress
lint-cleanup
needs-decompose
quickfix
triage-approved
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/pc2cad#75
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The compose engine adds features to the reconstruction that are
not present in the input pointcloud: a vertical cylindrical boss
on the base plate and a circular through-hole — neither exists in
the scan.
Coverage: 0.756 at 1mm tolerance (target ≥0.80).
Reproduction
Input (strategy_l_bracket)
Flat L-bracket: 100×10×50 horizontal base + 100×100×50 vertical wall
joined at 90°. 5000 surface points. No cylindrical boss, no hole.
Expected
Reconstruction captures the L-profile (vertical wall + horizontal base)
faithfully, with no features that aren't in the input.
Actual
Output includes a vertical cylindrical boss on the base plate and a
circular through-hole in the base. Neither feature exists in the
pointcloud. Coverage 0.756 < 0.80 spec floor.
Side-by-side:
docs/visual-bug-evidence-2026-09-18/strategy_l_bracket_side_by_side.pngRelationship to other issues
engine path, same shape class. Both issues stem from the compose
engine mis-classifying or hallucinating features.
closure via
d43b5abe34) regressed in the post-#70 sweep.Acceptance
samples/strategy_l_bracket.plyreconstruction matches the inputgeometry without adding features;
render_comparereports coverage≥0.85 at 1mm tolerance.
Refs: visual-regression sweep 2026-09-18, post-#70 close-out sweep.