mirror of
https://github.com/Klipper4FlashForge/firmware.git
synced 2026-10-22 05:12:16 -05:00
_current_tool_or_none() returns (tool, why) -- every call site unpacks it, except the one reapply_offsets_after_external_zero added: it bound the whole tuple to `tool`, so the `is None` guard never fired (no tool mounted is (None, why), a truthy tuple) and off_z[tool] died with "list indices must be integers or slices, not tuple", taking the printer to shutdown at the end of every TOOL_OFFSET_CALIBRATE. Unpack it, and treat -1 (nothing on the carriage) as nothing-to-reapply, same as the runout call site does. Also let a release tag carry the same-day suffix common.sh already documents (v20260825b-...): the installer never reads MOD_VER -- it compares the software component's own version, which stays at stock's -- so the letter exists only to keep the outer filenames distinct. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>