Files
matthewtrahanandClaude Opus 4.8 349e872fbf plugin: fix Add a Fin scattering into disconnected boxes
Root cause: the hand-rolled placement centred the foot/tip/tines at y=0
while the main wall spanned y[0,length] (centre y=length/2), so every
attachment was flung ~half the fin length off the blade -- in-slicer this
read as scattered/floating boxes, not a fin. The old test never caught it
because it checked widths/heights but never whether the pieces touch.

Fix: build the whole fin in one flat corner-origin object space via a
vendored shapes.builder() (leotrax3d, MIT) -- the pattern the shipped
box_generator/tolerance_test use, which anchors all volumes to the first
and confirms corner-origin make_cube. The mock now models the real
semantics (other_volumes translate RELATIVE to the main mesh) and asserts
every piece OVERLAPS the wall -- the check that exposes the scatter.

run-tests.sh scan pass now recognises module files (no info) vs plugins.
In-slicer verify still required (can't run PrusaSlicer headless).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FpN4Ze2ERji8V8VUsB3GVX
2026-09-06 08:58:00 -05:00
..