pub enum Event {
Show 30 variants
WorkflowCreated {
workflow: String,
version: String,
definition_hash: String,
input: Value,
parent: Option<ParentRef>,
schedule_id: Option<String>,
run: Option<u32>,
},
StepFanOut {
step: String,
items: Vec<Value>,
},
WorkflowStarted {},
StepScheduled {
step: String,
attempt: u32,
input: Value,
idempotency_key: String,
redelivery: bool,
},
StepSkipped {
step: String,
reason: String,
},
StepDispatched {
step: String,
attempt: u32,
token: String,
worker_id: String,
worker_session: String,
deadline_ms: Option<u64>,
},
StepSucceeded {
step: String,
attempt: u32,
output: Value,
},
StepAttemptFailed {
step: String,
attempt: u32,
error: TaskError,
},
StepAttemptUncertain {
step: String,
attempt: u32,
reason: String,
},
RetryScheduled {
step: String,
next_attempt: u32,
delay_ms: u64,
fire_at_ms: u64,
},
StepFailed {
step: String,
error: TaskError,
},
StepCancelled {
step: String,
},
TimerStarted {
step: String,
fire_at_ms: u64,
},
TimerFired {
step: String,
},
StaleResultIgnored {
step: String,
token: String,
outcome: String,
},
CancelRequested {
reason: String,
},
WorkflowTimeoutReached {},
CompensationStarted {
reason: String,
steps: Vec<String>,
},
CompensationCompleted {},
CompensationFailed {
step: String,
error: TaskError,
},
WorkflowCompleted {
output: Value,
},
WorkflowFailed {
error: TaskError,
compensation: CompensationOutcome,
},
WorkflowCancelled {
compensation: CompensationOutcome,
},
WorkflowTimedOut {
compensation: CompensationOutcome,
},
SignalReceived {
name: String,
payload: Value,
},
SignalAwaitStarted {
step: String,
signal: String,
deadline_ms: Option<u64>,
},
LimitExceeded {
limit: String,
message: String,
},
HandlersStarted {
kind: String,
compensation: CompensationOutcome,
},
SignalDelivered {
step: String,
signal_seq: u64,
},
WorkflowContinuedAsNew {
next_run: u32,
input: Value,
},
}Variants§
WorkflowCreated
Fields
StepFanOut
A for step expanded into one unit per element (step[0], step[1], …).
WorkflowStarted
StepScheduled
The unit is ready and queued for a worker. input is the fully evaluated payload.
StepSkipped
StepDispatched
Fields
StepSucceeded
StepAttemptFailed
StepAttemptUncertain
The outcome of a dispatched attempt is unknown (worker lost, runtime restarted). The same attempt is redelivered with the same idempotency key.
RetryScheduled
StepFailed
StepCancelled
A queued unit was withdrawn because the workflow is being aborted.
TimerStarted
TimerFired
StaleResultIgnored
A result arrived for an attempt that no longer matters (duplicate or late).
CancelRequested
WorkflowTimeoutReached
CompensationStarted
CompensationCompleted
CompensationFailed
WorkflowCompleted
WorkflowFailed
WorkflowCancelled
Fields
compensation: CompensationOutcomeWorkflowTimedOut
Fields
compensation: CompensationOutcomeSignalReceived
A typed signal sent to the execution (POST .../signals/<name>).
Buffered until an await step takes it.
SignalAwaitStarted
An await step started waiting. deadline_ms comes from its timeout.
LimitExceeded
A server resource limit was reached; the execution is failed with
LIMIT_EXCEEDED (compensation and on failure still run).
HandlersStarted
Compensation (if any) is done and the on <kind> handler steps start.
compensation is the outcome recorded on the terminal event afterwards.
SignalDelivered
An await step took the signal received at history sequence signal_seq;
its payload is the step output.
WorkflowContinuedAsNew
continue_as_new: this run ended and run next_run of the same
execution starts with input and an empty history. The runtime
archives this run’s history and writes the new run’s first events in
the same transaction.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Event
impl<'de> Deserialize<'de> for Event
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for Event
Auto Trait Implementations§
impl Forget for Event
impl Freeze for Event
impl Move for Event
impl RefUnwindSafe for Event
impl Send for Event
impl Sync for Event
impl Unpin for Event
impl UnsafeUnpin for Event
impl UnwindSafe for Event
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request