entrenar/storage/registry/error.rs
1//! Registry error types
2
3use thiserror::Error;
4
5use super::stage::ModelStage;
6
7/// Registry errors
8#[derive(Debug, Error)]
9pub enum RegistryError {
10 #[error("Model not found: {0}")]
11 ModelNotFound(String),
12
13 #[error("Version not found: {0} v{1}")]
14 VersionNotFound(String, u32),
15
16 #[error("Invalid stage transition from {0} to {1}")]
17 InvalidTransition(ModelStage, ModelStage),
18
19 #[error("Policy check failed: {0}")]
20 PolicyFailed(String),
21
22 #[error("Registry error: {0}")]
23 Internal(String),
24}
25
26/// Result type for registry operations
27pub type Result<T> = std::result::Result<T, RegistryError>;