mirror of
https://github.com/gittrahan/support-fins.git
synced 2026-10-21 19:32:48 -05:00
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