Skip to main content

semifold_core/
error.rs

1use crate::{
2    ReleasePackageContextError, ReleasePlanError, ReleasePlannerError, VersioningError,
3    WorkspaceGraphError,
4};
5
6/// Aggregate error boundary for callers that compose multiple core domain operations.
7#[derive(Clone, Debug, Eq, PartialEq, thiserror::Error)]
8pub enum DomainError {
9    #[error(transparent)]
10    Workspace(#[from] WorkspaceGraphError),
11    #[error(transparent)]
12    ReleasePlanning(#[from] ReleasePlannerError),
13    #[error(transparent)]
14    ReleasePlan(#[from] ReleasePlanError),
15    #[error(transparent)]
16    Versioning(#[from] VersioningError),
17    #[error(transparent)]
18    ReleaseContext(#[from] ReleasePackageContextError),
19}