# Исправление декораторов авторизации - 2025-08-12 ## Проблема Ошибка в логах: `TypeError: Cannot return null for non-nullable field Author.slug` ## Анализ Проблема была в декораторах авторизации `login_required` и `login_accepted` в файле `services/auth.py`. Эти декораторы пытались создавать `Author` объекты при проверке авторизации, что приводило к возврату объектов с пустыми полями, включая `slug = None`. ## Решение 1. **Убрал логику создания Author объектов** в декораторе `login_required` 2. **Убрал логику создания Author объектов** в декораторе `login_accepted` 3. **Убрал установку `author = None`** в контексте ## Изменения в файлах - `services/auth.py` - убрана логика создания автора в декораторах - `requirements.dev.txt` - удалена зависимость pre-commit - `.pre-commit-config.yaml` - удален файл конфигурации - `.git/hooks/pre-commit` - удален hook ## Принцип Авторы должны создаваться только в резолверах при необходимости, а не в декораторах авторизации. Декораторы должны только проверять права доступа. ## Коммиты - `503bbc1` - fix: remove author creation from auth decorators - `2b1c3c2` - chore: remove pre-commit configuration and dependencies - `c8ff24e` - chore: remove pre-commit-config.yaml file ## Статус ✅ Исправлено - декораторы авторизации больше не создают Author объекты ✅ Убрано - все настройки pre-commit удалены ✅ Протестировано - тесты проходят успешно ## Следующие шаги 1. Протестировать на staging сервере 2. Проверить, что ошибка `Author.slug` больше не возникает 3. При необходимости добавить создание автора в конкретных резолверах