use std::collections::HashSet;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Deserialize, Serialize, PartialEq, Eq, Hash)]
#[serde(rename_all = "kebab-case")]
pub enum NodeKind {
Aeo,
AgentCard,
ToolCard,
DecisionCard,
IncidentCard,
Vendor,
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct IncidentCard {
pub incident_id: String,
pub summary: String,
pub severity: String,
pub affected_documents: Vec<String>,
#[serde(default)]
pub notes: Option<String>,
}
impl IncidentCard {
#[must_use]
pub fn affected_set(&self) -> HashSet<String> {
self.affected_documents.iter().cloned().collect()
}
}