Parent
Часть плана модульной декомпозиции: #489
Контекст
Фасады db/models.py (166 строк) и db/integration.py (100 строк) — тонкие реэкспорты из modules/. Они были необходимы для Strangler Fig миграции, но сейчас все реальные сервисы и модели живут в modules/.
Однако потребители не мигрированы на прямые импорты:
db/models.py импортируется из 8+ файлов: orchestrator.py, alembic/env.py, auth_manager.py, тесты, скрипты
db/integration.py импортируется из 15+ файлов: orchestrator.py, auth_manager.py, multi_bot_manager.py, whatsapp_bot/, telegram handlers, modules/core/startup.py, modules/channels/startup.py
Что нужно
- Заменить
from db.models import X → from modules.{domain}.models import X во всех файлах кроме:
- Заменить
from db.integration import X → from modules.{domain}.service import X во всех файлах кроме:
db/integration.py (сам фасад)
- После миграции оба фасада должны иметь 0 внешних потребителей (кроме Alembic-миграций для
db/models)
Порядок
По одному домену за коммит, начиная с листовых (claude_code, kanban, ecommerce).
Критерии готовности
Зависимости
Нет.
Оценка: L (3-5 PR)
Parent
Часть плана модульной декомпозиции: #489
Контекст
Фасады
db/models.py(166 строк) иdb/integration.py(100 строк) — тонкие реэкспорты изmodules/. Они были необходимы для Strangler Fig миграции, но сейчас все реальные сервисы и модели живут вmodules/.Однако потребители не мигрированы на прямые импорты:
db/models.pyимпортируется из 8+ файлов:orchestrator.py,alembic/env.py,auth_manager.py, тесты, скриптыdb/integration.pyимпортируется из 15+ файлов:orchestrator.py,auth_manager.py,multi_bot_manager.py,whatsapp_bot/, telegram handlers,modules/core/startup.py,modules/channels/startup.pyЧто нужно
from db.models import X→from modules.{domain}.models import Xво всех файлах кроме:db/integration.py(сам фасад)db/models.py(сам фасад)from db.integration import X→from modules.{domain}.service import Xво всех файлах кроме:db/integration.py(сам фасад)db/models)Порядок
По одному домену за коммит, начиная с листовых (claude_code, kanban, ecommerce).
Критерии готовности
modules/не импортирует изdb/integration.pymodules/не импортирует изdb/models.pyorchestrator.py,auth_manager.py, скрипты мигрированы на прямые импортыtelegram_bot/,whatsapp_bot/) мигрированыdb/models.pyостаётся для Alembic-миграций (read-only)Зависимости
Нет.
Оценка: L (3-5 PR)