Skip to main content

lha_core/
snapshot.rs

1use crate::session::SessionId;
2use crate::session::SubmissionId;
3use crate::status::SessionStatus;
4use lha_llm::RuntimeMetadata;
5use lha_llm::TranscriptItem;
6
7#[derive(Debug, Clone, PartialEq, Eq)]
8pub struct ActiveTurnSnapshot {
9    pub submission_id: SubmissionId,
10}
11
12#[derive(Debug, Clone, PartialEq)]
13pub struct SessionSnapshot {
14    pub session_id: SessionId,
15    pub status: SessionStatus,
16    pub conversation: Vec<TranscriptItem>,
17    pub steering_queue: Vec<Vec<TranscriptItem>>,
18    pub follow_up_queue: Vec<Vec<TranscriptItem>>,
19    pub runtime: RuntimeMetadata,
20    pub active_turn: Option<ActiveTurnSnapshot>,
21}