pub struct TelemetryProjection {Show 30 fields
pub schema_version: u16,
pub projection_id: TelemetryProjectionId,
pub projection_kind: TelemetryProjectionKind,
pub source_record: TelemetrySourceRecord,
pub run_id: RunId,
pub agent_id: AgentId,
pub turn_id: Option<TurnId>,
pub attempt_id: Option<AttemptId>,
pub event_id: Option<EventId>,
pub journal_cursor: Option<JournalCursor>,
pub trace_id: Option<TraceId>,
pub span_id: Option<SpanId>,
pub runtime_package_fingerprint: String,
pub source: SourceRef,
pub destination: Option<DestinationRef>,
pub subject_ref: EntityRef,
pub policy_refs: Vec<PolicyRef>,
pub privacy: PrivacyClass,
pub retention: RetentionClass,
pub content_capture: TelemetryContentCaptureMode,
pub redaction_policy_id: String,
pub provider_id: Option<String>,
pub model_id: Option<String>,
pub tool_name: Option<String>,
pub usage: Option<UsageUnits>,
pub cost: Option<CostUnits>,
pub terminal_status: Option<TelemetryTerminalStatus>,
pub sink_health: Option<TelemetrySinkHealth>,
pub redacted_summary: String,
pub raw_content: Option<String>,
}Expand description
Carries the telemetry projection record payload for journal, event, or fixture surfaces. Creating or cloning it only preserves serialized SDK state; append, publish, replay, or export effects are documented on the runtime and port methods that store it.
Fields§
§schema_version: u16Wire schema version used for compatibility checks.
projection_id: TelemetryProjectionIdStable projection id used for typed lineage, lookup, or dedupe.
projection_kind: TelemetryProjectionKindProjection controls for exposing data to a provider or subscriber. Use it to keep provider-visible data separate from private SDK state.
source_record: TelemetrySourceRecordSource record used by this record or request.
run_id: RunIdRun identifier used for lineage, filtering, replay, and dedupe.
agent_id: AgentIdAgent identifier used for lineage, filtering, and ownership checks.
turn_id: Option<TurnId>Turn identifier for one loop turn within a run.
attempt_id: Option<AttemptId>Attempt identifier for retry, repair, provider, or tool execution evidence.
event_id: Option<EventId>Event identifier used to correlate live events with journal or replay evidence.
journal_cursor: Option<JournalCursor>Cursor identifying a replay, export, or subscription position. Use it to resume without widening the original scope.
trace_id: Option<TraceId>Stable trace id used for typed lineage, lookup, or dedupe.
span_id: Option<SpanId>Stable span id used for typed lineage, lookup, or dedupe.
runtime_package_fingerprint: StringFingerprint of the runtime package snapshot in force when this value was produced. Use it for replay, dedupe, and package-lineage checks; the field is evidence and does not execute package behavior.
source: SourceRefSource label or ref for this item; it is metadata and does not fetch content by itself.
destination: Option<DestinationRef>Destination label or ref for this item; it is metadata and does not deliver content by itself.
subject_ref: EntityRefTyped subject ref reference. Resolving or executing it is a separate policy-gated step.
policy_refs: Vec<PolicyRef>Policy references that govern admission, projection, execution, or delivery.
privacy: PrivacyClassPrivacy class used for projection, telemetry, and raw-content access decisions.
retention: RetentionClassRetention class used by hosts and sinks when storing or exporting this item.
content_capture: TelemetryContentCaptureModeContent capture used by this record or request.
redaction_policy_id: StringStable redaction policy id used for typed lineage, lookup, or dedupe.
provider_id: Option<String>Stable provider id used for typed lineage, lookup, or dedupe.
model_id: Option<String>Stable model id used for typed lineage, lookup, or dedupe.
tool_name: Option<String>Optional tool name value. When absent, callers should use the documented default or skip that optional behavior.
usage: Option<UsageUnits>Optional usage value. When absent, callers should use the documented default or skip that optional behavior.
cost: Option<CostUnits>Optional cost value. When absent, callers should use the documented default or skip that optional behavior.
terminal_status: Option<TelemetryTerminalStatus>Optional terminal status value. When absent, callers should use the documented default or skip that optional behavior.
sink_health: Option<TelemetrySinkHealth>Optional sink health value. When absent, callers should use the documented default or skip that optional behavior.
redacted_summary: StringRedacted human-readable summary safe for events, telemetry, and logs.
raw_content: Option<String>Raw content or raw-content control for this value. Use it only when policy explicitly allows raw content capture or delivery.
Implementations§
Source§impl TelemetryProjection
impl TelemetryProjection
Sourcepub fn is_terminal_preserved(&self) -> bool
pub fn is_terminal_preserved(&self) -> bool
Reports whether this value is terminal preserved. The check is pure and does not mutate SDK or host state.
Sourcepub fn without_raw_content(self) -> Self
pub fn without_raw_content(self) -> Self
Returns an updated value with without raw content configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Trait Implementations§
Source§impl Clone for TelemetryProjection
impl Clone for TelemetryProjection
Source§fn clone(&self) -> TelemetryProjection
fn clone(&self) -> TelemetryProjection
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 TelemetryProjection
impl Debug for TelemetryProjection
Source§impl<'de> Deserialize<'de> for TelemetryProjection
impl<'de> Deserialize<'de> for TelemetryProjection
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>,
Source§impl PartialEq for TelemetryProjection
impl PartialEq for TelemetryProjection
Source§fn eq(&self, other: &TelemetryProjection) -> bool
fn eq(&self, other: &TelemetryProjection) -> bool
self and other values to be equal, and is used by ==.