#[non_exhaustive]pub enum RegistryMergeError {
InvalidPrefix {
id: String,
reason: String,
},
SourceKel {
prefix: Prefix,
source: KelResolveError,
},
MissingSignature {
prefix: Prefix,
sequence: u128,
},
Unauthenticated {
prefix: Prefix,
reason: String,
},
Forked {
prefix: Prefix,
sequence: u128,
destination: Said,
incoming: Said,
},
Storage(RegistryError),
CredentialRefused {
issuer: Prefix,
credential: Said,
reason: String,
},
CredentialOrphan {
issuer: Prefix,
credential: Said,
},
TelRefused {
issuer: Prefix,
registry: Said,
credential: Said,
reason: String,
},
}Expand description
Why a registry merge was refused. Any error aborts the whole merge — a pull never partially trusts a source that failed one identity’s checks.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidPrefix
The source listed an identity whose id is not a valid prefix.
SourceKel
Reading the source KEL failed the untrusted-read guards (not-found / oversized / truncated / prefix-binding).
MissingSignature
An event in the source KEL has no signature attachment — it cannot be authenticated, so it is never persisted.
Unauthenticated
The source KEL failed authenticated replay (bad signature, broken chain, unauthorized delegation, …).
Forked
Source and destination disagree at a shared sequence — a fork. Refused outright; a merge never picks a side of a fork.
Fields
Storage(RegistryError)
A backend read/write failed.
CredentialRefused
A source credential blob did not parse as a stored ACDC envelope, or its recomputed SAID did not match the SAID it was filed under — a tampered or malformed credential body is refused rather than copied onto the cold machine.
Fields
CredentialOrphan
A source credential names an issuer whose KEL was not authenticated in this merge — a credential with no anchoring identity is never imported.
TelRefused
A source TEL chain failed structural validation (a recomputed event SAID
did not match, or the vcp → iss… → rev… shape was broken) — a tampered
TEL is refused rather than copied.
Trait Implementations§
Source§impl Debug for RegistryMergeError
impl Debug for RegistryMergeError
Source§impl Display for RegistryMergeError
impl Display for RegistryMergeError
Source§impl Error for RegistryMergeError
impl Error for RegistryMergeError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()