- - Если coverage падает – дописываем тесты.
- - Фиксим только одну задачу за раз (no multitasking).
💡 Ключевой принцип: LLM не пишет код "в свободном полете" – она получает:
- Четкий Todolist (что делать).
- Интерфейсы (как должно работать).
- Тесты (критерии корректности).
📌 Пример промпта для LLM: > "У нас есть интерфейс UserRepository и тест should save user to DB. Coverage сейчас 75%. Реализуй PostgresUserRepository для закрытия пункта Todolist. Код должен проходить все тесты. Предложи фиксы, если coverage упадет."
🔥 Итог: Такой подход превращает LLM в предсказуемого "инженера", а не в генератор случайного кода.