aeat.core.locks_errors module

Typed errors raised by the cross-platform file-lock helpers.

Lives separately from core.locks so callers that only need the exception type (e.g. for except clauses) avoid pulling in the locking implementation and its OS-specific imports.

This module declares only the generic OS sidecar-lock failure raised by core.locks.exclusive_file_lock(). Crash-recoverable auth acquisition locks, bucket PID lockfiles, and secure-storage session guards expose their own typed errors because they carry holder metadata, TTL/recovery state, or custody semantics that this primitive does not own.

exception LockAcquisitionError(message=None, *, context=None, suggestion=None, translated_message=None)[source]

Bases: AeatError

Raised when an exclusive file lock cannot be acquired within the timeout.

Bound to a registered core.errors.ErrorCode so callers can present a stable error identifier rather than a raw message. The registry classifies it as LOCKED and retryable, meaning a later bounded retry may succeed after another process releases the OS lock. It does not imply automatic stale-lock deletion or unbounded retry.

Parameters:
  • message (str | None)

  • context (dict[str, object] | None)

  • suggestion (str | None)

  • translated_message (str | None)

Return type:

None

code: ClassVar[ErrorCode]