pub struct VerifyReport {
pub conservation: ConservationReport,
pub hard: Vec<Blocker>,
pub advisory: Vec<Blocker>,
pub pending: usize,
pub unknown_basis_inbounds: usize,
pub safe_harbor: String,
pub declared_pre2025_method: LotMethod,
pub pre2025_method_attested: bool,
pub elections: Vec<ElectionLine>,
pub selection_count: usize,
pub compliance: Vec<DisposalCompliance>,
pub drift: Vec<String>,
}Expand description
Structured FR9 outcome (so tests assert on data, not stdout, and main keys the exit code).
Fields§
§conservation: ConservationReport§hard: Vec<Blocker>§advisory: Vec<Blocker>§pending: usize§unknown_basis_inbounds: usize§safe_harbor: String§declared_pre2025_method: LotMethodTask 8: declared pre2025_method from the CLI config (attested or not).
pre2025_method_attested: bool§elections: Vec<ElectionLine>Task 8: standing-order history (all MethodElection decisions, sorted by decision_seq).
selection_count: usizeTask 8: count of non-voided LotSelection decisions.
compliance: Vec<DisposalCompliance>Task 8: per-disposal compliance (post-2025 only).
drift: Vec<String>Task 11 (BG-D3): per-live-promote verify-drift advisory — the stored filed floor recomputed against CURRENT price data (overstated → conditional void+re-promote; understated → surfaced). Empty when no live promote drifts. Informational; never gates (the fold still uses the stored number).
Implementations§
Source§impl VerifyReport
impl VerifyReport
Sourcepub fn has_hard_blockers(&self) -> bool
pub fn has_hard_blockers(&self) -> bool
Non-zero exit condition (§7.1): any open hard blocker. (Conservation imbalance always coincides
with a hard blocker — uncovered_disposal — so the hard list is the single source of truth.)
Trait Implementations§
Source§impl Clone for VerifyReport
impl Clone for VerifyReport
Source§fn clone(&self) -> VerifyReport
fn clone(&self) -> VerifyReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more