pub struct InstallOutcome {
pub digest: String,
pub layer: LayerId,
pub counter: u64,
pub staleness_days: Option<i64>,
pub index_high_water: Option<u64>,
pub attestations_carried: usize,
pub attestation_note: Option<String>,
}Expand description
A successful install.
Fields§
§digest: String§layer: LayerId§counter: u64§staleness_days: Option<i64>Some(age_days) when the accepted layer is older than the staleness
threshold — surfaced, never fatal.
index_high_water: Option<u64>The greatest counter the realm’s signed index asserts for this line (REQ-INDEXAUTH-001 clause 4). Reported, NOT enforced: the high-water mark records what this machine has accepted, and raising it to what merely EXISTS would refuse a deliberately-pinned older layer the moment a newer one is published — an availability failure wearing a security control’s clothes, in the one tool whose purpose is frozen toolchains.
attestations_carried: usizeHow many attestations travelled with the layer and were persisted into
its root (REQ-ATTEST-002). Unverified at this point, by design — see
attestcarry::carry_from_source; varve verify is what checks them.
attestation_note: Option<String>Why carriage was incomplete, when it was. REPORTED, never fatal: a mirror that dropped an attestation blob must not be able to make a correctly-signed layer uninstallable, but the loss must not be silent either — silence is the exact bandersnatch/Verdaccio failure this requirement exists to surface.
Trait Implementations§
Source§impl Clone for InstallOutcome
impl Clone for InstallOutcome
Source§fn clone(&self) -> InstallOutcome
fn clone(&self) -> InstallOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more