1use thiserror::Error;
4
5#[derive(Debug, Error)]
7#[allow(missing_docs)] pub enum VerifyError {
9 #[error("Timing leak detected: t-value {t_value:.2} exceeds threshold {threshold:.2}")]
11 TimingLeakDetected { t_value: f64, threshold: f64 },
12
13 #[error("Need at least {required} samples, got {provided}")]
15 InsufficientSamples { required: usize, provided: usize },
16
17 #[error("Test execution failed: {reason}")]
19 ExecutionFailed { reason: String },
20
21 #[error("Memory at offset {offset} not zeroized: expected 0x00, got 0x{actual:02X}")]
23 MemoryNotZeroized { offset: usize, actual: u8 },
24
25 #[error("Property violation: {property}")]
27 PropertyViolation { property: String },
28
29 #[error("Report generation failed: {reason}")]
31 ReportGenerationFailed { reason: String },
32}
33
34pub type VerifyResult<T> = Result<T, VerifyError>;