pub struct AuditFile {
pub meta: AuditMeta,
pub entries: Vec<Entry>,
}Expand description
The persisted state of one audit run: everything needed to resume, and
nothing that would make two runs of sample with the same --seed
disagree with each other.
Fields§
§meta: AuditMetaThe seed and sample size that produced this file.
entries: Vec<Entry>Every sampled tool, reviewed or not, in file order.
Implementations§
Source§impl AuditFile
impl AuditFile
Sourcepub fn pending(&self) -> impl Iterator<Item = usize> + '_
pub fn pending(&self) -> impl Iterator<Item = usize> + '_
Indices of entries with no verdict yet, in file order — the ordered
walk both xtask audit review and mandible --review follow, so an
interrupted session resumes at the same entry regardless of which of
the two last touched the file.
Sourcepub fn needing_attention(&self) -> impl Iterator<Item = usize> + '_
pub fn needing_attention(&self) -> impl Iterator<Item = usize> + '_
Indices of entries a review session should still stop at, in file
order: everything Self::pending yields, plus anything already
judged wrong/incomplete whose note is missing or blank
(verdict_requires_note).
The second half exists because such an entry is a record that is incomplete even though a verdict was given. For accuracy arithmetic it counts as judged and always did — the tool really was judged wrong — but for the triage the audit exists to feed it is useless: it names a tool and says nothing about what was wrong with it. Rather than a separate repair command, the ordinary walk simply stops there again, so a session that recorded bare verdicts before this rule existed heals itself on the next run.