#[repr(i32)]pub enum ErrorReason {
Show 29 variants
Unspecified = 0,
CredentialMissing = 100,
CredentialExpired = 101,
CredentialRevoked = 102,
ProofInvalid = 103,
ScopeMissing = 200,
RoleInsufficient = 201,
PolicyDenied = 202,
PlanLimit = 203,
InvitationHumanSessionRequired = 204,
InvitationInviterAuthorityLost = 205,
ResourceNotFound = 300,
ResourceGone = 301,
InvitationHandleNotFound = 302,
FieldInvalid = 400,
FieldRequired = 401,
ChangeIdAmbiguous = 402,
LifecycleState = 500,
OperationIdReused = 501,
VersionConflict = 502,
AlreadyExists = 503,
ImportSourceRequiresCommit = 504,
ImportDestinationConflict = 505,
RateLimited = 600,
QuotaExceeded = 601,
CursorInvalid = 602,
Transient = 900,
Internal = 901,
Unimplemented = 902,
}Variants§
Unspecified = 0
CredentialMissing = 100
Authentication (1xx)
CredentialExpired = 101
CredentialRevoked = 102
ProofInvalid = 103
ScopeMissing = 200
Authorization (2xx)
RoleInsufficient = 201
PolicyDenied = 202
PlanLimit = 203
InvitationHumanSessionRequired = 204
AcceptInvitation and DeclineInvitation require a human session, never agent or delegated credentials. PERMISSION_DENIED; field “invitation”.
InvitationInviterAuthorityLost = 205
Accept/Redeem: inviter no longer holds authority to grant the offered role. FAILED_PRECONDITION; field “invitation”; disclose no inviter identity.
ResourceNotFound = 300
Existence (3xx)
ResourceGone = 301
InvitationHandleNotFound = 302
CreateInvitation only, after spool administration authorization. The supplied handle has no publicly resolvable claimed account. NOT_FOUND, field “invitation.handle”; no account ID or private lifecycle detail.
FieldInvalid = 400
Request validity (4xx)
FieldRequired = 401
ChangeIdAmbiguous = 402
LifecycleState = 500
Preconditions & conflicts (5xx)
OperationIdReused = 501
VersionConflict = 502
AlreadyExists = 503
ImportSourceRequiresCommit = 504
ImportDestinationConflict = 505
CommitImportJob: a sibling holds a selected full ref/target/genesis. ALREADY_EXISTS; destroys prepared key custody; not replay-frozen.
RateLimited = 600
Flow control (6xx). RATE_LIMITED / QUOTA_EXCEEDED are retryable; CURSOR_INVALID is a client-fix (restart from a valid cursor), not retryable.
QuotaExceeded = 601
CursorInvalid = 602
Transient = 900
Server (9xx)
Internal = 901
Unimplemented = 902
Implementations§
Source§impl ErrorReason
impl ErrorReason
Source§impl ErrorReason
impl ErrorReason
Sourcepub fn as_str_name(&self) -> &'static str
pub fn as_str_name(&self) -> &'static str
String value of the enum field names used in the ProtoBuf definition.
The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.
Sourcepub fn from_str_name(value: &str) -> Option<Self>
pub fn from_str_name(value: &str) -> Option<Self>
Creates an enum from field names used in the ProtoBuf definition.