katlog.orgжурнал разработки Демо-каталогДемо
ПР001
Задание для ИИ2 мин чтения

32 пункта сверки: как проверять работу ИИ-агента

ИИ-агент написал систему по нашему описанию и сообщил, что всё готово. Проверка кода показала: многое потеряно, часть сделана наполовину. Рассказываем, как мы выстроили работу, чтобы это не повторялось.

Прототип нового каталога и настоящая система Katlog — это два разных кода. Прототип собирался в диалоге, а для постоянной работы понадобились сервер, база данных и вход по паролю. Мы описали всё словами, и ИИ-агент на платформе разработки написал систему заново.

Что потерялось при переносе

Первая версия выглядела непохоже и работала только на русском, хотя в задании прямо стояли три языка. Позже выяснилось больше: не работал блок «Рядом на полке», подборку нельзя было выгрузить в RIS, фильтры позволяли выбрать только одно значение, раздел «Качество данных» показывал одни числа. Полная сверка кода с прототипом дала 32 пункта расхождений.

Три неожиданности

  1. Задания не начиналисьАгент ждал подтверждения в интерфейсе платформы разработки. Наши запросы доходили, но без согласия владельца в работу не попадали.
  2. Агент потерял списокПосреди большой работы он попросил прислать пункты 1–32 снова: номера исчезли из его памяти.
  3. «Сделано» не значит «сделано правильно»Фильтр по темам был «готов», но сервер не знал разделитель « - », которым записаны все наши рубрики. Названия языков были сделаны для кодов «en», а в каталоге — «eng».
Файл docs/katlog-fixes.md в проекте: задание, сохранённое дословно
Первый шаг каждого задания — сохранить его дословно в файл проекта. Под текстом агент ведёт таблицу: пункт, статус, где в коде, как проверено.

Как мы работаем теперь

  • Первый шаг любого задания — сохранить его дословно в файл проекта. Например, docs/katlog-fixes.md. Список не теряется, даже если агент забывает контекст.
  • Таблица с отметкой по каждому пункту: сделано или нет, где в коде, как проверено.
  • Проверка по коду, а не по отчёту. Особенно там, где легче всего сделать «для вида»: настройки оформления, права доступа, подсчёты.
  • Задание — не больше, чем помещается в одно сообщение. У агента есть лимит длины, большие списки делим на части.
  • Живой тест библиотекаря. Ошибку с удалением записи нашёл не тест, а обычная работа с системой.
ГлавноеИИ-агент — сильный исполнитель, но склонен упрощать большие задания и молча пропускать детали. Ему нужен не контроль «на доверии», а понятный список и проверка каждого пункта.

Как выглядит задание, написанное по этим правилам, — в статье «Задание целиком: поиск описания по ISBN».

Хорошая новость

Когда процесс наладился, отчёты агента стали честными. В последнем он отдельно перечислил, что проверить не смог: работу со сканером штрихкодов и полный путь в браузере. Такой отчёт полезнее, чем «всё готово».