hippmem_model/error.rs
1//! Model layer error types: 08 §6.
2
3/// Model operation error.
4#[derive(thiserror::Error, Debug)]
5pub enum ModelError {
6 /// Network or timeout error.
7 #[error("network/timeout: {0}")]
8 Network(String),
9
10 /// Authentication / missing key.
11 #[error("auth/missing key for backend {0}")]
12 Auth(String),
13
14 /// Rate limited.
15 #[error("rate limited")]
16 RateLimited,
17
18 /// Failed to parse model output.
19 #[error("parse model output: {0}")]
20 Parse(String),
21
22 /// Backend unavailable.
23 #[error("backend unavailable: {0}")]
24 Unavailable(String),
25}
26
27/// Model layer Result alias.
28pub type ModelResult<T> = Result<T, ModelError>;