Skip to main content

canic_backup/persistence/
mod.rs

1//! Module: persistence
2//!
3//! Responsibility: persist backup manifests, journals, plans, and integrity reports.
4//! Does not own: manifest construction, journal state transitions, or backup execution.
5//! Boundary: validates data before filesystem writes and before resume integrity checks.
6
7mod artifact_commit;
8mod error;
9mod integrity;
10mod journal_lock;
11mod json;
12mod layout;
13
14pub(crate) use artifact_commit::commit_artifact_directory;
15pub use error::PersistenceError;
16pub use integrity::{
17    ArtifactIntegrityReport, BackupExecutionIntegrityReport, BackupIntegrityReport,
18    resolve_backup_artifact_path,
19};
20pub(crate) use journal_lock::{JournalLock, JournalLockError};
21pub(crate) use json::write_json_durable;
22pub use layout::BackupLayout;
23
24#[cfg(test)]
25mod tests;