Backend for tracking print jobs from Elegoo/Orca Slicer:
- PrintJob model: tracks pending/completed/cancelled jobs
- API endpoints: create, list, complete, cancel jobs
- needs_weighing flag on Spool: for cancelled print recalibration
- Database migration for new table and column
Workflow:
1. Slicer post-processing script creates pending job
2. User completes job → auto-deducts filament
3. User cancels job → flags spool for manual weigh-in
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>