use std::path::PathBuf;
use thiserror::Error;
#[derive(Debug, Error)]
#[non_exhaustive]
pub enum ExecutionScopeError {
#[error("invalid execution scope name `{name}`")]
InvalidName {
name: String,
},
#[error("failed to format execution scope creation timestamp")]
Timestamp {
#[source]
source: time::error::Format,
},
#[error("failed to {operation} execution scope at `{path}`")]
Io {
operation: &'static str,
path: PathBuf,
#[source]
source: std::io::Error,
},
#[error("could not allocate a unique execution scope beneath `{root}`")]
IdentityExhausted {
root: PathBuf,
},
}