pub enum EventKind {
Show 22 variants
OrchestrationStarted {
name: String,
version: String,
input: String,
parent_instance: Option<String>,
parent_id: Option<u64>,
carry_forward_events: Option<Vec<(String, String)>>,
},
OrchestrationCompleted {
output: String,
},
OrchestrationFailed {
details: ErrorDetails,
},
ActivityScheduled {
name: String,
input: String,
session_id: Option<String>,
},
ActivityCompleted {
result: String,
},
ActivityFailed {
details: ErrorDetails,
},
ActivityCancelRequested {
reason: String,
},
TimerCreated {
fire_at_ms: u64,
},
TimerFired {
fire_at_ms: u64,
},
ExternalSubscribed {
name: String,
},
ExternalEvent {
name: String,
data: String,
},
OrchestrationChained {
name: String,
instance: String,
input: String,
},
SubOrchestrationScheduled {
name: String,
instance: String,
input: String,
},
SubOrchestrationCompleted {
result: String,
},
SubOrchestrationFailed {
details: ErrorDetails,
},
SubOrchestrationCancelRequested {
reason: String,
},
OrchestrationContinuedAsNew {
input: String,
},
OrchestrationCancelRequested {
reason: String,
},
ExternalSubscribedCancelled {
reason: String,
},
QueueSubscribed {
name: String,
},
QueueEventDelivered {
name: String,
data: String,
},
QueueSubscriptionCancelled {
reason: String,
},
}Expand description
Event-specific payloads.
Common fields have been extracted to the Event struct:
- event_id: moved to Event.event_id
- source_event_id: moved to Event.source_event_id (
Option<u64>) - execution_id: moved to Event.execution_id (was in 4 variants)
Variants§
OrchestrationStarted
Orchestration instance was created and started by name with input. Version is required; parent linkage is present when this is a child orchestration.
Fields
OrchestrationCompleted
Orchestration completed with a final result.
OrchestrationFailed
Orchestration failed with a final error.
Fields
details: ErrorDetailsActivityScheduled
Activity was scheduled.
ActivityCompleted
Activity completed successfully with a result.
ActivityFailed
Activity failed with error details.
Fields
details: ErrorDetailsActivityCancelRequested
Cancellation was requested for an activity (best-effort; completion may still arrive). Correlates to the ActivityScheduled event via Event.source_event_id.
TimerCreated
Timer was created and will logically fire at fire_at_ms.
TimerFired
Timer fired at logical time fire_at_ms.
ExternalSubscribed
Subscription to an external event by name was recorded.
ExternalEvent
An external event was raised. Matched by name (no source_event_id).
OrchestrationChained
Fire-and-forget orchestration scheduling (detached).
SubOrchestrationScheduled
Sub-orchestration was scheduled with deterministic child instance id.
SubOrchestrationCompleted
Sub-orchestration completed and returned a result to the parent.
SubOrchestrationFailed
Sub-orchestration failed and returned error details to the parent.
Fields
details: ErrorDetailsSubOrchestrationCancelRequested
Cancellation was requested for a sub-orchestration (best-effort; completion may still arrive). Correlates to the SubOrchestrationScheduled event via Event.source_event_id.
OrchestrationContinuedAsNew
Orchestration continued as new with fresh input (terminal for this execution).
OrchestrationCancelRequested
Cancellation has been requested for the orchestration (terminal will follow deterministically).
ExternalSubscribedCancelled
An external event subscription was cancelled (e.g., lost a select2 race). Correlates to the ExternalSubscribed event via Event.source_event_id. This breadcrumb ensures deterministic replay — cancelled subscriptions are skipped during index-based matching.
QueueSubscribed
Persistent subscription to an external event by name was recorded. Unlike positional ExternalSubscribed, persistent subscriptions use mailbox semantics: FIFO matching, no positional pairing.
QueueEventDelivered
A persistent external event was raised. Matched by name using FIFO mailbox semantics (not positional). Events stick around until consumed.
QueueSubscriptionCancelled
A persistent external event subscription was cancelled (e.g., lost a select2 race). Correlates to the QueueSubscribed event via Event.source_event_id. This breadcrumb ensures correct CAN carry-forward — cancelled subscriptions are not counted as having consumed an arrival.