mod artifacts;
mod compact_text;
pub mod compaction_engine;
mod compression;
mod diagnostic;
mod durable;
mod durable_recovery;
mod error;
mod jsonl;
mod manager;
mod pending_submission;
mod runtime_state;
mod segment_chain;
pub mod sqlite;
mod store;
pub mod todo;
mod tool_compression;
mod tool_contributions;
mod topology;
mod transcript;
pub use tool_compression::{ToolOutputCompression, compress_tool_output};
mod turn_outcome;
mod types;
pub use artifacts::{
DEFAULT_MAX_ORPHAN_SIDECAR_ENTRIES, DEFAULT_ORPHAN_SIDECAR_MINIMUM_AGE, OrphanSidecarFailure,
OrphanSidecarReconciliationPolicy, OrphanSidecarReconciliationReport,
SessionArtifactCleanupReport, remove_session_artifacts_for_transcript,
remove_session_sidecars_for_transcript, remove_session_transcript,
};
pub use diagnostic::{ProviderTerminalDiagnostic, ProviderTerminalOutcome, ProviderTerminalSource};
pub use durable::{
DurableSession, DurableTranscriptEntry, PersistencePolicy, SessionCapabilities, TurnCommit,
};
pub use error::SessionError;
pub use manager::{
SessionCleanupCandidate, SessionCleanupPolicy, SessionCleanupReport, SessionManager,
};
pub use pending_submission::{
PendingSubmissionError, PendingSubmissionRecord, PendingSubmissionStore,
};
pub use runtime_state::{
SessionRuntimeActivation, SessionRuntimeActivationStatus, SessionRuntimeIdentity,
SessionRuntimeState,
};
pub use sqlite::{ForkInfo, IndexError, SearchResult, SessionIndex};
pub use store::{CompactTextSessionStore, JsonlSessionStore, SessionStore};
pub use todo::{
CreateTodo, TodoAddDependencyTool, TodoCreateBatchInput, TodoCreateBatchTool, TodoCreateInput,
TodoCreateTool, TodoDeleteInput, TodoDeleteTool, TodoDependency, TodoDependencyInput,
TodoError, TodoItem, TodoPriority, TodoQuery, TodoQueryInput, TodoQueryTool,
TodoRemoveDependencyTool, TodoRepository, TodoStatus, TodoUpdate, TodoUpdateBatchInput,
TodoUpdateBatchTool, TodoUpdateInput, TodoUpdateStatusInput, TodoUpdateStatusTool,
TodoUpdateTool, status_icon,
};
pub use tool_contributions::todo_tool_contributions_for_sessions_dir;
pub use transcript::{TranscriptEntry, export_json, export_markdown, read_transcript};
pub use turn_outcome::{TurnTranscriptOutcome, TurnTranscriptOutcomeRecord};
pub use types::{Session, SessionBranch, SessionEntry, SessionInfo, SessionMetadata};
#[cfg(test)]
#[allow(warnings)]
mod tests;