⌂ все дашборды/Качество и аудиты← Parasite-Activity-Audit · Review-After-Rail →
Разбор 43 красных тестов — 23.08.2026

Разбор 43 красных тестов регресс-сетки

Хаб A-2022BAYAREA · ночь 22→23 августа 2026 · сессия red-tests-43 · 29 коммитов
43красных было
11красных стало
32закрыто
8настоящих дыр расписано ниже
(всего их больше — см. коммиты)
445тестов прогнано
зелёных 434 из 445 · цель мандата была «красных ≤15»

Настоящие поломки, которые прятались за красными лампочками

Конфликт-копии движков разъезжались по флоту

У X.sync-conflict-….py то же расширение, что у движка, поэтому whitelist .stignore ловил её первой. Замер: local.ignored=false. Замок поставлен, посылка на 6 узлов, хаб применил.

Диспетчер выдавал 20 сессий при капе 6

Починки классов шли «вне капа» с обоснованием «они редкие» — а в очереди стояло 14. Плюс один taskId дублировался между двумя лейнами: две сессии на один id.

Сторож зависших LLM-вызовов не совпадал НИ РАЗУ

Искал gemini -p, а парсер отдаёт имя бинарника отдельно от аргументов. Находил ноль и штатно молчал — то есть выглядел здоровым. Заведён он был после случая, когда вызов прожил 5ч48м и блокировал живую сессию.

Аудит рутин неделю объявлял мёртвыми ЖИВЫЕ

Импортировал функции, удалённые при переписывании дашборда 21.08 → карта кодов пустая → 267009 «выполняется прямо сейчас» читался как смерть. После фикса: 734 рутины, с транзиентными кодами 16, красных среди них 0.

Счётчик Firefox-vs-Chrome льстил Лисе

Исход blocked (отбой Cloudflare) молча шёл в успех: 2 удачи + 1 отбой давали 100%, а не 66.7%. Сам тест при этом писал в БОЕВОЙ счётчик — в отчёте флота завёлся фантомный узел TEST-NODE и уехал по синку. Это цифры, по которым решается вопрос про Firefox.

Секреты ChatGPT-рельсы на Windows не были защищены ничем

chmod 0600 на Windows декоративен: проходит без ошибки, режим остаётся 0o666. Теперь ACL. Замер: было SYSTEM + Администраторы + владелец, стало ровно одна строка — владелец.

Одно разрешение SKILL.md открывало дверь всем скиллам

Заморозка стройки узнавала запчасть по имени файла, а у каждого скилла оно одно и то же. Исключение, выданное когда-то под один скилл, пропускало ЛЮБОЙ новый — молча.

«Не для меня» врало и было необратимо

Инструмент печатал «список НЕ глушу» и тут же гасил свою же посылку; лекарством называл механизм, которого в коде нет. Отката не существовало: один неверный вызов навсегда прятал настоящий долг узла.

Класс, который просит механизм (§5.10: порог пройден)

Четыре датированных случая за одни сутки: удалили публичную функцию — молча осиротел тот, кто её импортировал. Импорт падал в except, и вместо ошибки получалась тихая деградация: пустая карта, ложный вердикт, мёртвый сторож.

ГдеЧто осиротело
expected_exit_codes.jsonвторая копия карты потеряла читателя и разошлась с каноном
rule_liveness.pyустаревшая копия писала фикстуры в общую боевую базу ночного алярма
_test_fleet_run_status.pyдва дня падал AttributeError, не проверив ни байта
fleet_routines_audit.pyнеделю красил живые рутины в 🔴

Панель ломателей нашла то, чего не нашли ни я, ни 43 теста

3 из 3 рельс ответили, все три вердикта COUNTER

Подтвердилась одна находка: моё правило стояло без префикса (?d), и я защитил это рассуждением вместо проверки. Без него игнорируемый файл не даёт удалить каталог — шара встала бы с вечной ошибкой «directory not empty». Исправлено тем же заходом. Три другие находки отведены замером: ACL не отнимает чтение у владельца; пустая MACHINE_BUS_DIR не трогает dual-send; build_freeze не ломается на слэшах и регистре.

Что осталось красным — 11, каждая с причиной

ТестПочему не закрытЧей ход
_test_ask_once_wiring
_test_journal_scan
_test_skill_refs
правились ПАРАЛЛЕЛЬНОЙ сессией этой же ночью; не лезу, чтобы не драться за один файлсоседняя сессия
_test_consensus_s10 ×2кандидат-движок S10 стоит в стейджинге 25 дней и уже регрессирует: живой даёт 48/48, staged 44/48 — потерян proof-gate. Зелёным делать НЕЛЬЗЯрешение Антона
_test_scripts_sharescripts/.git анонсирует узел HP17, офлайн с 14.08. Наш фильтр исправен; закроется посылкой, когда он подключитсяофлайн-узел
_test_rule_home_guard_doorвердикт дверей описан в §8.6, но в коде его нет; регресс старше 16 дней — уже заведён соседней сессиейзаведено
_test_claude_fleet_stageв git-канал флота едут только .gitignore и CLAUDE.md. Упирается в ПЕР-МАШИННЫЙ .gitignore, чья путаница 19.08 уже стоила трёх суток мёртвых снапшотов — вслепую не трогаюотдельная сессия
_test_dr_start6 параллельных заказов на Windows: часть падает PermissionError на общем реестре. POSIX разрешает конкурентное открытие, Windows блокирует — гонка за реестр на Windows НЕ закрытаотдельная сессия
_test_content_publish_contract1 из 14: «живая копилка: контрактного разрыва нет», rc=3отдельная сессия
_test_pipeline_stage_ownersв approved/ 4 поста без маршрута — контентный долг, не кодконтент

Нужны руки Антона — одна команда, не срочно

Битый симлинк в общей временной папке красил СЕМЬ pytest-тестов: они проходили все свои проверки и всё равно отдавали не-ноль. Обошёл через conftest.py, никого больше не блокирует, но сам симлинк снимается только из терминала с правами администратора:

rmdir "%LOCALAPPDATA%\Temp\pytest-of-Anton\pytest-current"