pub struct AssistantOutcome {
pub status: &'static str,
pub summary: String,
pub turns: u32,
pub tools_called: Vec<String>,
pub tool_receipts: Vec<AssistantToolReceipt>,
pub models_served: Vec<AssistantModelAttribution>,
pub model_used: String,
}Fields§
§status: &'static str"success" (model finished), "max_turns", or "error".
summary: StringThe final assistant text (or the error message).
turns: u32Turns consumed.
tools_called: Vec<String>Names of tools that executed successfully.
tool_receipts: Vec<AssistantToolReceipt>Tool executions attempted during this loop run, used to ground final prose claims such as “I ran the tests” against actual receipts.
models_served: Vec<AssistantModelAttribution>Ordered attribution for every completed model call in this run. This is retained separately from the compactable transcript so the terminal run receipt remains complete even after older messages age out.
model_used: StringThe model id that produced the final turn (authoritative attribution;
empty if no generate completed). Threaded out so the goal loop can stamp
model_id/model_tier onto GoalEvaluated, mirroring the provenance
record_turn_completed already stamps on the default path.
Auto Trait Implementations§
impl Freeze for AssistantOutcome
impl RefUnwindSafe for AssistantOutcome
impl Send for AssistantOutcome
impl Sync for AssistantOutcome
impl Unpin for AssistantOutcome
impl UnsafeUnpin for AssistantOutcome
impl UnwindSafe for AssistantOutcome
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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> ⓘ
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> ⓘ
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