Общая память и работа агентов →

4 ноября 2026AI-first аналитика

Как проверить исправление агента

Я отправил своего Codex-агента в открытый эксперимент Рината Абдуллина — посмотреть, как агенты работают с общей памятью, и найти небольшую полезную задачу. Он исправил одну строку в инструменте наблюдения за рекордами. Больше всего работы оказалось вокруг этой строки: воспроизвести ошибку, проверить исправление в двух средах и убедиться, что в общей базе лежит именно проверенная версия.

Из этого получился небольшой рецепт для тех, кто поручает агентам менять код и общие инструменты.

Что сломалось

В эксперименте BitGN агенты участников дорабатывали программу, которая решала задачи интернет-магазина. Результаты запусков сравнивали с текущим рекордом. Один из общих инструментов, recordwatch, должен был находить завершённые запуски с более высокой оценкой.

У двух чисел были разные шкалы. Из результата запуска приходило значение от 0 до 1, а рекорд хранился по шкале от 0 до 100. Функция above() сравнивала их напрямую:

s > rec

Условный пример: новый результат — 0.96, рекорд — 94.7. Сравнение возвращает «нет», хотя 96 баллов больше 94,7.

В соседней функции того же инструмента шкалы уже приводились друг к другу и учитывалась погрешность вычислений. Агент применил тот же подход:

s * 100.0 > rec + 1e-6

Маленький допуск нужен, чтобы погрешность вычислений не превратила равенство в новый рекорд.

Как проверяли

Сначала агент сохранил исходную версию и подготовил проверки. Затем прогнал исходник и исправление. Это позволяло увидеть, что проверки действительно обнаруживают ошибку.

Набор проверокДо исправленияПосле
11 локальных проверок на границе SDK4 сбоя11 из 11 прошли
9 контрольных случаев в серверной среде Monty6 из 9 прошли9 из 9 прошли

Девять серверных случаев также выполнили на обычном Python и сопоставили результаты. Отдельно сверили изменение кода: одна строка, остальные определения не изменились.

После публикации агент открыл новую сессию и прочитал общий файл заново. Его содержимое совпало с проверенным исправлением. В пакет для других участников вошли исходник, исправление, проверки и инструкция воспроизведения.

При обновлении общей заметки возник конфликт с чужими изменениями. Агент сохранил свежую версию и добавил свою запись к ней. Передача результата включает и эту обязанность: сохранить работу, которая появилась, пока ты занимался своей задачей.

Что получилось

23 октября 2026 года исправление было опубликовано в общем инструменте. Проверки подтвердили, что на выбранных случаях функция правильно сравнивает оценки; новая сессия подтвердила содержимое опубликованной версии.

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

Как повторить на своей задаче

Для небольшой правки я бы оставлял следующему исполнителю такой комплект:

  1. Исходная версия и пример ошибки. Какой результат ожидали, какой получили и на каких входах.
  2. Исправление и сравнение версий. Что поменялось и почему изменение решает эту ошибку.
  3. Одинаковые проверки до и после. Ошибочный случай, границы и важное прежнее поведение. Если рабочая среда отличается от локальной, проверить существенные различия и там.
  4. Проверенная опубликованная версия. Прочитать результат из общего места и сверить его с тем, что проверяли.
  5. Продолжение. Где лежат материалы, что ещё неизвестно и какое свидетельство закроет следующий вопрос: ревью, включение в сборку или использование на реальной задаче.

У recordwatch первые четыре шага завершены, а пятый оставляет открытый вопрос: кто воспользовался исправлением и что это изменило в его работе? Такая запись помогает следующему агенту продолжить исследование с того места, до которого мы действительно дошли.

Источники

Кейс из открытого эксперимента Рината Абдуллина и участников BitGN. Вклад выполнен моим агентом kbad-davydov; проверки и публикация относятся к 23 октября 2026 года. Текст подготовлен по сохранённым материалам 4 ноября, новых запусков для статьи не выполняли.

Ссылки ведут в Brain; для чтения может потребоваться доступ к пространству.

При проверке 4 ноября 2026 сервер BitGN Brain отвечал HTTP 503. Исторические ссылки сохранены; разбор опирается на материалы, сохранённые во время исследования.