pub enum AgentError {
ProcessFailed {
exit_code: i32,
stderr: String,
},
SchemaValidation {
expected: String,
got: String,
},
PromptTooLarge {
chars: usize,
estimated_tokens: usize,
model_limit: usize,
},
Timeout {
limit: Duration,
},
}Expand description
Error specific to agent (AI provider) invocations.
Returned by AgentProvider::invoke and
automatically wrapped into OperationError::Agent when propagated with ?.
Variants§
ProcessFailed
The agent process exited with a non-zero status code.
SchemaValidation
The agent output did not match the expected schema.
Fields
PromptTooLarge
The prompt exceeds the model’s context window.
Returned before spawning the process when the estimated token count exceeds the model’s known limit.
chars- number of characters in the combined prompt (system + user).estimated_tokens- approximate token count (chars / 4).model_limit- the model’s context window in tokens.
Fields
Timeout
The agent did not complete within the configured timeout.
Trait Implementations§
Source§impl Debug for AgentError
impl Debug for AgentError
Source§impl Display for AgentError
impl Display for AgentError
Source§impl Error for AgentError
impl Error for AgentError
1.30.0 · 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<AgentError> for OperationError
impl From<AgentError> for OperationError
Source§fn from(source: AgentError) -> Self
fn from(source: AgentError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for AgentError
impl RefUnwindSafe for AgentError
impl Send for AgentError
impl Sync for AgentError
impl Unpin for AgentError
impl UnsafeUnpin for AgentError
impl UnwindSafe for AgentError
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.