Struct RunRecord
pub struct RunRecord {
pub final_response: String,
pub history: Vec<ConversationMessage>,
pub tool_calls: Vec<RecordedCall>,
pub input_tokens: u64,
pub output_tokens: u64,
}Expand description
Everything captured from a single agent run, ready for grading.
Fields§
§final_response: StringThe agent’s final text response for the case.
history: Vec<ConversationMessage>The full conversation trajectory (messages + tool calls + tool results).
tool_calls: Vec<RecordedCall>Every dispatched tool call with its arguments and result, in call order. This creates the canonical dispatch fact: names, success, arguments, and results are derived from this list rather than copied into parallel fields.
input_tokens: u64Accumulated input tokens reported by the provider.
output_tokens: u64Accumulated output tokens reported by the provider.
Implementations§
Source§impl RunRecord
impl RunRecord
Sourcepub fn tool_names(&self) -> Vec<&str>
pub fn tool_names(&self) -> Vec<&str>
Names of tools actually dispatched, in call order.
Sourcepub fn all_tools_succeeded(&self) -> bool
pub fn all_tools_succeeded(&self) -> bool
Whether every dispatched tool call succeeded (vacuously true if none).
Auto Trait Implementations§
impl Freeze for RunRecord
impl RefUnwindSafe for RunRecord
impl Send for RunRecord
impl Sync for RunRecord
impl Unpin for RunRecord
impl UnsafeUnpin for RunRecord
impl UnwindSafe for RunRecord
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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