Skip to main content

NotAuthoritativeReason

Enum NotAuthoritativeReason 

Source
pub enum NotAuthoritativeReason {
Show 19 variants ReceiptSignatureInvalid, SignerNotAdmitted, NotMediatedDecision, NotPreventBoundary, ObservationOutcomePresent, NotMediatedTrustLevel, NotAllowDecision, MissingBudgetAuthority, HoldNotReconciled, ExposureNotCommitted, NonceLinkMissing, NonceLinkMismatch, ReservedHoldMismatch, NonceBindingMismatch { field: &'static str, }, NonceSignatureInvalid, MissingOrWrongMediatedSpendProfile, GuaranteeLevelBelowFloor { minimum: String, actual: String, }, UnknownGuaranteeFloor { minimum: String, }, UnknownGuaranteeLevel { actual: String, },
}
Expand description

Distinct rejection reasons; each of the (a)-(f) conjunction fragments maps to at least one variant so a conformance matrix can flip them independently.

Variants§

§

ReceiptSignatureInvalid

§

SignerNotAdmitted

§

NotMediatedDecision

§

NotPreventBoundary

§

ObservationOutcomePresent

§

NotMediatedTrustLevel

§

NotAllowDecision

§

MissingBudgetAuthority

§

HoldNotReconciled

§

ExposureNotCommitted

§

NonceLinkMissing

§

NonceLinkMismatch

§

ReservedHoldMismatch

The presented nonce cryptographically names a reserved budget hold that differs from the receipt’s committed budget_authority.hold_id. The nonce id links the two artifacts, but the hold the nonce reserved is not the hold this receipt settled, so the receipt is not authoritative for the presented nonce. Fail-closed on this cross-binding inconsistency.

§

NonceBindingMismatch

Fields

§field: &'static str
§

NonceSignatureInvalid

§

MissingOrWrongMediatedSpendProfile

The receipt’s budget-authority block does not pin the frozen MEDIATED_SPEND_PROFILE, so its contract shape is unversioned or a different version than the consumer requires.

§

GuaranteeLevelBelowFloor

The receipt’s guarantee level is weaker than the operator-configured floor (R4 truthfulness). Unrelated to TrustLevel::Mediated.

Fields

§minimum: String
§actual: String
§

UnknownGuaranteeFloor

The operator-configured guarantee floor is not a recognized level, so it cannot be ranked. Fail-closed rather than admitting every receipt.

Fields

§minimum: String
§

UnknownGuaranteeLevel

The receipt’s own guarantee level is not a recognized level, so its truthfulness claim cannot be ranked. An unrecognized level ranks as the weakest, which would silently clear the weakest valid floor; fail-closed instead so a typoed or forged level never passes as authoritative.

Fields

§actual: String

Trait Implementations§

Source§

impl Clone for NotAuthoritativeReason

Source§

fn clone(&self) -> NotAuthoritativeReason

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for NotAuthoritativeReason

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Eq for NotAuthoritativeReason

Source§

impl PartialEq for NotAuthoritativeReason

Source§

fn eq(&self, other: &NotAuthoritativeReason) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for NotAuthoritativeReason

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.