Append-only fact about run lifecycle, node execution, channel updates, edge triggers, and interrupts.
Events are built at update barriers and persisted with committed transitions. The v0.1 event types are:
:run_initialized,:run_completed,:run_failed,:run_cancelled:checkpoint_committed(metadata-only durable checkpoint history):node_completed,:node_failed(one:node_failedper failed attempt):channel_updated(payload carries the new version or the writer node IDs depending on the write's origin, never the value):edge_triggered:interrupt_requested,:interrupt_resolved
Summary
Types
@type t() :: %Docket.Event{ channel_id: String.t() | nil, metadata: map(), node_id: String.t() | nil, payload: map(), run_id: String.t(), seq: pos_integer(), step: non_neg_integer(), task_id: String.t() | nil, timestamp: DateTime.t(), type: type() }
@type type() ::
:run_initialized
| :run_completed
| :run_failed
| :run_cancelled
| :checkpoint_committed
| :node_completed
| :node_failed
| :channel_updated
| :edge_triggered
| :interrupt_requested
| :interrupt_resolved