pub type CircleSnapshotMeta = Signed<CircleSnapshotMetaBody>;Aliased Type§
pub struct CircleSnapshotMeta { /* private fields */ }Implementations§
Source§impl CircleSnapshotMeta
impl CircleSnapshotMeta
pub fn signed( store_root_hash: ObjectHash, circle_id: CircleId, author_registration: StoreDeviceRegistrationRef, control: CircleControlCoord, epoch_id: CircleEpochId, key_fingerprint: KeyFingerprint, generation: u64, bootstrap: CircleBootstrapRef, created_at: String, successor: CircleSnapshotSuccessorLink, device_signer: &UserKeypair, ) -> Result<Self, StoreProtocolError>
pub fn snapshot_hash(&self) -> ObjectHash
pub fn semantic_hash_from_bytes( bytes: &[u8], ) -> Result<ObjectHash, StoreProtocolError>
Sourcepub fn parse_at(
bytes: &[u8],
expected_store_root_hash: ObjectHash,
expected: &CircleSnapshotRef,
author: &StoreDeviceRegistration,
) -> Result<Self, StoreProtocolError>
pub fn parse_at( bytes: &[u8], expected_store_root_hash: ObjectHash, expected: &CircleSnapshotRef, author: &StoreDeviceRegistration, ) -> Result<Self, StoreProtocolError>
Verify one exact Circle snapshot against its expected reference and author registration. The successor’s stream activation is not recomputed here: a Circle snapshot stream has no per-(device, Circle) first slot in the registration for a reader to derive, so the create-once successor slot and predecessor chain establish stream position, exactly as the Circle acknowledgement stream does.