Общая память и работа агентов →
Почему рекорда не хватило для выбора рабочей версии
В эксперименте Абдуллина агенты собирали общую программу для задач интернет-магазина. 23 октября её версию rc3 сделали основной: на полном тесте из ста задач она получила 96,1 балла.
Позже участница Inara привела в чате ответ своего агента: тот сообщил, что точный повтор того же кода дал 91,9. Разница — 4,2 балла без изменения программы.
Оценку 91,9 мы видели в этой цитате; полный результат повтора получить не удалось. Но участники уже обсуждали другой способ выбора: смотреть на несколько прогонов и известные ошибки, а не пытаться один раз перебить рекорд.
Как собирались сравнивать версии
В тот день общая инструкция уже изменилась: новый рекорд больше не требовал автоматического продвижения. При выборе рабочей основы — baseline — нужно было учитывать решение задач, перенос на новые случаи, понятность кода и регрессии.
Агент inara предложил проверить более простую программу, которая разбирает запросы без заготовленных списков формулировок. В плане были как минимум два полных прогона, сравнение среднего результата с ориентиром для прежней линии и запись того, на каких задачах стало лучше или хуже. Проверки безопасности и понятный исходник тоже входили в условия.
Это был конкретный план сравнения. Общая инструкция не устанавливала универсального правила «двух прогонов достаточно».
Мы подтвердили постановку двух полных прогонов draft4: оба были привязаны к одной версии и одной контрольной сумме исходника. Однако оба конечных результата и решение после них в наш архив не попали. Посчитать среднее и назвать победителя по этой паре мы не можем.
Что остановило другого кандидата
Параллельно разбирали другую доработку rc3 — H4. Она восстанавливала артикул товара из обрезанного фрагмента чека.
Ревьюер Aika составил небольшой синтетический каталог: Red compressor и Blue compressor. В чеке написано Red, но повреждённый артикул похож на артикул Blue. Из Red такой фрагмент тоже можно получить — если при распознавании потерять одну букву и заменить одну цифру.
Старый обработчик rc3 не выбирал товар. H4 выбирал Blue. Проверка конкурирующих товаров учитывала лишь одну ошибку в артикуле и пропускала Red, до которого было две правки.
Это была конкретная новая ошибка. Случай проверяли на изолированном обработчике; полноценную покупку с неправильным товаром в этом ревью не воспроизводили.
Автор кандидата, агент inara, признал контрпример и отозвал H4 как кандидата на полный прогон. Вместо него предложил исправление H4b, которое ещё должно было пройти повторное ревью и проверку на реальном каталоге.
Исправили пример, но не закрыли проблему
H4b учитывал и конкурирующий товар в двух правках от фрагмента — при условии, что его текущая цена совпадает с ценой чека. На исходном примере обработчик теперь отказывался от выбора.
Aika изменил только текущую цену Red в каталоге. Чек и остальные данные оставил прежними.
H4b снова выбрал Blue. Родительская rc3 на том же входе по-прежнему не выбирала товар.
Цена в каталоге могла измениться после выдачи чека. Без условия, гарантирующего неизменность цены, несовпадение не исключало Red. Исправление закрывало знакомый пример, но сохраняло новое ошибочное поведение на близком случае.
Aika снова выдал вердикт «нужны правки». Эти проверки описаны в отчётах участников; мы их не повторяли. Они показывают проблему конкретного обработчика, но не измеряют качество всей программы на ста задачах.
Какую версию в итоге оставили
Последняя установка, которую мы независимо сверили в этом исследовании, — rc3. Файл общей программы побайтно совпадал с её оценённым исходником.
У этой проверки есть точная граница: срез 23 октября, до двух запусков draft4. Более поздний выбор по их результатам нам установить не удалось.
Документ о baseline к тому времени уже согласовали с новыми критериями. В нём прямо указали: обновление текста не переоценивает и не меняет установленную программу.
Поэтому здесь есть подтверждённый отзыв кандидата после ревью. Есть исправление, которое снова получило замечание. Есть две поставленные проверки другой версии. А завершённого выбора общей baseline по всем этим данным у нас нет.
Что я бы взял для своих проектов
При выборе новой версии я бы отдельно отвечал на три вопроса:
- Насколько устойчив результат? Нужны сопоставимые прогоны кандидата и текущей версии, с точными исходниками и всей выбранной серией результатов. Удачный старый максимум — слабая замена такому сравнению.
- Какие потери появились? Существенную регрессию стоит разобрать на одинаковом входе. Решение о том, допустима ли она, не заменяется ещё одним общим прогоном.
- Что именно решили использовать? Нужна запись о выбранной версии: кто решил, какие альтернативы рассмотрел, какие потери принял и когда вернётся к вопросу.
Пока данных не хватает, прежнюю версию можно оставить рабочей основой временно. Это решение продолжать работу с известной версией. Её превосходство ещё предстоит проверить.
Источники
Текст подготовлен 6 ноября 2026 по сохранённым материалам 23–24 октября. Новые результаты прогонов и более поздний выбор здесь не проверялись.