main
docs: правка ссылок на перемещённые docs/guide|dev файлы
refactor(231): scripts/ переструктурирован — gate.sh + guards/ + tools/ (указание владельца)
fix(№404, класс переносимости): бит исполнения выставлен всем 50 .sh (на Linux прямой вызов давал 126 — падали самотесты no-runtime-copy и build-test-identity) + check-ci-status выбирает интерпретатор по ФАКТУ исполнения (python3 в git-bash = заглушка Microsoft Store, python в Ubuntu отсутствует)
tools(221.1): check-build-test-identity — постоянный инструмент приёмки «build и test-build порождают одинаковый C»
gate: профиль по шагам — отметка времени на каждой строке лога + gate-profile.sh
реестр(№444): корень красного CI записан (путевые зависимости в манифесте примеров, polaris без тегов); insert-note.py принимает --before, как обещает справка
механизм(№482): пересборка после слияния — только если задет компилятор
тесты: ПРОСТАЯ СХЕМА (решение владельца) — два живых места вместо девяти; nova_tests -> nova_tests.old (885 файлов, архив; несущие CI contracts/doc остались на прежних путях); known_red удалён (обходом не виден никогда); три пробы из repro перенесены в standalone, C-контроль в scripts/tools; конвенции больше не ссылаются на неисполняемое; AGENTS.md больше не учит писать в замороженный корпус (№455)
реестр: №467 К1 — ro не различает заимствование и копию, это корень дыр №375/№387/№370; РЕШЕНИЕ: ro всегда заимствование, копия явная (.clone()), режим становится честным перечислением; fix(селфтест measure): переключатель, снимающий все ворота занятости — селфтест падал внутри гейта не по своей теме
уборка репозиториев: 118 веток -> 71, страж накопления в гейте, суточная задача
механизм: check-invariant-discipline — машинный энфорс нормы об инвариантах на ВЕСЬ проект; переносим (принимает корень аргументом), роздан в 6 пакетных реп через sync-guards-to-packages.sh с защитой от расхождения копий, подключён к pre-commit пакетов и к гейту nova; селфтест 7/7 поймал в самом страже три дефекта (не видел новых файлов, тысячи процессов на диффе, ловил сам себя)
реестр: №510 — Vec над обобщённой записью теряет тип элемента; обёртка предела времени (№475)