# Спека: прогон цикла согласования M7 (2026-06-13, run2)

## Цель

После возврата M7 и регистрации L1-наставника проверить в СВЕЖЕЙ сессии весь
цикл согласования end-to-end: спека → судья gate1 GO → печать артефакта; план →
наставник (L1) даёт вердикт/замечания → судья (L2) GO → печать плана; затем шаг
плана проходит стену. Главное, что проверяем: наставник (L1) теперь реально
поднимается (в прошлом прогоне его хук не был зарегистрирован — «шёл без ментора»).

## Решение {#sanity-run2}

Прогнать минимальный, обратимый, реальный цикл: эта спека печатается артефактом;
план с одним ref-less шагом проходит L1 (наставник) и L2 (судья); шаг создаёт
маркер-заметку `docs/observer/notes/2026-06-13-print-sanity-run2.md`. Маркер —
наблюдаемое доказательство: если Write маркера проходит стену, значит план
запечатался (стена пускает только покрытое запечатанным планом).

## Проверяемость

GREEN: Write маркера по шагу плана НЕ блокируется стеной. По пути наблюдаемы:
артефакт — gate1 не заблокировал spec-Write; наставник (L1) — реальный вердикт
(в логе «Agent mentor», запись `gate2-post` в seal-attempts); план — шаг прошёл.
RED: блок на шаге → причина в seal-attempts.jsonl (cause/wired/sealed/reason).

## Риск исполнения

Низкий и обратимый. Один Write нового doc-файла (маркер), не discipline-код, не
необратимое. Артефакты (спека, план, маркер run2) — тривиально удаляемы. Живые
вызовы судьи (gate1+gate2) и наставника (L1) — расход незначителен. Коммит —
отдельный шаг владельца.
