pub enum RejectReason {
Show 25 variants
Malformed(String),
ProfileMismatch {
artifact: &'static str,
expected: String,
got: String,
},
SettledCarriesTransitions,
TransitionCount(usize),
PorType(String),
PorRejected(String),
WorkloadSignature(&'static str),
UntrustedCheckpoint,
PcaHashMismatch,
PredecessorType,
PredecessorHashMismatch,
PositionProgression,
ChallengeContinuity,
NextChallengeInvalid,
BitmapIndexOutOfRange(&'static str),
BitmapNotCanonical,
DuplicateAdditionKey(String),
InvalidAuthorityValue(String),
EmptyExecutionContract,
RequestBinding,
ContractConformance,
NonExpansion,
Revoked,
PolicyDenied,
RealmSignature(&'static str),
}Expand description
A semantic rejection: one of the Verifier or Prover checks failed.
Variants follow the settlement procedure of the Prover and Verifier specification (Section 3) so callers can map a rejection back to the exact spec check.
Variants§
Malformed(String)
The candidate could not be parsed into the expected artifact shape.
ProfileMismatch
An artifact declares a profile other than the one this crate
implements (crate::PROFILE_0_2).
Fields
SettledCarriesTransitions
A settled Continuity carried a non-null transitions member.
TransitionCount(usize)
A candidate Continuity carried a number of transitions other than exactly one.
PorType(String)
proof_of_relationship.type is not the type the validator accepts.
PorRejected(String)
The Proof of Relationship evidence failed validation.
WorkloadSignature(&'static str)
A workload signature over a candidate artifact did not verify.
UntrustedCheckpoint
root.pca is not the exact bytes of a currently trusted checkpoint.
PcaHashMismatch
The recomputed SHA-256 of root.pca differs from root.pca_hash.
PredecessorType
predecessor.type is not crate::PREDECESSOR_TYPE_PCA.
PredecessorHashMismatch
predecessor.hash does not match the trusted checkpoint bytes.
PositionProgression
The proposed position is not exactly checkpoint position + 1.
ChallengeContinuity
previous_challenge does not echo the checkpoint’s next_challenge.
NextChallengeInvalid
The proposed next_challenge is missing, empty, or not fresh.
BitmapIndexOutOfRange(&'static str)
A removal bitmap set a bit for an index the predecessor section does not have.
BitmapNotCanonical
A removal bitmap is empty or carries trailing zero bytes.
DuplicateAdditionKey(String)
Two execution-contract additions resolved to the same canonical key.
InvalidAuthorityValue(String)
An authority value is empty or not a valid canonical tuple value.
EmptyExecutionContract
The execution contract would end up with no attributes.
RequestBinding
Deployment-required request/execution binding failed.
ContractConformance
Executor evidence or execution-contract conformance failed.
NonExpansion
The materialized successor would carry authority its predecessor did not have.
Revoked
The continuity state is revoked.
PolicyDenied
Local deployment policy denied the advancement.
RealmSignature(&'static str)
A settlement-authority (realm) signature did not verify.
Trait Implementations§
Source§impl Clone for RejectReason
impl Clone for RejectReason
Source§fn clone(&self) -> RejectReason
fn clone(&self) -> RejectReason
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RejectReason
impl Debug for RejectReason
Source§impl Display for RejectReason
impl Display for RejectReason
impl Eq for RejectReason
Source§impl Error for RejectReason
impl Error for RejectReason
1.30.0 · 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()