pub struct BundleDescriptor {
pub schema: BundleSchema,
pub manifest_schema: ManifestSchema,
pub run_ids: Vec<String>,
pub divisions: Vec<String>,
pub counts: BTreeMap<String, DivisionCounts>,
pub coverage: BTreeMap<String, DivisionCoverage>,
pub checksums_hash: String,
}Expand description
The BUNDLE.json contents. The seven-field set is the frozen bundle@1 shape.
The descriptor carries no timestamp, so packaging or merging the same inputs again is byte-identical.
Fields§
§schema: BundleSchemaThe literal string text-mirror/bundle@1.
manifest_schema: ManifestSchemaThe manifest schema every shard record carries.
run_ids: Vec<String>Bytewise-sorted identifiers of the runs whose outcomes the bundle carries, each matching the run id grammar. A run identifier is the BLAKE3 hex of the division’s shard bytes at packaging time, so it names the exact outcome set and stays byte-identical across re-runs.
divisions: Vec<String>Bytewise-sorted division names.
counts: BTreeMap<String, DivisionCounts>Per-division counts over every shard line, superseded records included, so a shard trimmed of history fails verification.
coverage: BTreeMap<String, DivisionCoverage>Per-division coverage over effective records only, the true denominator.
checksums_hash: StringBLAKE3 hex of the exact bytes of checksums.b3. This chain detects corruption and partial transfer, and it does not detect tampering, because nothing signs BUNDLE.json.
Trait Implementations§
Source§impl Clone for BundleDescriptor
impl Clone for BundleDescriptor
Source§impl Debug for BundleDescriptor
impl Debug for BundleDescriptor
Source§impl<'de> Deserialize<'de> for BundleDescriptor
impl<'de> Deserialize<'de> for BundleDescriptor
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>,
Source§impl PartialEq for BundleDescriptor
impl PartialEq for BundleDescriptor
Source§impl Serialize for BundleDescriptor
impl Serialize for BundleDescriptor
impl StructuralPartialEq for BundleDescriptor
Auto Trait Implementations§
impl Freeze for BundleDescriptor
impl RefUnwindSafe for BundleDescriptor
impl Send for BundleDescriptor
impl Sync for BundleDescriptor
impl Unpin for BundleDescriptor
impl UnsafeUnpin for BundleDescriptor
impl UnwindSafe for BundleDescriptor
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
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more