#[derive(Debug, thiserror::Error)]
pub enum SorterError {
#[error("sort I/O error: {0}")]
Io(#[from] async_fs_io::FsError),
#[error("sort row encode failed: {0}")]
Encode(String),
#[error("sort row decode failed: {0}")]
Decode(String),
#[error("sort exceeds the maximum number of spill runs")]
RunLimit,
#[error("sort session cannot continue after a failed or cancelled spill")]
SessionFailed,
#[error("sort governor is not running")]
Gone,
}