# Step 2: Перенос compare/ → app/services/ **Ветка:** `feature/flask-migration` **Дата:** 2026-07-14 ## Что делаем Копируем бизнес-логику из `deploy/compare/*.py` → `app/services/`. ## Переносим (чистая логика, без HTTP) - `parse.py` — парсинг PDF/DOCX - `classify.py` — LLM-классификация - `grouping.py` — группировка документов - `llm.py` — вызов LLM для сравнения - `llm_client.py` — протокол + httpx + fake - `metrics.py` — проверка арифметики ## НЕ переносим (привязаны к HTTP, будут переписаны в blueprints) - `upload.py` — использует cgi.FieldStorage - `unzip.py` — читает rfile.read() - `process.py` — SSE через callback ## Правки импортов Было → стало: - `from db import documents` → `from app.db import documents` - `from .parse import parse_file` → `from app.services.parse import parse_file` - `from llm_prompt import ...` → `from app.llm_prompt import ...` - `from .llm_client import ...` → `from app.services.llm_client import ...` - `from .metrics import ...` → `from app.services.metrics import ...`