use apalis_core::task::{status::StatusError, task_id::TaskIdError};
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error(transparent)]
Database(#[from] redis::RedisError),
#[error("JsonError: {0}")]
Json(serde_json::Error),
#[error("ReenqueueMismatch: Queued [{queued}] , Abandoned[{abandoned}] ")]
ReenqueueMismatch {
queued: usize,
abandoned: usize,
},
#[error("TaskIdError: {0}")]
TaskIdError(TaskIdError),
#[error("StatusError: {0}")]
StatusError(StatusError),
#[error("WorkerOutOfSync")]
WorkerOutOfSync,
#[error("WorkerAlreadyExists: {0}")]
WorkerAlreadyExists(String),
}