pub struct BackupArtifact {
pub schema: SchemaVersion,
pub manifest: BackupManifest,
pub snapshot: Value,
pub snapshot_digest: String,
}Expand description
A portable, self-verifying export of one stored backup (#5, disaster recovery).
Unlike the in-database stored backup, this is the form an operator pulls
OFFSITE so a recovery point survives total store loss. It carries the
BackupManifest, the full composite snapshot JSON (the environment
document plus its sidecars and captured audit history), and the snapshot
digest — so a later import can verify integrity (recompute the SHA-256 over
snapshot and compare it to snapshot_digest) and reconstruct the
environment WITHOUT the database it came from. The snapshot is opaque to
the contract (the server’s composite EnvSnapshot shape); the artifact
only commits to its digest.
Fields§
§schema: SchemaVersion§manifest: BackupManifest§snapshot: ValueThe composite snapshot as canonical JSON (env + sidecars + audit).
snapshot_digest: StringSHA-256 over snapshot; re-verified on import.
Trait Implementations§
Source§impl Clone for BackupArtifact
impl Clone for BackupArtifact
Source§fn clone(&self) -> BackupArtifact
fn clone(&self) -> BackupArtifact
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BackupArtifact
impl Debug for BackupArtifact
Source§impl<'de> Deserialize<'de> for BackupArtifact
impl<'de> Deserialize<'de> for BackupArtifact
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for BackupArtifact
impl RefUnwindSafe for BackupArtifact
impl Send for BackupArtifact
impl Sync for BackupArtifact
impl Unpin for BackupArtifact
impl UnsafeUnpin for BackupArtifact
impl UnwindSafe for BackupArtifact
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request