1.7 KiB
1.7 KiB
Запрос Opus — ревью реализации decoupling
Дата: 28.06.2026
Что сделано (Ф1-Ф4)
Все по твоему плану:
| Фаза | Файлы | Суть |
|---|---|---|
| Ф1 | deploy/contracts.py, deploy/services/upload.py |
4 dataclass'а + parse_multipart + store_document |
| Ф2 | deploy/services/llm_client.py, deploy/services/llm.py, deploy/services/classify.py |
LLMClient.complete(prompt)->str + DI через параметр |
| Ф3 | deploy/repository.py |
Repository Protocol + PgRepository + MemRepository |
| Ф4 | deploy/conftest.py, deploy/tests/unit/*.py |
pytest: 22 юнит-теста, 22/22 PASS |
Что проверь
-
Контракты (
contracts.py) — правильные ли поля? Не упущено ли что-то важное изelements_json,spec_current,ops? -
DI —
llm_clientпараметр с default-значением — корректно? Не сломает лиconvert_server.pyкоторый не передаётllm_client? -
Repository —
PgRepositoryоборачиваетdb/*.py. Не дублирует ли логику? Правильно ли выбраны методы для фасада? -
Тесты — 22 теста, все pass. Достаточно ли покрытия для Ф1-Ф3? Что добавить?
-
Общее — не упущена ли какая-то важная часть пайплайна?
process.py/grouping.pyещё не затронуты — это ок для Ф1-Ф4 или надо было включить?
Ответь кратко
- Что ок
- Что поправить
- Что добавить