use thiserror::Error;
#[derive(Debug, Error)]
pub enum CheckpointError {
#[error("Serialization failed: {0}")]
SerializationFailed(String),
#[error("Deserialization failed: {0}")]
DeserializationFailed(String),
#[error("Unsupported checkpoint version {found}, supported: {supported}")]
UnsupportedVersion { found: u32, supported: u32 },
#[error("Checkpoint validation failed: {0}")]
ValidationFailed(String),
}