Expand description
Vendored cross-vault wire types carried by LinkedMandate.vault_mutation.
These types originate in the cross-vault federation layer of the
reference implementation. They are vendored here so an APH envelope can
carry a VaultMutationMandate without an external dependency. Their
serde output MUST match the originating implementation byte-for-byte —
every attribute below is load-bearing wire shape:
VaultMutationKindis internally tagged:#[serde(tag = "kind", rename_all = "PascalCase")]. Therename_allapplies to VARIANT names only (already PascalCase); struct-variant FIELDS keep their snake_case Rust names on the wire (e.g.{"kind":"WriteInto","dest_vault_id":"..."}).VaultMutationMandatehas NOrename_all: its fields serialize askind,grant_scope_id, and (when present)ap2_signed_payload_b64.- The ID newtypes are
#[serde(transparent)]/ newtype structs and serialize as bare JSON strings.
Structs§
- GrantId
- Stable identifier for a cross-vault grant. Wire form: 36-char UUID hex-dashed string.
- Principal
DidUri - Wire-form view of a principal DID URI.
- Vault
IdStr - Wire-form view of a vault identifier (36-char UUID hex-dashed).
- Vault
Mutation Mandate - Body of the
LinkedMandate.vault_mutationfield on the APHNotarizationEnvelope.
Enums§
- Vault
Mutation Kind - What kind of cross-vault mutation the APH envelope is notarizing.