1use thiserror::Error;
4
5#[derive(Error, Debug)]
7pub enum AnalysisError {
8 #[error("Behavioral analysis failed: {0}")]
9 BehavioralAnalysis(String),
10
11 #[error("Policy verification failed: {0}")]
12 PolicyVerification(String),
13
14 #[error("LTL checking failed: {0}")]
15 LTLCheck(String),
16
17 #[error("Invalid input: {0}")]
18 InvalidInput(String),
19
20 #[error("Configuration error: {0}")]
21 Configuration(String),
22
23 #[error("Temporal attractor error: {0}")]
24 TemporalAttractor(String),
25
26 #[error("Neural solver error: {0}")]
27 NeuralSolver(String),
28
29 #[error("Core error: {0}")]
30 Core(#[from] aimds_core::error::AimdsError),
31
32 #[error("Internal error: {0}")]
33 Internal(String),
34}
35
36pub type AnalysisResult<T> = Result<T, AnalysisError>;