#[non_exhaustive]pub enum WalError {
SerializeFailed(String),
DeserializeFailed(String),
ChainBroken {
at_record: usize,
},
HashMismatch {
at_record: usize,
},
HeaderIncompatible(String),
InvalidVerifyingKey,
MissingSignature {
at_record: usize,
},
SignatureMismatch {
at_record: usize,
},
MissingPqcSignature {
at_record: usize,
},
PqcSignatureMismatch {
at_record: usize,
},
PqcWithoutEd25519,
}Expand description
WAL operation failures. #[non_exhaustive] — adding variants is
not a breaking change for external matchers.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
SerializeFailed(String)
Postcard refused to encode (carries the upstream message).
DeserializeFailed(String)
Postcard refused to decode (carries the upstream message).
ChainBroken
Record at_record’s prev_chain_hash doesn’t match the running
expected hash from the previous record.
HashMismatch
Record at_record’s this_chain_hash doesn’t match the
recomputed BLAKE3 keyed hash.
HeaderIncompatible(String)
Header pinning rejected (semver / abi / world / manifest mismatch).
InvalidVerifyingKey
Header pins a verifying_key (Ed25519 or PQC) that fails to parse.
MissingSignature
Header pins a verifying_key but a record carries no signature.
SignatureMismatch
Signature does not validate against the header’s verifying key.
MissingPqcSignature
Header pins a Hybrid envelope (verifying_key_pqc=Some) but a
record carries no PQC signature (signature_pqc=None).
PqcSignatureMismatch
PQC signature does not validate against the header’s PQC verifying key (Hybrid AND-mode failure).
PqcWithoutEd25519
Invalid Hybrid envelope — verifying_key_pqc=Some without
verifying_key=Some. Ed25519 is the chain-anchor companion;
PQC-only envelope is rejected.
Trait Implementations§
Source§impl Error for WalError
impl Error for WalError
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()