use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub struct DecisionRecord {
pub decision_id: String,
pub invocation_id: String,
pub decision: DecisionKind,
pub risk_score: u8,
pub reasons: Vec<String>,
pub policy_ids: Vec<String>,
pub created_at: i64,
}
#[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq, Eq, Hash)]
#[non_exhaustive]
#[serde(rename_all = "PascalCase")]
pub enum DecisionKind {
Allow,
Deny,
Approve,
}