use thiserror::Error;
#[derive(Debug, Error)]
pub enum LifecycleError {
#[error("Not found: {0}")]
NotFound(String),
#[error("Invalid configuration: {0}")]
InvalidConfig(String),
#[error("A/B test error: {0}")]
ABTest(String),
#[error("Drift detection error: {0}")]
Drift(String),
#[error("Persistence error: {0}")]
Persistence(String),
}
pub type Result<T> = std::result::Result<T, LifecycleError>;