1use thiserror::Error;
2
3#[derive(Debug, Error)]
5pub enum ConfigError {
6 #[error("failed to parse config: {0}")]
8 Parse(String),
9
10 #[error("invalid value for '{key}': {message}")]
12 InvalidValue { key: String, message: String },
13
14 #[error("threshold override for '{category}' is missing the required 'expires' field")]
16 MissingExpiresOnOverride { category: String },
17
18 #[error("I/O error reading config: {0}")]
20 Io(#[from] std::io::Error),
21
22 #[error("failed to parse boundary spec: {0}")]
24 BoundaryParse(String),
25}