Запись архива

Почему ИИ пишет «готово», хотя ничего не проверил

Агент пишет «Готово», а сборка падает и тесты не запускались. Решение — заранее прописать критерии завершения задачи в промпте. Готовый блок внутри.

Агент рапортует «готово», но сборка падает и тесты красные

Знакомо: агент бодро рапортует «Готово», а на деле сборка падает, тесты вообще не
запускались. Для агента задача завершена, когда код выглядит правильно. Чтобы
«готово» означало результат, критерий завершения нужно задать заранее.

Агент рапортует «готово», но сборка падает и тесты красные

Корень проблемы

У агента нет встроенного понимания, что значит «закончить». По умолчанию он
считает работу сделанной, когда код похож на правильный. Отсюда ложные «готово»:
проект не собирается, тесты не гонялись, правка не проверена.

Решение: Definition of Done в промпте

Не спрашивайте «ты закончил?» — заранее определите, что значит «закончить».
Готовый блок для промпта:

Считай задачу завершённой, только когда:
- тесты прошли;
- проект собрался без ошибок;
- исправление проверено вручную;
- в финале перечислены изменённые файлы и риски.

Критерии зависят от задачи

Доказательство «готовности» подбирается под тип работы:

  • интерфейс → снимок экрана;
  • данные → контрольный файл с результатом;
  • исследование → ссылки на источники.

Главное правило: «Готово» = есть доказательства. Не описание процесса, а
проверяемый артефакт.

Итог

Ложное «готово» лечится не проверкой постфактум, а заранее заданным критерием
завершения. Пропишите Definition of Done в промпте — и агент начнёт приносить
результат, а не отчёт о хорошем самочувствии.

Источники

  • Практики: docs Claude Code (hooks, best practices).