1mod artifacts;
34mod compact_text;
35pub mod compaction_engine;
36mod compression;
37mod diagnostic;
38mod durable;
39mod durable_recovery;
40mod error;
41mod jsonl;
42mod manager;
43mod pending_submission;
44mod runtime_state;
45mod segment_chain;
46pub mod sqlite;
47mod store;
48pub mod todo;
49mod tool_compression;
50mod tool_contributions;
51mod topology;
52mod transcript;
53pub use tool_compression::{ToolOutputCompression, compress_tool_output};
54mod turn_outcome;
55mod types;
56
57pub use artifacts::{
58 DEFAULT_MAX_ORPHAN_SIDECAR_ENTRIES, DEFAULT_ORPHAN_SIDECAR_MINIMUM_AGE, OrphanSidecarFailure,
59 OrphanSidecarReconciliationPolicy, OrphanSidecarReconciliationReport,
60 SessionArtifactCleanupReport, remove_session_artifacts_for_transcript,
61 remove_session_sidecars_for_transcript, remove_session_transcript,
62};
63pub use diagnostic::{ProviderTerminalDiagnostic, ProviderTerminalOutcome, ProviderTerminalSource};
64pub use durable::{
65 DurableSession, DurableTranscriptEntry, PersistencePolicy, SessionCapabilities, TurnCommit,
66};
67pub use error::SessionError;
68pub use manager::{
69 SessionCleanupCandidate, SessionCleanupPolicy, SessionCleanupReport, SessionManager,
70};
71pub use pending_submission::{
72 PendingSubmissionError, PendingSubmissionRecord, PendingSubmissionStore,
73};
74pub use runtime_state::{
75 SessionRuntimeActivation, SessionRuntimeActivationStatus, SessionRuntimeIdentity,
76 SessionRuntimeState,
77};
78pub use sqlite::{ForkInfo, IndexError, SearchResult, SessionIndex};
79pub use store::{CompactTextSessionStore, JsonlSessionStore, SessionStore};
80pub use todo::{
81 CreateTodo, TodoAddDependencyTool, TodoCreateBatchInput, TodoCreateBatchTool, TodoCreateInput,
82 TodoCreateTool, TodoDeleteInput, TodoDeleteTool, TodoDependency, TodoDependencyInput,
83 TodoError, TodoItem, TodoPriority, TodoQuery, TodoQueryInput, TodoQueryTool,
84 TodoRemoveDependencyTool, TodoRepository, TodoStatus, TodoUpdate, TodoUpdateBatchInput,
85 TodoUpdateBatchTool, TodoUpdateInput, TodoUpdateStatusInput, TodoUpdateStatusTool,
86 TodoUpdateTool, status_icon,
87};
88pub use tool_contributions::todo_tool_contributions_for_sessions_dir;
89pub use transcript::{TranscriptEntry, export_json, export_markdown, read_transcript};
90pub use turn_outcome::{TurnTranscriptOutcome, TurnTranscriptOutcomeRecord};
91pub use types::{Session, SessionBranch, SessionEntry, SessionInfo, SessionMetadata};
92
93#[cfg(test)]
94#[allow(warnings)]
95mod tests;