Решили: готча об инструменте живёт хуком на этом инструменте, а не записью в памяти агента.
Заведены два PreToolUse-гейта: guard-execute-code.py (запрет using-директив и
AssetDatabase.SaveAssets()) и guard-asset-writes.py (запрет правки .asset/.prefab/.unity/ .anim/.controller при живом редакторе).
Почему: обе готчи были записаны — и обе продолжали срабатывать. Замер по архиву 212
разговоров (02.08.2026): using наверху ловился провалившимся вызовом в 27 разговорах за три
недели, SaveAssets() вызван 01.08 агентом, который процитировал правило против него в том же ходу.
Отвергли очевидную альтернативу — «записать лучше, ярче, ещё раз»: пять записей об одном
compile-check уже доказали, что дело не в формулировке. Память читается на старте сессии, а ошибка
совершается на сороковом вызове: знание приходит ПОСЛЕ провала.
Правило про ассеты вдобавок было единственным HARD-правилом без гейта при самой высокой цене нарушения: правка не падает и не ругается, она молча теряется, потому что Unity перезаписывает файл своей версией из памяти.
Грабли: ложная блокировка дороже пропущенного случая — она учит обходить хук. Поэтому намеренно
НЕ ловим alias-директиву (using Foo = System.Bar;): дёшево отличить её от законного
using var x = new Foo(); не выходит. По той же причине список расширений ассетов — ровно пять из
HARD-правила, ни одним больше. Прецедент отвергнутого варианта старше: первая версия
deny-broad-staging грепала весь payload и блокировала команду, лишь УПОМЯНУВШУЮ git add -A
(отвергнута 30.07.2026).
Ровно эту же ошибку сейчас повторяет inline-хук напоминания о журнале в .claude/settings.json: он
устроен как grep -q 'git commit' по всему событию вместе с выводом, и срабатывает без всякого
коммита — проверено echo со словами «git commit». Урок был усвоён для одного хука и не применён к
соседнему. Не чинилось этим заходом: ждёт вердикта вместе с остальными корнями разбора.
Владелец правды: .claude/hooks/guard-execute-code.py,
.claude/hooks/guard-asset-writes.py, реестр — .claude/settings.json.
Разбор, из которого пришли оба, — docs/pipeline-tooling-progress.md.