pub struct SessionRecord {
pub session: Session,
pub messages: Vec<Message>,
pub links: Vec<SessionLink>,
pub tags: Vec<Tag>,
pub annotations: Vec<Annotation>,
pub summary: Option<Summary>,
}Expand description
The complete reasoning record for a single session.
This is the unit that gets serialized, compressed, encrypted, and written as
a single git blob (sessions/<uuid>.enc). It is reconstructed verbatim on
the receiving machine so the full reasoning history, including commit links,
rides along with the code.
Fields§
§session: SessionThe session metadata row.
messages: Vec<Message>All messages belonging to the session, in conversation order.
links: Vec<SessionLink>Links from the session to git commits, branches, or pull requests.
User-applied tags categorizing the session.
annotations: Vec<Annotation>User-created annotations attached to the session.
summary: Option<Summary>The session summary, if one has been generated.
Trait Implementations§
Source§impl Clone for SessionRecord
impl Clone for SessionRecord
Source§fn clone(&self) -> SessionRecord
fn clone(&self) -> SessionRecord
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 SessionRecord
Manual Debug that prints only non-sensitive metadata.
impl Debug for SessionRecord
Manual Debug that prints only non-sensitive metadata.
The derived Debug would print plaintext message content, annotation text,
and summary text. Because a SessionRecord holds the full decrypted
reasoning history, a future failure log that formatted one could leak private
reasoning. This impl emits only counts and identifiers, never user content.