pub struct TraceScore {Show 21 fields
pub public_id: TraceScoreId,
pub internal_id: Uuid,
pub org_id: i64,
pub observer_id: ObserverId,
pub scorer_key: String,
pub session_id: SessionId,
pub turn_id: String,
pub agent_id: Option<AgentId>,
pub agent_version_id: Option<AgentVersionId>,
pub harness_id: Option<HarnessId>,
pub status: TraceScoreStatus,
pub pass: Option<bool>,
pub value: Option<f64>,
pub label: Option<String>,
pub reason: Option<String>,
pub judge_input_tokens: Option<u64>,
pub judge_output_tokens: Option<u64>,
pub judge_cost_usd: Option<f64>,
pub error_message: Option<String>,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
}Expand description
One score produced by an observer scorer for one trace slice. Linked back to the exact session/turn it graded; agent/harness identifiers are denormalized at scoring time for aggregation.
Fields§
§public_id: TraceScoreIdExternal identifier (score_<32-hex>). Shown as “id” in API.
internal_id: UuidInternal UUID primary key. Never exposed in API.
org_id: i64Organization ID. Internal only.
observer_id: ObserverIdObserver that produced this score.
scorer_key: StringScorer key within the observer.
session_id: SessionIdSession this score grades.
turn_id: StringTurn this score grades (turn scope).
agent_id: Option<AgentId>Agent active in the session at scoring time.
agent_version_id: Option<AgentVersionId>Agent version active in the session at scoring time.
harness_id: Option<HarnessId>Harness of the session.
status: TraceScoreStatus§pass: Option<bool>Whether the scorer passed (set when completed).
value: Option<f64>Score value 0.0–1.0 (set when completed).
label: Option<String>Optional categorical label from an LLM judge (e.g. missing_source).
reason: Option<String>Human-readable explanation (set when completed). For LLM judges this is the judge’s reasoning — retained as the raw material for the Phase 2 improvement loop.
judge_input_tokens: Option<u64>Judge LLM input tokens (llm_judge scores only).
judge_output_tokens: Option<u64>Judge LLM output tokens (llm_judge scores only).
judge_cost_usd: Option<f64>Judge call cost in USD when the provider reports it (llm_judge only).
error_message: Option<String>Error details if errored.
created_at: DateTime<Utc>§updated_at: DateTime<Utc>Trait Implementations§
Source§impl Clone for TraceScore
impl Clone for TraceScore
Source§fn clone(&self) -> TraceScore
fn clone(&self) -> TraceScore
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TraceScore
impl Debug for TraceScore
Source§impl<'de> Deserialize<'de> for TraceScore
impl<'de> Deserialize<'de> for TraceScore
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>,
Auto Trait Implementations§
impl Freeze for TraceScore
impl RefUnwindSafe for TraceScore
impl Send for TraceScore
impl Sync for TraceScore
impl Unpin for TraceScore
impl UnsafeUnpin for TraceScore
impl UnwindSafe for TraceScore
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
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>
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 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>
T in a tonic::Request