pub enum Event {
Show 18 variants
RunStarted {
feature: String,
tasks: Vec<PlannedTask>,
},
TaskStarted {
feature: String,
task: String,
title: String,
},
Stage {
task: String,
stage: Stage,
state: StageState,
detail: Option<String>,
elapsed_ms: Option<u64>,
tail: Vec<String>,
},
Resumed {
task: String,
stage: Option<Stage>,
last_call: Option<String>,
},
ApprovalRequested {
task: String,
call: String,
tool: String,
what: String,
class: String,
object: String,
},
ApprovalDecided {
task: String,
call: String,
decision: String,
scope: Option<String>,
by: String,
how: String,
class: String,
object: String,
},
ToolCall {
task: String,
turn: u32,
tool: String,
target: String,
decision: String,
ok: Option<bool>,
tail: Vec<String>,
},
Usage {
task: String,
input_tokens: u64,
output_tokens: u64,
cache_read_tokens: u64,
cache_write_tokens: u64,
usd: Option<f64>,
},
TaskFinished {
task: String,
outcome: String,
message: String,
run: Option<String>,
input_tokens: u64,
output_tokens: u64,
cache_read_tokens: u64,
cache_write_tokens: u64,
usd: Option<f64>,
regression: Option<Regression>,
},
CollectionChecked {
task: String,
files: Vec<CollectionFile>,
},
RegressionBisected {
task: String,
runs: u32,
result: Option<String>,
},
Said {
task: String,
turn: u32,
text: String,
},
Reasoning {
task: String,
turn: u32,
text: String,
},
Notice {
text: String,
},
Bug {
task: String,
step: BugEvent,
},
Oracle {
step: OracleEvent,
},
PlanningStopped {
unit: Option<String>,
kind: String,
next_skill: Option<String>,
},
Project {
step: ProjectEvent,
},
}Expand description
Something a run did.
Variants§
RunStarted
A feature run begins: its tasks, as the graph has them (editors show them as a plan).
Fields
tasks: Vec<PlannedTask>Every task, in document order.
TaskStarted
A task attempt run begins.
Stage
A stage of the task’s pipeline began, ended or does not apply.
Fields
state: StageStateWhere it is.
Resumed
A run picks up an attempt a killed process left behind.
Fields
ApprovalRequested
A call waits for a person: notify them.
Fields
ApprovalDecided
A person decided a call inline.
Fields
class: StringThe object’s class, as for Event::ApprovalRequested.
ToolCall
A tool call the model asked for, with the policy’s decision.
Fields
Usage
Tokens so far in the current attempt.
Fields
TaskFinished
The task run ended.
Fields
regression: Option<Regression>A regression-only tick: why, worded.
CollectionChecked
The attempt’s changed test files were checked against what the run
collected (collection.checked).
Fields
files: Vec<CollectionFile>Each judged file: path, state, what decided it.
RegressionBisected
The bisection for an already-passing tick ended (regression.bisected).
Fields
Said
What the model said in a turn, beside its tool calls: its account of what it is doing — a claim, never evidence. Control characters escaped; at most 2000 characters.
Fields
Reasoning
The model’s summary of its reasoning in a turn, as the provider
gave it ([model] reasoning_summary): its account of why — a claim,
never evidence. Control characters escaped; at most 4000 characters.
Fields
Notice
Anything else worth a line (convergence rounds, notices).
Bug
A bug’s step (bug.* on the event stream).
Oracle
The oracle at review (oracle.* on the event stream): stage names,
counts and digests — never a test’s content, never held-out material.
Fields
step: OracleEventWhat happened.
PlanningStopped
Plan through stopped (planning.stopped).
Fields
Project
A new project’s step, its creation or its undo (scaffold.*,
project.*): step ids, argv, states, digests — never the idea,
never the folder’s path.
Fields
step: ProjectEventWhat happened.