Продолжим про вайбкодинг
Продолжим про вайбкодинг Условно так выглядит часть моего промта для рефакторинга # Операционный план рефакторинга ## 1. Анализ текущего состояния кода ### 1.1. Поиск дублирующегося кода - [ ] Проанализировать модули API на предмет дублирования логики авторизации - [ ] Проверить повторяющиеся паттерны в обработке ошибок - [ ] Найти дубли в валидации входных данных - [ ] Проверить повторное использование кода работы с БД ### 1.2. Анализ архитектурных решений - [ ] Проверить использование сессий SQLAlchemy и аналогоч - [ ] Оценить текущее состояние миграций БД - [ ] Проанализировать модуль очередей - [ ] Проверить модуль конфигурации ### 1.3. Анализ тестов - [ ] Проверить изоляцию тестов - [ ] Найти дублирующиеся тестовые сценарии - [ ] Оценить покрытие кода тестами - [ ] Проверить тесты E2E на соответствие лучшим практикам ## 2. Идентификация проблем ### 2.1. Проблемы с логикой - [ ] Неконсистентное использование user_id - [ ] Проблемы с валидацией JWT токенов - [ ] Ошибки в обработке task_id очереди - [ ] Несогласованность между документацией и кодом ### 2.2. Проблемы с изоляцией тестов - [ ] Проверить использование временных БД в тестах - [ ] Оценить корректность работы моков и фикстур - [ ] Проверить параллельный запуск тестов - [ ] Найти тесты с побочными эффектами ### 2.3. Проблемы с производительностью - [ ] Оценить эффективность кеширования - [ ] Проверить работу - [ ] Проанализировать блокировки и race conditions ## 3. План рефакторинга ### 3.1. Устранение дублирования кода - [ ] Создать универсальный декоратор для авторизации - [ ] Вынести общую логику валидации в отдельные модули - [ ] Централизовать обработку ошибок через api/error_messages.py - [ ] Создать базовые классы для CRUD операций ### 3.2. Улучшение архитектуры - [ ] Пересмотреть слой зависимостей - [ ] Улучшить структуру конфигурации - [ ] Обновить систему миграций БД - [ ] Рефакторинг модуля очередей для лучшей масштабируемости ### 3.3. Улучшение тестов - [ ] Создать фикстуры для изоляции тестов - [ ] Переписать дублирующиеся тесты с использованием параметризации - [ ] Добавить тесты на граничные условия - [ ] Улучшить покрытие тестами критических участков кода ### 3.4. Документирование изменений - [ ] Обновить AGENTS.md с информацией о рефакторинге - [ ] Добавить информацию о рефакторинге в соответствующие документы в docs/ - [ ] Создать checklist изменений для команды ## 4. Реализация ### 4.1. Рефакторинг модуля авторизации - [ ] Централизовать валидацию токенов - [ ] Унифицировать работу с сессиями - [ ] Обновить OAuth обработчики ### 4.2. Рефакторинг API - [ ] Пересмотреть маршруты и middleware - [ ] Улучшить структуру зависимостей - [ ] Централизовать обработку ошибок ### 4.3. Рефакторинг бизнес-логики - [ ] Улучшить модуль - [ ] Пересмотреть расчет - [ ] Улучшить модуль ### 4.4. Рефакторинг тестов - [ ] Переписать тесты безопасности - [ ] Обновить тесты плана рефакторинга - [ ] Улучшить E2E тесты ## 5. Верификация и тестирование ### 5.1. Проверка корректности изменений - [ ] Прогнать все существующие тесты - [ ] Добавить новые тесты для измененных модулей - [ ] Проверить обратную совместимость API ### 5.2. Производственные тесты - [ ] Проверить производительность после рефакторинга - [ ] Убедиться в отсутствии регрессий - [ ] Проверить стабильность работы системы под нагрузкой ## 6. Мониторинг и сопровождение ### 6.1. Добавление мониторинга - [ ] Настроить логирование изменений - [ ] Добавить метрики для отслеживания состояния системы - [ ] Создать дашборды для мониторинга ключевых показателей ### 6.2. Документация - [ ] Обновить все связанные документы - [ ] Создать руководство по использованию рефакторинга - [ ] Добавить информацию в базу знаний (AGENTS.md) Хочешь ещё моих фишек? Напиши в ЛС свои )