Events¶
Every event name the server publishes, grouped as the vocabulary
groups them, with the fields of the payload each one carries. A
? marks a field that is absent rather than null when it has no
value. These are the event: names on the SSE stream described in
Using the HTTP API.
Runs¶
run.created:workflow: str,title: str,position: intrun.started:task_id: int,node: strrun.updated:changed: RunChangesrun.reordered:position: int,previous: intrun.paused: no fieldsrun.resumed: no fieldsrun.cancelled:cancelled_tasks: list[int]run.deleted:workflow: str,title: strrun.completed:node: str,task_id: int,output: Any,terminal_tasks: list[int]run.failed:node: str,task_id: int,error: str,code?: Literal['join_incomplete'] | None
Tasks¶
task.enqueued:node: str,attempt: int,reason: Literal['start', 'transition', 'retry', 'rerun', 'move', 'manual_retry', 'set_status', 'join'],from_task?: int | None,payload_present: bool,branch: list[BranchFrame],arrivals?: list[int] | Nonejoin.arrived:join: str,fanout_task: int,index: int,count: int,arrived: int,late: booltask.started:node: str,attempt: inttask.done:node: str,attempt: int,transitions: list[str],terminal: booltask.failed:node: str,attempt: int,error: str,retryable: bool,will_retry: bool,retry_task_id?: int | Nonetask.dead_lettered:node: str,attempt: int,error: strtask.waiting:node: str,request_id: inttask.resumed:node: str,request_id: int,waited_s: floattask.cancelled:node: str,from: str,reason: Literal['cancel', 'move', 'delete', 'set_status']task.moved:node: str,to: str,new_task_id: inttask.status_set:node: str,from: str,to: strtask.stream:seq_from: int,seq_to: int
Submissions and requests¶
submission.accepted:node: str,submission_id: intsubmission.rejected:node: str,errors: list[ValidationError]submission.repair:node: str,turn: int,reason: Literal['nothing_submitted', 'rejected']request.opened:request_id: int,mode: str,kind: str,source: str,node: str,ordinal?: int | Nonerequest.answered:request_id: int,author: Literal['user', 'engine'],option_id?: str | None
Log and stats¶
log.appended:log_id: int,author: str,node: str,kind?: str | None,preview: stragent.stats:node: str,attempt: int,status: Literal['ok', 'failed'],reason?: Literal['refusal', 'cancelled', 'truncated', 'timeout', 'shutdown', 'transport', 'no_submission'] | None,model?: str | None,input_tokens?: int | None,output_tokens?: int | None,total_tokens?: int | None,tool_calls?: int | None,cost?: float | None,duration_s: float,session_id?: str | None,repair_turns?: int | None,denied_permissions?: int | None
Engine¶
engine.recovered:task_ids: list[int]engine.stopping:task_ids: list[int]
Workflows¶
workflow.registered:workflow: str,pool: str,target?: str | Noneworkflow.replaced:workflow: str,pool: str,target?: str | Noneworkflow.unregistered:workflow: str,task_ids: list[int]
Published but never stored¶
EPHEMERAL in athanore/events/names.py:
task.stream