pub struct TurnCompletedData {
pub turn_id: TurnId,
pub iterations: u32,
pub duration_ms: Option<u64>,
pub usage: Option<TokenUsage>,
pub input_content: Option<String>,
pub final_message_id: Option<MessageId>,
pub final_answer_preview: Option<String>,
pub time_to_first_token_ms: Option<u64>,
pub tool_call_count: Option<u32>,
pub llm_call_count: Option<u32>,
pub status: Option<String>,
}Expand description
Data for turn.completed event
Fields§
§turn_id: TurnIdTurn identifier
iterations: u32Number of iterations in this turn
duration_ms: Option<u64>Duration in milliseconds
usage: Option<TokenUsage>Aggregated token usage for all LLM calls in this turn
input_content: Option<String>Input message content (for observability, passed through from turn.started)
final_message_id: Option<MessageId>Canonical assistant message emitted by output.message.completed.
final_answer_preview: Option<String>Bounded preview of the final visible assistant answer.
time_to_first_token_ms: Option<u64>First-token latency for the turn, usually from the first LLM generation.
tool_call_count: Option<u32>Number of tool calls completed during the turn.
llm_call_count: Option<u32>Number of LLM generation calls executed during the turn.
status: Option<String>Optional explicit completion status for consumers that summarize turns.
Trait Implementations§
Source§impl Clone for TurnCompletedData
impl Clone for TurnCompletedData
Source§fn clone(&self) -> TurnCompletedData
fn clone(&self) -> TurnCompletedData
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TurnCompletedData
impl Debug for TurnCompletedData
Source§impl<'de> Deserialize<'de> for TurnCompletedData
impl<'de> Deserialize<'de> for TurnCompletedData
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
Source§impl From<TurnCompletedData> for EventData
impl From<TurnCompletedData> for EventData
Source§fn from(data: TurnCompletedData) -> Self
fn from(data: TurnCompletedData) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for TurnCompletedData
impl RefUnwindSafe for TurnCompletedData
impl Send for TurnCompletedData
impl Sync for TurnCompletedData
impl Unpin for TurnCompletedData
impl UnsafeUnpin for TurnCompletedData
impl UnwindSafe for TurnCompletedData
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
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<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request