Expand description
Shared types, errors, and encoding helpers for the app-data migration synthesis path.
Structs§
- Canonical
Bootstrap Expectation - The receiver-side bootstrap expectation. The validator picks the comparison strategy per component:
Enums§
- Migration
Error - Errors produced by the synthesis functions in this module.
Functions§
- decode_
group_ membership_ delta - Decode a
GROUP_MEMBERSHIPwire payload (aTlsMapDelta<InboxId, VLBytes>of all-Insertmutations against an empty prior — bootstrap shape) back to aBTreeMap<InboxId, GroupMembershipEntry>. Used by the bootstrap validator to inspect the proposal payload. - decode_
group_ membership_ dict - Decode
GROUP_MEMBERSHIPdict-storage bytes (aTlsMap<InboxId, VLBytes>snapshot) back to aBTreeMap<InboxId, GroupMembershipEntry>. Used by readers walking the AppData dictionary post-bootstrap. - encode_
group_ membership_ delta - Encode
GROUP_MEMBERSHIPfor the bootstrap wire payload as aTlsMapDelta<InboxId, VLBytes>of all-Insertmutations — one per inbox, each value aGroupMembershipEntryenvelope (currently always wrapping aV1). - encode_
group_ membership_ dict - Encode
GROUP_MEMBERSHIPdict-storage bytes as aTlsMap<InboxId, VLBytes>snapshot. The dict always holds the raw map as state; this encoder is the symmetric ofdecode_group_membership_dictand is used by tests and by callers that need to construct expected dict bytes (the runtime path goes throughapply_app_data_update_payload, which produces the same snapshot from a wire delta). - synthesize_
canonical_ subset_ for_ validation - Compute the
CanonicalBootstrapExpectationfrom a pre-flip group’s state. Sync, fully local — no API calls — so every honest receiver produces bit-identical output. - synthesize_
canonical_ subset_ from_ extensions - Extensions-only variant of
synthesize_canonical_subset_for_validation. Lets tests exercise synthesis without standing up a real MLS group. - synthesize_
registry_ from_ policy_ set - Produce a populated
ComponentRegistryfrom the legacyPolicySetProto. Deterministic: every honest peer synthesizes bit-identical output from the same input.