pub(crate) mod titles;
mod event;
mod manager;
mod metadata;
mod prune;
mod read;
mod scope;
mod store;
mod write;
pub use event::SessionEvent;
pub use manager::{Session, SessionManager};
pub use metadata::{latest_session_title, session_user_input_count};
pub(crate) use read::BoundedReadError;
pub use read::{SessionReadDiagnostic, TolerantSessionEvents, validate_session_id};
pub(crate) use write::try_record_session_event_batch;
pub use write::{
SESSION_TITLE_EVENT, SessionAppendError, SessionAppendOutcome, record_session_event,
record_session_title, sanitize_session_title, try_record_session_event,
};
pub(crate) use event::SessionEventKind;
pub(crate) use metadata::{
SessionDiagnosticOperation, SessionTitleMetadata, latest_valid_compaction_checkpoint,
report_session_diagnostic, session_title_metadata,
};
pub(crate) use prune::parse_prune_sessions_days;
pub(crate) use read::{MAX_METADATA_VISIT_BYTES, MAX_METADATA_VISIT_LINES};
pub(crate) use scope::resolve_session_scope_path;
pub(crate) use store::prepare_session_root;
#[cfg(test)]
pub(crate) use store::secure_test_session_root;
#[cfg(unix)]
pub(crate) use store::{apply_repair_plan, discover_repair_plan};
#[cfg(test)]
pub(crate) use write::record_session_compaction;
pub(crate) use write::{
CompactionRotationError, capture_session_snapshot,
record_session_compaction_at_byte_offset_with_snapshot, sanitize_compaction_summary,
};