Files
contracts-flask/History/opus-review-request-2026-06-28.md

33 lines
1.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Запрос 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** |
## Что проверь
1. **Контракты** (`contracts.py`) — правильные ли поля? Не упущено ли что-то важное из `elements_json`, `spec_current`, `ops`?
2. **DI**`llm_client` параметр с default-значением — корректно? Не сломает ли `convert_server.py` который не передаёт `llm_client`?
3. **Repository**`PgRepository` оборачивает `db/*.py`. Не дублирует ли логику? Правильно ли выбраны методы для фасада?
4. **Тесты** — 22 теста, все pass. Достаточно ли покрытия для Ф1-Ф3? Что добавить?
5. **Общее** — не упущена ли какая-то важная часть пайплайна? `process.py` / `grouping.py` ещё не затронуты — это ок для Ф1-Ф4 или надо было включить?
## Ответь кратко
- Что ок
- Что поправить
- Что добавить