mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-09-30 03:01:21 +02:00
Assigning a new filament to the external spool (e.g. generic ABS over generic TPU) left the previous inventory spool assigned. The reconciliation that unlinks a stale external-spool assignment lives in on_ams_change, but that callback only fired on regular AMS-unit changes: its change-hash never included the external spool (vt_tray/vir_slot), and the external-spool data is stored after the AMS handler runs. Detect external-spool identity changes (type, colour, tag, or reset to empty) and re-fire on_ams_change so the stale assignment is unlinked. The fill percentage (remain) is excluded from the fingerprint so a running print doesn't trigger it on every push.