29287d73c9
ops-runbook:<hash> (деплой) и commit:<hash> (коммит агентом) открываются ТОЛЬКО терминальным грантом владельца (origin:owner-terminal + валидная подпись, ключ обязателен — fail-closed #KEY), не chat floor_escape — Поза 1. loadPlanScopedGrants переписан как loadTerminalGrants + фильтр по префиксу (origin/подпись/нижняя граница в одном месте, DRY). Мосты blessed-ops/commit-grant не тронуты (читают через те же обёртки). Тесты загрузчиков переписаны под новый контракт. Спека §B/§KEY/§CRIT6. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>