Sync 60 public-facing changes
- fix(export): fence the devcontainer's AI anecdote instead of shipping it - fix(jobs): record the safety gates a history re-print bypasses - fix(queue): validate queued AMS mappings the way dispatched ones are - fix(jobs): re-print a history job with the options it was started with - feat(library): import models from a URL, MakerWorld through the connected Bambu account - feat(queue): have Check report a low slot instead of staying silent about it - refactor(editor): make the preview's floating control insets testable - fix(editor): keep the G-code layer column clear of the dialog close button - fix(editor): fall back at once when a mesh worker dies before reporting ready - fix(web): stop a failed WS attach freezing a tab's cache invalidation - fix(printers): stop the API refusing prints the dialog approved - fix(queue): stop the low-filament override being granted by omission - fix(printers): stop an unreadable AMS bitmap emptying every loaded slot - docs(printers): record what the AMS tray `state` field means, and why we ignore it - test(printers): replay a real AMS spool swap, and correct what it disproves - docs(web): correct claims the cache work stated without support - fix(printers): read each AMS family's own exist-bit band, and guard on AMS data - fix(printers): stop an empty external spool advertising the spool that left it - fix(web): refresh the caches a long-lived surface leaves frozen - fix(maintenance): refresh due dates as prints finish, not only on a write - fix(filament): stop the spool sync losing or inventing slot associations - fix(printers): clear an AMS slot the printer reports as empty - fix(filament): keep loaded-spool data live outside the Filament page - chore: ignore bridge runtime state written under apps/data - fix(web): load small in-dialog thumbnails eagerly - fix(model-studio): stop the preview sliders and zoom fighting the viewport - fix(model-studio): make the mesh-parse pool prove it is running - fix(api): send HSTS only in production - fix(web): anchor toasts to the top of the screen on phones - feat(printing): warn before a print runs its mapped slots dry - chore(devcontainer): mount the shared Claude rules read-write - docs(slicer): describe the public editor, and cover its untested seams - fix(editor): send a null slicer target rather than an empty string - fix(web): show toasts on the public tool shell - fix(slicing): report which preset a settings baseline was measured against - feat(editor): import STL, STEP, and 3MF in the public editor, off the main thread - refactor(slicer): share the 3MF geometry extraction and the STEP mesh fold - Fix zombie process issue - fix(api): record which safety gates a print dispatch bypassed - fix: correct stale contract docs and drop the unreachable calibration status - feat(slicing): edit printer presets, on a settings dialog shell all three kinds share - feat(printers): support the Bambu Filament Track Switch end to end - fix(bambu-cloud-sync): log the presets a sync pass leaves on hold - feat(slicing): sync slicing presets with a Bambu Lab account, both ways - refactor(web): extract the flushing-volumes dialog's decisions so they are testable - refactor(devcontainer): clean up commented extensions in vscode settings - feat(web): combine like job toasts into one expandable grouped toast - refactor(web): extract useDirectorySortState for persisted directory sorts - fix(web): pin the app to dark so a stored light mode cannot leak in - fix(web): make indeterminate progress bars actually animate - feat(platform): sort the self-hosted licenses list - chore(devcontainer): persist agent host state, and scrub it by token on export - feat(editor): edit a project's flushing volumes - feat(slicer): serve Studio's measured flush tables and its own computed matrix - feat(slicing): port BambuStudio's flush-volume calculation and project reader - feat(bridges): let operators clear a bridge's recorded crash history - fix(web): stop the section count badge nesting a div inside a paragraph - feat(plugins): track printer maintenance against Bambu's own schedules (#62) - style(web): loosen table density and give row ends breathing room - feat(cloud): track which plugins, features, and views workspaces use (#46) Source-Revision: 10bf466028fe23dabc650c3afc904fa3c72916a7
R
Ryan Ewen committed
f59dc3cc45dc354dc0e04d24f458ceea23418325
Parent: 0b79e7f