# Запись решений сессии: per-step роутер (паркуется) + находка router-prehook

## Цель

Зафиксировать в протоколе сессии два результата обсуждения, чтобы не потерять: (1) концепцию
«per-step роутер» как будущий эпик (паркуется), (2) находку, почему классификатор тратит деньги
на каждое сообщение владельца. Это запись-решение (design-notes), не реализация фичи.

## Контекст (факты по коду, проверено)

- Классификатор `classify()` даёт ОДИН совет на ВЕСЬ план по тексту секции «Цель», не по шагам
  (`tools/router-classifier.mjs:627`).
- Per-файловая классификация существует только в дисциплине чтения для ГЕЙТИНГА, не для назначения
  скила (`tools/reading-discipline.mjs:44`).
- Классификатор дёргается на КАЖДОЕ сообщение владельца через UserPromptSubmit-хук
  (`tools/router-prehook.mjs:138`).
- «per-step nanny» был явным NON-GOAL в brain-governance §2.2.

## Решения

1. **Концепция per-step роутера (HVOST-PSR) — ПАРКУЕТСЯ как будущий эпик (вариант B).** Роутер
   должен советовать скил на КАЖДЫЙ пункт плана (по цели + формулировке) и эскалировать на
   владельца при отсутствии/слабости скила. Это осознанное переоткрытие non-goal §2.2. Сейчас НЕ
   строим — отдельная сессия (brainstorm → спека).
2. **router-prehook — источник трат на каждом сообщении.** Фикс — убрать `router-prehook` из
   `UserPromptSubmit` в USER-level `~/.claude/settings.json` (шаг владельца; `router-tool-gate`
   в способ-B не активен → удаление безопасно).

## Границы

- Per-step роутер в этой задаче НЕ проектируется и НЕ реализуется (только фиксируется как хвост).
- Правка `~/.claude/settings.json` — зона владельца, в этот план не входит.
- Меняем ТОЛЬКО документацию (протокол сессии); код/схему/миграции не трогаем.

## Критерий приёмки

В `docs/superpowers/session-protocol-2026-06-13.md` появился блок Р10 с обоими решениями и хвост
HVOST-PSR; больше ничего не изменено.

```verified-context-json
[{"id":"1","kind":"EXTRACTED","claim":"classify — один совет на весь план по тексту цели","ref":"tools/router-classifier.mjs:627","anchor":"export async function classify"},
{"id":"2","kind":"EXTRACTED","claim":"per-файловая классификация чтения для гейтинга, не для скила","ref":"tools/reading-discipline.mjs:44","anchor":"export function classifyReadingContent"},
{"id":"3","kind":"EXTRACTED","claim":"router-prehook зовёт classify на каждый prompt","ref":"tools/router-prehook.mjs:138","anchor":"const classification = await classify"}]
```
