Notification Events
Every notification carries an event and an event_level. Upload events are chosen once per channel. Task events are chosen per pipeline step and only fire for tasks in that step.
Upload events
| Event | Fires when |
|---|---|
UPLOAD_IN_REVIEW | The upload needs attention: at least one task is in review or failed, or an export was rejected and the upload moved back to review. |
UPLOAD_PROCESSED | Every task is finalized and the export succeeded. The upload is complete. |
UPLOAD_DUPLICATE_DETECTED | Duplicate filtering recognised the upload as a copy of an earlier one. Processing stopped. The payload names the earlier upload. |
UPLOAD_ALL_FILTERED | Every file in the upload was filtered out, so nothing is left to process. Fires in addition to UPLOAD_IN_REVIEW or UPLOAD_PROCESSED. |
Task events
| Event | Fires when |
|---|---|
TASK_IN_REVIEW | The task needs manual review, either because the step requires it or because processing hit a recoverable error (soft_fail_reason). |
TASK_COMPLETED | The task finished this step and its results moved on. |
TASK_FAILED | Processing failed permanently (failure_reason), or the file could not be parsed at all (status is UNPROCESSABLE). |
TASK_FILTERED | The filter model, or a reviewer who discarded with "filter this out", filtered the task out. |
TASK_UNLOCKED | A reviewer undid a filter or unlocked a completed task for editing. Earlier TASK_FILTERED or TASK_COMPLETED results no longer apply. |
TASK_DISCARDED | A reviewer discarded the task. The payload carries the discard reason in issue. |
TASK_REPORTED | A reviewer reported an issue on the task. The payload carries the report in issue. |
TASK_EXPORT_FAILED | The export connector rejected the task, or the export mail bounced. The upload moves back to review. |
How events relate
A few common sequences, for a project with one extraction step:
- Straight through:
TASK_COMPLETED→UPLOAD_PROCESSED. - Needs a reviewer:
TASK_IN_REVIEW→UPLOAD_IN_REVIEW→ after approvalTASK_COMPLETED→UPLOAD_PROCESSED. - Filtered out:
TASK_FILTERED→UPLOAD_ALL_FILTERED→UPLOAD_IN_REVIEW(kept for review) orUPLOAD_PROCESSED(finalized), depending on the project's filter settings. - Undo a filter:
TASK_UNLOCKED→ the task runs again and continues withTASK_IN_REVIEWorTASK_COMPLETED. - Discarded:
TASK_DISCARDED→UPLOAD_PROCESSEDonce the remaining tasks are done. - Duplicate:
UPLOAD_DUPLICATE_DETECTED, nothing else. - Export rejected:
TASK_EXPORT_FAILED→UPLOAD_IN_REVIEW. After the issue is fixed and the task is unlocked and re-approved, the normal sequence resumes.
Upload-level and task-level events are independent subscriptions: a channel that only ticks upload events never receives task events, and the other way round.