Skip to main content

fierros_core/
error.rs

1use thiserror::Error;
2
3pub type FierrosResult<T> = Result<T, FierrosError>;
4
5#[derive(Debug, Error, Clone, PartialEq, Eq)]
6pub enum FierrosError {
7    #[error("configuration error: {0}")]
8    Configuration(String),
9
10    #[error("invalid input: {0}")]
11    InvalidInput(String),
12
13    #[error("provider error: {0}")]
14    Provider(String),
15
16    #[error("retrieval error: {0}")]
17    Retrieval(String),
18
19    #[error("graph error: {0}")]
20    Graph(String),
21
22    #[error("tool error: {0}")]
23    Tool(String),
24
25    #[error("policy error: {0}")]
26    Policy(String),
27
28    #[error("evaluation error: {0}")]
29    Eval(String),
30
31    #[error("internal error: {0}")]
32    Internal(String),
33}