#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
#[non_exhaustive]
pub enum AuditSignalType {
PolicyViolation,
PromptInjectionPattern,
ToolChainAnomaly,
ConfidenceDrop,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
#[non_exhaustive]
pub enum Severity {
Low,
Medium,
High,
}
#[derive(Debug, Clone, Copy)]
pub struct AuditSignal {
pub signal_type: AuditSignalType,
pub severity: Severity,
}
impl AuditSignal {
#[must_use]
pub const fn new(signal_type: AuditSignalType, severity: Severity) -> Self {
Self {
signal_type,
severity,
}
}
}