pub enum Error {
Protocol(ProtocolError),
Pipeline(PipelineError),
Configuration {
message: String,
context: ErrorContext,
},
Validation {
message: String,
context: ErrorContext,
},
Runtime {
message: String,
context: ErrorContext,
},
Transport(TransportError),
Io(Error),
Serialization(Error),
Remote {
status: u16,
class: String,
message: String,
retryable: bool,
fallbackable: bool,
retry_after_ms: Option<u32>,
context: Option<ErrorContext>,
},
Unknown {
message: String,
context: ErrorContext,
},
}Expand description
Unified error type for the AI-Protocol Runtime This aggregates all low-level errors into actionable, high-level categories
Variants§
Protocol(ProtocolError)
Pipeline(PipelineError)
Configuration
Validation
Runtime
Transport(TransportError)
Io(Error)
Serialization(Error)
Remote
Fields
§
context: Option<ErrorContext>Unknown
Implementations§
Source§impl Error
impl Error
Sourcepub fn runtime_with_context(
msg: impl Into<String>,
context: ErrorContext,
) -> Self
pub fn runtime_with_context( msg: impl Into<String>, context: ErrorContext, ) -> Self
Create a new runtime error with structured context
Sourcepub fn validation_with_context(
msg: impl Into<String>,
context: ErrorContext,
) -> Self
pub fn validation_with_context( msg: impl Into<String>, context: ErrorContext, ) -> Self
Create a new validation error with structured context
Sourcepub fn configuration_with_context(
msg: impl Into<String>,
context: ErrorContext,
) -> Self
pub fn configuration_with_context( msg: impl Into<String>, context: ErrorContext, ) -> Self
Create a new configuration error with structured context
Sourcepub fn unknown_with_context(
msg: impl Into<String>,
context: ErrorContext,
) -> Self
pub fn unknown_with_context( msg: impl Into<String>, context: ErrorContext, ) -> Self
Create a new unknown error with structured context
Sourcepub fn context(&self) -> Option<&ErrorContext>
pub fn context(&self) -> Option<&ErrorContext>
Extract error context if available
Sourcepub fn with_context(self, new_ctx: ErrorContext) -> Self
pub fn with_context(self, new_ctx: ErrorContext) -> Self
Attach or update context to the error
Trait Implementations§
Source§impl Error for Error
impl Error for Error
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<PipelineError> for Error
impl From<PipelineError> for Error
Source§fn from(source: PipelineError) -> Self
fn from(source: PipelineError) -> Self
Converts to this type from the input type.
Source§impl From<ProtocolError> for Error
impl From<ProtocolError> for Error
Source§fn from(source: ProtocolError) -> Self
fn from(source: ProtocolError) -> Self
Converts to this type from the input type.
Source§impl From<TransportError> for Error
impl From<TransportError> for Error
Source§fn from(source: TransportError) -> Self
fn from(source: TransportError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for Error
impl !RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl !UnwindSafe for Error
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.