mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-05-09 05:35:30 +02:00
[GH-ISSUE #1188] [Bug]: Queue Scheduler does not respect material colour choices when sent through virtual printer. (force_color_match missing) #861
Labels
No labels
A1
automated
automated
bug
bug
Closed due to inactivity
contrib
dependencies
dependencies
duplicate
enhancement
feedback
hold
invalid
Notes
P1S
pull-request
security
security
ThumbsUp
user-report
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/bambuddy#861
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @EdwardChamberlain on GitHub (May 1, 2026).
Original GitHub issue: https://github.com/maziggy/bambuddy/issues/1188
Originally assigned to: @maziggy on GitHub.
Component
Bambuddy
Bug Description
Sending a job to bambuddy from orca to bambuddy through the virtual printer with setting:
Mode: Queue
Auto Despatch: True
Causes the printer to schedule the job automatically but it does not take into account material colour choices. E.g. sending a print job sliced with matte white PLA the printer assigns it to a printer without matte white loaded, and then starts the job using the next closest match, despite a printer with matte white being available.
The root cause is the virtual-printer queue mode bypassing the normal queue creation path.
The manual “add to queue” flow extracts filament requirements and can send filament_overrides with force_color_match. The virtual-printer flow directly creates a PrintQueueItem
github.com/maziggy/bambuddy@8dd4efa555/backend/app/services/virtual_printer/manager.py (L325-L326)It does not set:
The scheduler only enforces material/color matching when those fields exist. Without them, model-based assignment reaches the fallback and accepts the first available printer of the target model.
Expected Behavior
Queue should not automatically schedule jobs to different materials unless explicitly enabled.
Steps to Reproduce
Printer Model
P1S
Bambuddy Version
v0.2.3.2
SpoolBuddy Version
No response
Printer Firmware Version
No response
Installation Method
Docker
Operating System
Linux (Other)
Relevant Logs / Support Package
bambuddy-support-20260501-211600.zip
Screenshots
No response
Additional Context
A good fix is to add a queue-mode virtual-printer setting equivalent to the existing manual queue “force color match” option. When enabled, the virtual-printer upload path should parse the 3MF filament requirements and write filament_overrides entries with force_color_match: true for each used slot. It should also populate required_filament_types for model-based scheduling. The scheduler already supports these fields, so the change is mostly data plumbing plus UI/API migration work.
It might also be nice as an out of scope "nice to have" change to implement a status pill in the job queue to indicate that a job "Requires Colour Match" so the user can see from the queue which jobs are forcing colour match and the colours could also be used to help the user understand if there is a machine on network with the relevant colours loaded.
Happy to help with fix implementation if help is wanted.
Checklist
@maziggy commented on GitHub (May 2, 2026):
Available/Fixed in branch dev and available with the next release or daily build. Please let me know if it works for you.
If you find Bambuddy useful, please consider giving it a ⭐ on GitHub — it helps others discover the project!