Skip to main content

allow_report/artifacts/
explain.rs

1use allow_core::{AllowEntry, Finding, MatchOutcome};
2
3use crate::InventoryContext;
4
5#[derive(Debug, Clone, Copy, Default)]
6pub struct EvidenceReference<'a> {
7    pub raw: &'a str,
8    pub prefix: Option<&'a str>,
9    pub target: Option<&'a str>,
10    pub status: &'a str,
11    pub message: &'a str,
12}
13
14#[derive(Debug, Clone, Copy)]
15pub struct ExplainReport<'a> {
16    pub inventory: InventoryContext<'a>,
17    pub entry: &'a AllowEntry,
18    pub selector_precision: u32,
19    pub broad_scope: bool,
20    pub current_findings: &'a [Finding],
21    pub match_outcomes: &'a [MatchOutcome],
22    pub evidence_references: &'a [EvidenceReference<'a>],
23    pub suggested_actions: &'a [String],
24    pub proof_commands: &'a [String],
25}