JobPauseForcedEvent
EventType: JOB_PAUSE_FORCEDDomain: production Broker subject: progress.notification.production
Administratively forces a running job into paused state. Unlike the voluntary JobPausedEvent, this event flags the job with forced after commit via BaseAdmin.post_processing(). Used by supervisors to halt work without operator consent.
Trigger
Triggered by: POST /event (universal event dispatcher)
Dispatched via POST /event in backend/api/endpoints/traceability.py with event_type: JOB_PAUSE_FORCED.
Preconditions
- Job exists with key
info.job_key - Job
stageisSTARTED
State Changes (Transaction)
Collections: Inherited from BaseProductionEvent.get_tx_collections()
Jobupdated:stage → PAUSED- Work session closed via
WorkSessionClosedEventchild event
Side Effects (post_processing)
Extends BaseAdmin.post_processing():
- Calls
update_work_order() - Sets
job.forced = event_keyto mark the forced intervention
InfoModel Fields
| Field | Type | Description |
|---|---|---|
job_key | str | ArangoDB key of the job to force-pause |
work_order_key | str | None | Work order key |
phase_key | str | None | Phase key |
Related Events
WorkSessionClosedEvent— spawned to close the active work session