convergio_types/
errors.rs1#[derive(Debug, thiserror::Error)]
5pub enum ConvergioError {
6 #[error("database error: {0}")]
7 Db(String),
8
9 #[error("extension error: {module} — {message}")]
10 Extension { module: String, message: String },
11
12 #[error("dependency not satisfied: {capability} required by {requirer}")]
13 DependencyMissing {
14 capability: String,
15 requirer: String,
16 },
17
18 #[error("permission denied: {0}")]
19 PermissionDenied(String),
20
21 #[error("not found: {0}")]
22 NotFound(String),
23
24 #[error("validation error: {0}")]
25 Validation(String),
26
27 #[error("budget exceeded: {org} spent {spent:.2} of {limit:.2} USD")]
28 BudgetExceeded { org: String, spent: f64, limit: f64 },
29
30 #[error("{0}")]
31 Internal(String),
32}