mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-09-30 19:21:33 +02:00
The Filament Mapping panel reported "(Ready)" with a green tick for a slot where the slice wanted dark red and the auto-matched tray held dark green. Manually picking that same tray reported the mismatch correctly, which is what made it obvious something was inconsistent. Auto-match ranks candidates by tray_info_idx first, and a uniquely-matching preset was accepted as definitive on the premise "same preset = same spool = same colour". The preset names the variant, not the spool: GFA00 is PLA Basic, GFA01 PLA Matte, GFA17 PLA Translucent, in every colour Bambu sells. The reporter's own bundle has eight GFA00 trays in eight colours. With one Matte spool loaded, every Matte requirement idx-matched it and the colour comparison was never reached - which is why this surfaced on PLA Matte and not on Basic, where several spools are usually loaded and the match falls through to the branch that does compare colours. The verdict now comes from the tray that was selected rather than from which rule selected it, and both branches share one comparison so they cannot drift apart again. Selection is unchanged - the right variant still wins per mismatch and the slot stays selected. A requirement with no colour at all is treated as satisfied rather than mismatched; 3MFs that omit it parse to "" and there is nothing to disagree with. That also affects the manual branch, which used to flag it. No dispatch change: _get_missing_force_color_slots already required an exact colour, so force colour match was gated correctly throughout.