5b909844e2
Находка М-408. Охота, шедшая со смены 21, закрыта. Открылось не поиском. Смена 29 по своей ошибке сделала пробный коммит и откатила его одной командой `git reset --soft HEAD~1` — голова уехала на ДВА коммита назад, и работа целой смены осталась в индексе вне истории. Журнал ссылок показал две записи `reset: moving to HEAD~1` подряд при одной поданной команде. Проверено вторично, на другой команде: `git reset --soft <номер>` подан один раз — в журнале снова ДВЕ записи. Задвоение не случайность и не разовый сбой среды. ЧЕМ ЭТО ОБЪЯСНЯЕТ ПРЕЖНЕГО БЛИЗНЕЦА ЦЕЛИКОМ. Смены 21-29 искали его у коммита и описывали так: «второй коммит с тем же заголовком, внутри один docs/observer/STATUS.md». Теперь ясно: задваивается любая команда git, а между двумя заходами успевает отработать хук status-md-generator — он переписывает STATUS.md и оставляет его в индексе. Второму заходу коммита есть что коммитить: ровно этот один файл. ⇒ Лечение, найденное сменами вслепую («снимать STATUS.md из индекса ПЕРЕД коммитом»), работало по правильной причине, но закрывало следствие. Двенадцать чистых коммитов подряд — не отсутствие близнеца, а ОБЕЗОРУЖЕННЫЙ близнец. Правило снятия — в силе. 251. ЛЮБАЯ КОМАНДА GIT МОЖЕТ ИСПОЛНИТЬСЯ ДВАЖДЫ. ЗАДАВАЙ ЕЁ ТАК, ЧТОБЫ ВТОРОЙ РАЗ НИЧЕГО НЕ МЕНЯЛ. Откат — только абсолютным адресом, никогда `HEAD~1`. У коммита задвоение безвредно; у относительного отката оно съело работу целой смены. 252. ОТЧЁТ КОМАНДЫ О САМОЙ СЕБЕ ДОКАЗАТЕЛЬСТВОМ НЕ ЯВЛЯЕТСЯ. `git log` внутри той же строки показал верную голову — второй заход случился ПОЗЖЕ. Перемеряй следующей командой. Своя четвёртая ошибка за смену, названная честно: пробный коммит был сделан на предположении «коммитить нечего» вместо замера. Хук уже положил STATUS.md в индекс. Ошибка вскрыла близнеца — но ошибкой быть не перестала. 🪤 Попутно: ловушка GIT_TRACE2_EVENT на боевом коммите файла не создала, причина НЕ УСТАНОВЛЕНА. Замерено, что сама она исправна: пишет на `git status`, на `git commit` и в связке с `rm`. Не гадаю; второй датчик (история, `sort | uniq -d`) дал тот же ответ. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>