pub enum StreamedResolution {
Repaired {
tool_name: String,
},
TurnAbandoned {
skipped_tool_result: Option<ToolResult>,
},
}Expand description
What the machine decided about a mid-stream invalid tool call.
Deliberately exhaustive: a driver must handle every resolution, so adding a variant is a breaking change by design.
Variants§
Repaired
The tool name was repaired. Apply it via
StreamedTurnAssembler::resolve_pending_invalid and keep consuming
the provider stream.
TurnAbandoned
The turn was rolled back (retry) or the call skipped; corrective
messages are already in the history. Drain the provider stream for
usage, record the completion call, then call
AgentRun::next_step.
Fields
§
skipped_tool_result: Option<ToolResult>For a skipped call, the synthetic tool result to surface to the consumer stream.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for StreamedResolution
impl RefUnwindSafe for StreamedResolution
impl Send for StreamedResolution
impl Sync for StreamedResolution
impl Unpin for StreamedResolution
impl UnsafeUnpin for StreamedResolution
impl UnwindSafe for StreamedResolution
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> DebuggableStorage for T
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> 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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more