cadrumo.adapters.persistence.storage.bucket.errors module¶
Canonical typed exception hierarchy for the per-bucket directory model.
Each class carries a structured payload (active bucket id, holding PID,
conflicting bucket id, recovery context) so callers can render typed
diagnostics without re-parsing the message string. Every class inherits
from core.errors.hierarchy.CadrumoError; the project error registry’s
__init_subclass__ hook binds each subclass to its declared
core.errors.error_codes.ErrorCode row at import time.
- exception BucketError(message=None, *, context=None, translated_message=None)[source]¶
Bases:
SecureStorageErrorBase class for every per-bucket lifecycle error.
- Parameters:
- Return type:
None
- code¶
- exception BucketValidationError(message=None, *, context=None)[source]¶
Bases:
BucketErrorRaised when a bucket parameter fails validation.
- code¶
- exception BucketBusyError(*, bucket_id, holding_pid)[source]¶
Bases:
BucketErrorRaised when a second process attempts to unlock a held bucket.
Carries the holding PID so the caller can render the diagnostic without re-parsing the lockfile.
- code¶
- exception BucketAlreadyPresentError(*, bucket_id)[source]¶
Bases:
BucketErrorRaised when provisioning would collide with an existing bucket id.
Carries the conflicting bucket id.
- Parameters:
bucket_id (str)
- Return type:
None
- code¶
- exception BucketPathTooLongError(*, bucket_id, path)[source]¶
Bases:
BucketErrorRaised when provisioning a bucket directory exceeds the Windows
MAX_PATHceiling.Classified via
core.paths.is_windows_long_path_error()from a caughtWinError 3/WinError 206on legacy (non long-path-aware) Windows workstations. Distinct fromBucketValidationErrorso the CLI names the actual cause (the resolved bucket directory tree is too deep forMAX_PATH) instead of a generic validation failure.- code¶
- exception BucketLockedError(*, bucket_id)[source]¶
Bases:
BucketErrorRaised when an operation requires an unlocked
BucketSession.Carries the storage identity and the failed unlocked-state observation. Recovery policy belongs to the boundary because a bucket id is not a verified public profile-action argument.
- Parameters:
bucket_id (str)
- Return type:
None
- code¶