pub enum KernelObservation {
Show 23 variants
Compressed {
action: KernelPressureAction,
rho_after: f64,
summary: Option<String>,
archived: Vec<Message>,
invalidates_prefix_at: Option<usize>,
},
Renewed {
sprint: u32,
},
Rollbacked {
turn: u32,
checkpoint_history_len: u32,
reason: Option<RollbackReason>,
},
CapabilityChanged {
turn: u32,
added: Vec<String>,
removed: Vec<String>,
change_kind: Option<String>,
capability_id: Option<String>,
version: Option<String>,
mounted_by: Option<String>,
mount_reason: Option<String>,
},
MilestoneAdvanced {
turn: u32,
phase_id: String,
capabilities_unlocked: Vec<String>,
},
MilestoneBlocked {
turn: u32,
phase_id: String,
reason: String,
},
MilestoneEvidence {
turn: u32,
phase_id: String,
evidence: Vec<String>,
},
CheckpointTaken {
turn: u32,
history_len: u32,
},
AgentProcessChanged {
turn: u32,
agent_id: String,
parent_session_id: String,
role: String,
isolation: String,
context_inheritance: String,
state: String,
permitted_capability_ids: Vec<String>,
result_termination: Option<String>,
},
WorkflowBatchSpawned {
turn: u32,
nodes: Vec<WorkflowSpawnInfo>,
budget: Option<WorkflowBudget>,
},
WorkflowCompleted {
turn: u32,
completed: Vec<String>,
failed: Vec<String>,
},
AgentPreempted {
turn: u32,
agent_ids: Vec<String>,
reason: String,
},
ToolGated {
turn: u32,
call_id: String,
tool: String,
reason: String,
},
SignalDisposed {
turn: u32,
signal_id: String,
disposition: String,
queue_depth: u32,
},
BudgetExceeded {
turn: u32,
budget: String,
},
Suspended {
turn: u32,
reason: String,
pending_calls: Vec<String>,
},
Resumed {
turn: u32,
approved: Vec<String>,
denied: Vec<String>,
},
PageOut {
turn: u32,
action: KernelPressureAction,
rho_after: f64,
summary: Option<String>,
archived: Vec<Message>,
tier_hint: String,
},
PageInRequested {
turn: u32,
call_id: String,
tool: String,
query: String,
top_k: u32,
},
MemoryWritten {
turn: u32,
memory_id: String,
memory_kind: String,
size_bytes: u32,
},
MemoryValidationFailed {
turn: u32,
memory_id: String,
error: String,
},
MemoryQueried {
turn: u32,
query_context: String,
requested_k: usize,
requires_async_response: bool,
},
LargeResultSpooled {
turn: u32,
call_id: String,
tool: String,
original_size: u32,
preview_size: u32,
spool_ref: Option<String>,
},
}Variants§
Compressed
Fields
action: KernelPressureActionRenewed
Rollbacked
CapabilityChanged
Fields
MilestoneAdvanced
MilestoneBlocked
MilestoneEvidence
Evidence collected by the verifier during milestone evaluation.
CheckpointTaken
Checkpoint taken at the start of a turn transaction (before LLM call).
AgentProcessChanged
Kernel process table changed for a spawned sub-agent.
Fields
WorkflowBatchSpawned
W0-ABI: a workflow batch was spawned — each node’s spawn descriptor (agent id + goal + role/isolation/inheritance) so the SDK can run the kernel-generated nodes.
Fields
nodes: Vec<WorkflowSpawnInfo>budget: Option<WorkflowBudget>G4 budget-as-signal: the workflow’s remaining headroom under the active quota at spawn time, so a coordinator node can scale its next submission. Additive: omitted when no resource quota is installed (nothing to report).
WorkflowCompleted
W0-ABI: a workflow finished (all nodes terminal, or stalled by a gated dependency).
AgentPreempted
#2-B: a high-urgency InterruptNow signal preempted in-flight work. The kernel has already
marked these agents Done(UserAbort) and reclaimed the root to reason about the interrupt; the
SDK must ABORT the listed in-flight child runs and discard their results (do NOT feed their
SubAgentCompleted). Additive variant (agent_preempted) — byte-identical for SDKs that never
receive it.
ToolGated
A tool call needs user approval (governance AskUser). Not blocked by the
kernel — the SDK must obtain approval before executing the named call.
SignalDisposed
An inbound signal was routed by the in-kernel attention policy.
BudgetExceeded
A budget axis (turns / tokens / wall-time) was exhausted.
Suspended
Loop entered Suspended state (awaiting human approval or sub-agent).
Resumed
Loop resumed from Suspended state.
PageOut
Working memory archived for long-term storage (page-out decision).
Fields
action: KernelPressureActionPageInRequested
Kernel requests SDK to fetch long-term memory for a meta-tool call.
MemoryWritten
Memory entry written successfully (Phase 7).
MemoryValidationFailed
Memory validation failed (Phase 7).
MemoryQueried
Memory query request (Phase 7).
LargeResultSpooled
Large tool result spooled (Layer 1).
Trait Implementations§
Source§impl Clone for KernelObservation
impl Clone for KernelObservation
Source§fn clone(&self) -> KernelObservation
fn clone(&self) -> KernelObservation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more