pub mod exact;
pub mod fuzzy;
pub mod llm;
pub mod regex_tier;
use serde::{Deserialize, Serialize};
use crate::core::models::ClassificationMethod;
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
pub struct ClassificationResult {
pub category: String,
pub subcategory: Option<String>,
pub confidence: f64,
pub method: ClassificationMethod,
pub ticket_id: Option<String>,
}
impl ClassificationResult {
pub fn unclassified() -> Self {
Self {
category: "uncategorized".to_string(),
subcategory: None,
confidence: 0.0,
method: ClassificationMethod::FuzzyMatch,
ticket_id: None,
}
}
}