#[non_exhaustive]pub enum OrgError {
Show 28 variants
AdminNotFound {
org: String,
},
MemberNotFound {
org: String,
did: String,
},
AlreadyRevoked {
did: String,
},
InvalidCapability {
cap: String,
reason: String,
},
InvalidDid(String),
InvalidPublicKey(String),
Signing(String),
Identity(String),
KeyStorage(String),
Storage(RegistryError),
Anchor(AnchorError),
OrgThresholdDelegationUnsupported {
org: String,
},
MemberKeyExists {
alias: String,
},
MemberNotDelegable {
did: String,
org: String,
},
CryptoError(AgentError),
Delegation(InitError),
IdentityExists {
location: String,
},
IdentityInit(InitError),
Attestation(AttestationError),
BundleIntegrity {
id: String,
reason: String,
},
BundleMissingMemberKel {
member: String,
},
BundleMissingDelegatorSeal {
member: String,
},
PolicyCompile {
reason: String,
},
PolicyBlobMissing {
hash: String,
},
PolicyIntegrity {
expected: String,
actual: String,
},
ChainCycle {
did: String,
},
ChainTooDeep {
max: u32,
},
ChainBrokenHop {
did: String,
},
}Expand description
Errors from organization member management workflows.
Usage:
match result {
Err(OrgError::AdminNotFound { .. }) => { /* 403 Forbidden */ }
Err(OrgError::MemberNotFound { .. }) => { /* 404 Not Found */ }
Err(e) => return Err(e.into()),
Ok(att) => { /* proceed */ }
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AdminNotFound
No admin matching the given public key was found in the organization.
MemberNotFound
The specified member was not found in the organization.
Fields
AlreadyRevoked
The member has already been revoked.
InvalidCapability
The capability string could not be parsed.
InvalidDid(String)
The organization DID is malformed.
InvalidPublicKey(String)
The hex-encoded public key is invalid.
Signing(String)
A signing operation failed while creating or revoking an attestation.
Identity(String)
The identity could not be loaded from storage.
KeyStorage(String)
A key storage operation failed.
Storage(RegistryError)
A storage operation failed.
Anchor(AnchorError)
KEL anchoring failed.
OrgThresholdDelegationUnsupported
The organization’s controller threshold is kt≥2 (multi-signature).
KERI-native member delegation currently anchors single-author (kt=1)
interaction events only; multi-sig org anchoring is a tracked follow-up.
MemberKeyExists
A key already exists under the requested member alias — minting a member there would clobber an existing delegated key. Choose a fresh alias.
MemberNotDelegable
The supplied member identity is not a delegated identifier of this org —
its delegated inception (dip) does not name the org as delegator, so the
org cannot off-board it. Fail closed.
CryptoError(AgentError)
A cryptographic operation failed (e.g. resolving the org key’s curve).
Delegation(InitError)
Authoring or anchoring the member’s delegated identifier failed.
IdentityExists
An identity already exists where the org would be created — refusing to clobber it.
IdentityInit(InitError)
Initializing the organization’s KERI identity failed.
Attestation(AttestationError)
Creating the organization’s admin self-attestation failed.
BundleIntegrity
An air-gapped bundle event failed its self-addressing integrity check —
recomputing the SAID did not match the stored d (the bundle was tampered).
BundleMissingMemberKel
The bundle delegates a member on the org KEL but omits that member’s own KEL — the bundle is incomplete and cannot be verified. Fail closed.
BundleMissingDelegatorSeal
The queried member has no delegation seal in the org KEL — the org never delegated it, so there is no authority to verify. Fail closed.
PolicyCompile
The supplied org policy did not parse or compile (invalid JSON, an invalid DID/capability/glob, or it exceeds the policy size/complexity bounds). A policy that does not compile is never anchored — fail closed.
PolicyBlobMissing
The org KEL anchors a policy hash but its content-addressed blob is missing — the policy cannot be loaded, so authority cannot be evaluated. Fail closed.
PolicyIntegrity
The loaded policy blob does not hash to the value the org KEL committed — the blob was tampered with after anchoring. Fail closed.
Fields
ChainCycle
A delegation chain walk followed a di link back to an identifier already on
the chain — a cyclic/malformed delegation. Fail closed (no infinite loop).
ChainTooDeep
A delegation chain exceeds the maximum hop depth the walker will follow.
ChainBrokenHop
A delegation chain names a delegator/identifier whose KEL is absent from storage — the chain cannot be reconstructed. Fail closed.
Trait Implementations§
Source§impl AuthsErrorInfo for OrgError
impl AuthsErrorInfo for OrgError
Source§fn error_code(&self) -> &'static str
fn error_code(&self) -> &'static str
Source§fn suggestion(&self) -> Option<&'static str>
fn suggestion(&self) -> Option<&'static str>
Source§impl Error for OrgError
impl Error for OrgError
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()
Source§impl From<AnchorError> for OrgError
impl From<AnchorError> for OrgError
Source§fn from(source: AnchorError) -> Self
fn from(source: AnchorError) -> Self
Source§impl From<OrgError> for ComplianceQueryError
impl From<OrgError> for ComplianceQueryError
Auto Trait Implementations§
impl !RefUnwindSafe for OrgError
impl !UnwindSafe for OrgError
impl Freeze for OrgError
impl Send for OrgError
impl Sync for OrgError
impl Unpin for OrgError
impl UnsafeUnpin for OrgError
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.