Полное руководство по обработке ошибок в RusToK находится в docs/standards/errors.md.
RusToK использует унифицированный тип RichError (RFC 7807 compatible) с категориями:
| HTTP | Категория | Когда использовать |
|---|---|---|
| 400 | Validation |
Ошибки валидации входных данных |
| 401 | Unauthenticated |
Требуется аутентификация |
| 403 | Forbidden |
Нет прав доступа |
| 404 | NotFound |
Ресурс не найден |
| 409 | Conflict |
Дублирование или race condition |
| 429 | RateLimited |
Превышен лимит запросов |
| 500 | Internal |
Неожиданная ошибка |
| 502/503 | ExternalService |
Ошибка внешнего сервиса |
| 504 | Timeout |
Таймаут запроса |
- Все функции, которые могут упасть, возвращают
Result<T, RusToKError>. - Использование
.unwrap()/.expect()запрещено (кроме тестов). - Внутренние ошибки не раскрываются клиенту — только
user_message. - Для трассировки используется
request_idиз контекста запроса.