Problem
An email from Frederik competes equally with a background autoresearch loop that's been running for 45+ minutes. Both slots can be filled with long low-priority work, and critical tasks wait in retry queue with no ETA.
No priority field exists in JobRequest. No preemption mechanism.
Fix
- Add
priority: high | normal | low field to JobRequest schema in listen server
- Email agent sets
priority: high for emails from frederik@tutoria.ac
- Scheduled background tasks (autoresearch, morning report) set
priority: low
- Worker processes high-priority jobs first when deciding which queued job to start next
- Stretch: if high-priority job arrives and both slots are low/normal, pause the lowest-priority job at next safe checkpoint (after YAML write)
Acceptance Criteria
Context
From Jensen limitation audit (2026-03-22). Workstream: WS-001.
Problem
An email from Frederik competes equally with a background autoresearch loop that's been running for 45+ minutes. Both slots can be filled with long low-priority work, and critical tasks wait in retry queue with no ETA.
No
priorityfield exists inJobRequest. No preemption mechanism.Fix
priority: high | normal | lowfield toJobRequestschema in listen serverpriority: highfor emails from frederik@tutoria.acpriority: lowAcceptance Criteria
priorityfield in JobRequest schemaContext
From Jensen limitation audit (2026-03-22). Workstream: WS-001.