Skip to main content

AgentEvent

Enum AgentEvent 

Source
pub enum AgentEvent {
Show 29 variants TaskStatusChanged { node_id: String, status: NodeStatus, }, PlanGenerated(TaskPlan), EnergyUpdated { node_id: String, energy: f32, }, Log(String), NodeCompleted { node_id: String, goal: String, }, ApprovalRequest { request_id: String, node_id: String, action_type: ActionType, description: String, diff: Option<String>, }, Complete { success: bool, message: String, }, Error(String), PlanReady { nodes: usize, plugins: Vec<String>, execution_mode: String, }, NodeSelected { node_id: String, goal: String, node_class: String, }, FallbackPlanner { reason: String, }, VerificationComplete {
Show 15 fields node_id: String, syntax_ok: bool, build_ok: bool, tests_ok: bool, lint_ok: bool, diagnostics_count: usize, tests_passed: usize, tests_failed: usize, energy: f32, energy_components: EnergyComponents, stage_outcomes: Vec<StageOutcome>, degraded: bool, degraded_reasons: Vec<String>, summary: String, node_class: String,
}, BundleApplied { node_id: String, files_created: Vec<String>, files_modified: Vec<String>, writes_count: usize, diffs_count: usize, node_class: String, }, SensorFallback { node_id: String, stage: String, primary: String, actual: String, reason: String, }, DegradedVerification { node_id: String, degraded_stages: Vec<String>, stability_blocked: bool, }, EscalationClassified { node_id: String, category: String, action: String, }, SheafValidationComplete { node_id: String, validators_run: usize, failures: usize, v_sheaf: f32, }, GraphRewriteApplied { trigger_node: String, action: String, nodes_affected: usize, }, BranchCreated { branch_id: String, node_id: String, parent_node_id: String, }, InterfaceSealed { node_id: String, sealed_paths: Vec<String>, seal_hash: String, }, BranchFlushed { parent_node_id: String, flushed_branch_ids: Vec<String>, reason: String, }, DependentUnblocked { child_node_id: String, parent_node_id: String, }, BranchMerged { branch_id: String, node_id: String, }, ContextDegraded { node_id: String, budget_exceeded: bool, missing_owned_files: Vec<String>, included_file_count: usize, total_bytes: usize, reason: String, }, ContextBlocked { node_id: String, missing_owned_files: Vec<String>, reason: String, }, StructuralDependencyMissing { node_id: String, dependency_node_id: String, reason: String, }, ModelFallback { node_id: String, tier: String, primary_model: String, fallback_model: String, reason: String, }, ProvenanceDrift { node_id: String, missing_files: Vec<String>, reason: String, }, ToolReadiness { plugins: Vec<PluginReadiness>, strictness: String, },
}
Expand description

Events emitted by the Orchestrator for TUI consumption

Variants§

§

TaskStatusChanged

Task status changed

Fields

§node_id: String
§status: NodeStatus
§

PlanGenerated(TaskPlan)

Plan generated by Architect

§

EnergyUpdated

Lyapunov energy updated

Fields

§node_id: String
§energy: f32
§

Log(String)

Log message for display

§

NodeCompleted

Node completed successfully

Fields

§node_id: String
§goal: String
§

ApprovalRequest

Approval required before proceeding

Fields

§request_id: String
§node_id: String
§action_type: ActionType
§description: String
§

Complete

Orchestration finished

Fields

§success: bool
§message: String
§

Error(String)

Error occurred

§

PlanReady

PSP-5: Plan ready after sheafification with detected plugins and execution mode

Fields

§nodes: usize
§plugins: Vec<String>
§execution_mode: String
§

NodeSelected

PSP-5: Node selected for execution

Fields

§node_id: String
§goal: String
§node_class: String
§

FallbackPlanner

PSP-5: Deterministic fallback planner activated

Fields

§reason: String
§

VerificationComplete

PSP-5: Verification completed for a node

Fields

§node_id: String
§syntax_ok: bool
§build_ok: bool
§tests_ok: bool
§lint_ok: bool
§diagnostics_count: usize
§tests_passed: usize
§tests_failed: usize
§energy: f32
§energy_components: EnergyComponents

PSP-5 Phase 7: Full energy component breakdown

