#[non_exhaustive]pub enum OrgError {
Show 27 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),
Bundle(OrgBundleError),
PolicyCompile {
reason: String,
},
OidcPolicyInvalid {
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.
Bundle(OrgBundleError)
An air-gapped bundle failed offline verification (tampered event, missing
member KEL, missing delegation seal, or an invalid off-boarding record).
The fail-closed detail is the typed auths_verifier::org_bundle::OrgBundleError.
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.
OidcPolicyInvalid
The supplied OIDC-subject policy did not parse (invalid JSON or empty required fields). A policy that does not parse 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<OrgBundleError> for OrgError
impl From<OrgBundleError> for OrgError
Source§fn from(source: OrgBundleError) -> Self
fn from(source: OrgBundleError) -> 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.