#[non_exhaustive]pub enum WorkflowEvent {
PhaseStarted {
title: String,
},
AgentStarted {
label: String,
phase: Option<String>,
},
AgentFinished {
label: String,
usage: TokenUsage,
},
AgentReplayed {
label: String,
usage: TokenUsage,
},
AgentSkipped {
label: String,
},
AgentFailed {
label: String,
error: String,
},
LogLine {
msg: String,
},
}Expand description
Events emitted by the workflow combinators, mirroring the per-agent
AgentEvent plane at the workflow level.
This is a separate enum from AgentEvent (rather than new variants on
it) because AgentEvent is not #[non_exhaustive] and has an exhaustive
type_name() match plus external matchers — extending it would be a
breaking change. WorkflowEvent is #[non_exhaustive] so later phases
can add variants without breaking downstream matchers.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
PhaseStarted
A new phase began; subsequently-issued agents group under title.
AgentStarted
An agent leaf began executing.
Fields
AgentFinished
An agent leaf completed successfully.
AgentReplayed
An agent leaf’s result was replayed from the resume journal (no model
call). usage is the originally-recorded usage, for progress totals.
Fields
usage: TokenUsageToken usage recorded when this output was first produced.
AgentSkipped
An agent leaf was skipped (e.g. cancelled mid-run); the combinator
surfaces this as Ok(None).
AgentFailed
An agent-domain failure inside a combinator; the slot collapses to
None (the combinator never rejects on an agent-domain error).
LogLine
A free-form progress line emitted via log.
Trait Implementations§
Source§impl Clone for WorkflowEvent
impl Clone for WorkflowEvent
Source§fn clone(&self) -> WorkflowEvent
fn clone(&self) -> WorkflowEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more