§stage_outcomes: Vec<StageOutcome>

PSP-5 Phase 7: Per-stage verification outcomes with sensor status

§degraded: bool

PSP-5 Phase 7: Whether verification ran in degraded mode

§degraded_reasons: Vec<String>

PSP-5 Phase 7: Human-readable reasons for each degraded stage

§summary: String

PSP-5 Phase 7: Summary suitable for display

§node_class: String

PSP-5 Phase 7: Node class for display context

§

BundleApplied

PSP-5: Artifact bundle applied to workspace

Fields

§node_id: String
§files_created: Vec<String>
§files_modified: Vec<String>
§writes_count: usize

PSP-5 Phase 7: Number of write (new file) operations

§diffs_count: usize

PSP-5 Phase 7: Number of diff (patch) operations

§node_class: String

PSP-5 Phase 7: Node class for display context

§

SensorFallback

PSP-5 Phase 4: A sensor fell back to an alternative tool

Fields

§node_id: String
§stage: String
§primary: String
§actual: String
§reason: String
§

DegradedVerification

PSP-5 Phase 4: Verification completed with degraded stages

Fields

§node_id: String
§degraded_stages: Vec<String>
§stability_blocked: bool
§

EscalationClassified

PSP-5 Phase 5: Non-convergence classified with a repair action

Fields

§node_id: String
§category: String
§action: String
§

SheafValidationComplete

PSP-5 Phase 5: Sheaf validation completed for a node

Fields

§node_id: String
§validators_run: usize
§failures: usize
§v_sheaf: f32
§

GraphRewriteApplied

PSP-5 Phase 5: Graph rewrite applied (split, interface insertion, replan)

Fields

§trigger_node: String
§action: String
§nodes_affected: usize
§

BranchCreated

PSP-5 Phase 6: Provisional branch created for speculative child work

Fields

§branch_id: String
§node_id: String
§parent_node_id: String
§

InterfaceSealed

PSP-5 Phase 6: Interface sealed for a node (dependents may proceed)

Fields

§node_id: String
§sealed_paths: Vec<String>
§seal_hash: String
§

BranchFlushed

PSP-5 Phase 6: Provisional branches flushed due to parent failure

Fields

§parent_node_id: String
§flushed_branch_ids: Vec<String>
§reason: String
§

DependentUnblocked

PSP-5 Phase 6: Blocked dependent unblocked after parent seal

Fields

§child_node_id: String
§parent_node_id: String
§

BranchMerged

PSP-5 Phase 6: Provisional branch merged into committed state

Fields

§branch_id: String
§node_id: String
§

ContextDegraded

PSP-5 Phase 3: Context assembly degraded (budget exceeded or missing artifacts)

Fields

§node_id: String
§budget_exceeded: bool
§missing_owned_files: Vec<String>
§included_file_count: usize
§total_bytes: usize
§reason: String
§

ContextBlocked

PSP-5 Phase 3: Context blocked — required structural context is untrustworthy. The node SHALL NOT proceed silently (PSP-5 §3 requirement).

Fields

§node_id: String
§missing_owned_files: Vec<String>
§reason: String
§

StructuralDependencyMissing

PSP-5 Phase 3: Structural dependency pre-check failed — a required dependency only has prose summaries, no machine-verifiable digests.

Fields

§node_id: String
§dependency_node_id: String
§reason: String
§

ModelFallback

PSP-5 Phase 1/4: Model fallback triggered for a tier after structured-output failure

Fields

§node_id: String
§tier: String
§primary_model: String
§fallback_model: String
§reason: String
§

ProvenanceDrift

PSP-5 Phase 3: Context provenance drift detected on resume

Fields

§node_id: String
§missing_files: Vec<String>
§reason: String
§

ToolReadiness

PSP-5 Phase 4: Tool readiness snapshot captured at session start

Fields

§plugins: Vec<PluginReadiness>

Per-plugin readiness: (plugin_name, available_stages, degraded_stages, lsp_status)

§strictness: String

Verifier strictness mode in effect

Trait Implementations§

Source§

impl Clone for AgentEvent

Source§

fn clone(&self) -> AgentEvent

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AgentEvent

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for AgentEvent

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for AgentEvent

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,