use thiserror::Error;
#[derive(Debug, Error)]
pub enum Error {
#[error("storage error: {0}")]
Storage(#[from] slatedb::Error),
#[error("serialization error: {0}")]
Serialization(#[from] rmp_serde::encode::Error),
#[error("deserialization error: {0}")]
Deserialization(#[from] rmp_serde::decode::Error),
#[error("job not found: {0}")]
JobNotFound(String),
#[error("job is not in the expected state")]
InvalidState,
#[error("kv value too large: {size} bytes (max {max})")]
KvValueTooLarge {
size: usize,
max: usize,
},
}
pub type Result<T> = std::result::Result<T, Error>;