pub enum ConvergeError {
BudgetExhausted {
kind: String,
},
InvariantViolation {
name: String,
class: InvariantClass,
reason: String,
context: Box<ContextState>,
},
AgentFailed {
agent_id: String,
},
EmptyProvenance {
suggestor: String,
},
InvalidResume {
reason: String,
},
InvalidAdmission {
reason: String,
},
InvalidSnapshot {
reason: String,
},
Conflict {
id: String,
existing: String,
new: String,
context: Box<ContextState>,
},
}Expand description
Top-level error type for Converge operations.
Note: Context is boxed in error variants to keep the error type small,
as recommended by clippy. Access via error.context() method.
Variants§
BudgetExhausted
Budget limit exceeded (cycles, facts, or time).
InvariantViolation
An invariant was violated during execution.
Fields
class: InvariantClassClass of the invariant (Structural, Semantic, Acceptance).
context: Box<ContextState>Final context state (including diagnostic facts). Boxed to reduce error size.
AgentFailed
Suggestor execution failed.
EmptyProvenance
A fact-emitting suggestor returned an empty provenance() string.
The empty-provenance contract reserves "" for filter / observer
suggestors that never emit proposals. If a suggestor produced
proposals it MUST override provenance() to return its crate’s
canonical *_PROVENANCE.as_str().
InvalidResume
Invalid HITL gate resume (e.g., gate_id mismatch between decision and pause).
InvalidAdmission
Invalid external observation admission.
InvalidSnapshot
Invalid persisted context snapshot.
Conflict
Conflicting facts detected for the same ID.
Implementations§
Source§impl ConvergeError
impl ConvergeError
Sourcepub fn context(&self) -> Option<&ContextState>
pub fn context(&self) -> Option<&ContextState>
Returns a reference to the context if this error variant carries one.
Sourcepub fn stop_reason(&self) -> StopReason
pub fn stop_reason(&self) -> StopReason
Convert this error into a platform-level stop reason.
Trait Implementations§
Source§impl Debug for ConvergeError
impl Debug for ConvergeError
Source§impl Display for ConvergeError
impl Display for ConvergeError
Source§impl Error for ConvergeError
impl Error for ConvergeError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()