pub struct ExportedTranscript {
pub version: u32,
pub session_id: String,
pub model: String,
pub goal: String,
pub created_at: String,
pub status: SessionStatus,
pub messages: Vec<TranscriptEntry>,
pub compact_boundaries: Vec<ExportedCompactBoundary>,
pub message_count: u64,
}Expand description
A portable exported transcript for sharing and analysis.
Fields§
§version: u32§session_id: String§model: String§goal: String§created_at: String§status: SessionStatusStatus at the moment of export. Mirrors SessionMeta::status
— the same enum is used in both structs to keep the
wire shape consistent for external SDK consumers.
messages: Vec<TranscriptEntry>Every persisted message in on-disk order, including those that
were folded into a compaction summary (older messages.len() of
these were superseded by the corresponding Self::compact_boundaries
entry at runtime). Consumers that only want the post-compaction
context should filter messages before the last boundary’s index.
compact_boundaries: Vec<ExportedCompactBoundary>Cross-turn compaction boundaries, in order. Each records how many older messages were folded into the summary that follows it. Empty for sessions that never compacted.
message_count: u64Count of messages in messages (excludes boundary markers).
Implementations§
Source§impl ExportedTranscript
impl ExportedTranscript
Sourcepub fn from_session_dir(session_dir: &Path) -> Result<Self>
pub fn from_session_dir(session_dir: &Path) -> Result<Self>
Build an ExportedTranscript from a session directory.