- Replaced @TIER: TRIVIAL with @COMPLEXITY: 1 - Replaced @TIER: STANDARD with @COMPLEXITY: 3 - Replaced @TIER: CRITICAL with @COMPLEXITY: 5 - Manually elevated specific critical/complex components to levels 2 and 4 - Ignored legacy, specs, and node_modules directories - Updated generated semantic map
38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
# [DEF:clean_release_exceptions:Module]
|
|
# @COMPLEXITY: 3
|
|
# @PURPOSE: Domain exceptions for clean release compliance subsystem.
|
|
# @LAYER: Domain
|
|
|
|
class CleanReleaseError(Exception):
|
|
"""Base exception for clean release subsystem."""
|
|
pass
|
|
|
|
class CandidateNotFoundError(CleanReleaseError):
|
|
"""Raised when a release candidate is not found."""
|
|
pass
|
|
|
|
class IllegalTransitionError(CleanReleaseError):
|
|
"""Raised when a forbidden lifecycle transition is attempted."""
|
|
pass
|
|
|
|
class ManifestImmutableError(CleanReleaseError):
|
|
"""Raised when an attempt is made to mutate an existing manifest."""
|
|
pass
|
|
|
|
class PolicyResolutionError(CleanReleaseError):
|
|
"""Raised when trusted policy or registry cannot be resolved."""
|
|
pass
|
|
|
|
class ComplianceRunError(CleanReleaseError):
|
|
"""Raised when a compliance run fails or is invalid."""
|
|
pass
|
|
|
|
class ApprovalGateError(CleanReleaseError):
|
|
"""Raised when approval requirements are not met."""
|
|
pass
|
|
|
|
class PublicationGateError(CleanReleaseError):
|
|
"""Raised when publication requirements are not met."""
|
|
pass
|
|
|
|
# [/DEF:clean_release_exceptions:Module] |