pub enum ToolOutcome {
Succeeded,
Failed,
Blocked,
Denied,
Indeterminate,
}Expand description
How one attempt to execute a tool call ended.
The unknown case is a state rather than an absence. A run that crashed between dispatch and completion left a call whose outcome nobody observed, and a missing completion is not evidence of success or of safe retry: it is the one fact there is, and recording it is what lets a person decide.
Variants§
Succeeded
The tool ran and answered.
Failed
The tool ran and failed.
Blocked
A gate refused it before it ran: the taint gate, a permission rule.
Denied
A person refused it.
Indeterminate
Nobody observed how it ended. A crash between dispatch and completion leaves this, and no amount of reading the logs turns it into one of the four above.
Implementations§
Trait Implementations§
Source§impl Clone for ToolOutcome
impl Clone for ToolOutcome
impl Copy for ToolOutcome
Source§impl Debug for ToolOutcome
impl Debug for ToolOutcome
Source§impl<'de> Deserialize<'de> for ToolOutcome
impl<'de> Deserialize<'de> for ToolOutcome
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ToolOutcome
Source§impl PartialEq for ToolOutcome
impl PartialEq for ToolOutcome
Source§impl Serialize for ToolOutcome
impl Serialize for ToolOutcome
impl StructuralPartialEq for ToolOutcome
Auto Trait Implementations§
impl Freeze for ToolOutcome
impl RefUnwindSafe for ToolOutcome
impl Send for ToolOutcome
impl Sync for ToolOutcome
impl Unpin for ToolOutcome
impl UnsafeUnpin for ToolOutcome
impl UnwindSafe for ToolOutcome
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.