core.errors.common_error¶
src.core.errors.common_error
¶
Common error classes used across all domains and layers.
These are generic errors that don't belong to any specific domain. They are used throughout the application for common failure scenarios.
Error Types: - ValidationError: Input validation failures - NotFoundError: Resource not found - ConflictError: Resource conflicts (duplicates, state conflicts) - AuthenticationError: Authentication failures - AuthorizationError: Authorization failures (no permission)
Usage
from src.core.errors import ValidationError, NotFoundError from src.core.enums import ErrorCode from src.core.result import Failure
return Failure(ValidationError( code=ErrorCode.INVALID_EMAIL, message="Invalid email format", field="email" ))
Classes¶
ValidationError
dataclass
¶
Bases: DomainError
Input validation failure.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
ErrorCode
|
ErrorCode enum. |
message |
str
|
Human-readable message. |
field |
str | None
|
Field name that failed validation. |
details |
dict[str, str] | None
|
Additional context. |
Source code in src/core/errors/common_error.py
NotFoundError
dataclass
¶
Bases: DomainError
Resource not found.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
ErrorCode
|
ErrorCode enum. |
message |
str
|
Human-readable message. |
resource_type |
str
|
Type of resource (User, Account, etc.). |
resource_id |
str
|
ID of the resource that was not found. |
details |
dict[str, str] | None
|
Additional context. |
Source code in src/core/errors/common_error.py
ConflictError
dataclass
¶
Bases: DomainError
Resource conflict (duplicate, state conflict).
Attributes:
| Name | Type | Description |
|---|---|---|
code |
ErrorCode
|
ErrorCode enum. |
message |
str
|
Human-readable message. |
resource_type |
str
|
Type of resource in conflict. |
conflicting_field |
str | None
|
Field that has conflict (email, account_id, etc.). |
details |
dict[str, str] | None
|
Additional context. |
Source code in src/core/errors/common_error.py
AuthenticationError
dataclass
¶
Bases: DomainError
Authentication failure (invalid credentials, token expired).
Attributes:
| Name | Type | Description |
|---|---|---|
code |
ErrorCode
|
ErrorCode enum. |
message |
str
|
Human-readable message. |
details |
dict[str, str] | None
|
Additional context. |
Source code in src/core/errors/common_error.py
AuthorizationError
dataclass
¶
Bases: DomainError
Authorization failure (no permission).
Attributes:
| Name | Type | Description |
|---|---|---|
code |
ErrorCode
|
ErrorCode enum. |
message |
str
|
Human-readable message. |
required_permission |
str | None
|
Permission that was required. |
details |
dict[str, str] | None
|
Additional context. |