feat(session-inbox-monitor): resolve received-msg FP via option (b) [human-ratified]

Root cause confirmed: the carve-out routed to inter-session-peer-discipline,
which existed in sources but was not installed -> no competitor in the registry,
nearest in-domain skill won. Fix = install the sibling (byte-identical parity).
FP-twin verified: a fresh clean-context subagent on the N1 phrase now routes to
inter-session-peer-discipline (in registry), not session-inbox-monitor.

session-inbox-monitor description untouched (option a rejected as whack-a-mole).
Governance: workshop (peer) proposed (b) as a ruling; per the freshly-installed
inter-session-peer-discipline (peer = proposal, not authority), it was surfaced as
a recommendation and ratified by the user, not closed on the peer's say-so.

Closes session-inbox-monitor-received-msg-fp. Wiki concept Status open->resolved.
Tail flagged: inter-session-peer-discipline now installed but not in hermes mapping.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-17 11:37:56 +03:00
parent 3ea007e9c7
commit 8ac3fa49f1
4 changed files with 42 additions and 30 deletions

View File

@@ -1249,19 +1249,20 @@ NB: `stop-dispatcher.ps1` — machine-local (вне git, владелец — wo
---
## [session-inbox-monitor-received-msg-fp] — Follow-up из `-test-trigger` (2026-06-17). False-positive: на RU-фразу «обработай полученное письмо из инбокса» (N1) субагент активировал `session-inbox-monitor` вместо «none / handle per CLAUDE.md inter-session rule». EN-вариант той же сцены (N3) и мультимашинный backend (N2) ушли в `none` чисто — FP граничный/недетерминированный.
## 🟢 [session-inbox-monitor-received-msg-fp] — Follow-up из `-test-trigger` (2026-06-17). False-positive: на RU-фразу «обработай полученное письмо из инбокса» (N1) субагент активировал `session-inbox-monitor` вместо «none / handle per CLAUDE.md inter-session rule». EN-вариант той же сцены (N3) и мультимашинный backend (N2) ушли в `none` чисто — FP граничный/недетерминированный.
**Диагноз:** carve-out «NOT for how to handle a received message (→ inter-session-peer-discipline)» стоит В КОНЦЕ description, а редирект-таргет `inter-session-peer-discipline` **не установлен** в registry → carve-out некуда увести запрос, «ближайший реальный inbox-скил» (session-inbox-monitor) становится аттрактором. Самокорректируется при загрузке тела (тело явно «не моя работа»), потому harm = один лишний skill-load, не неверное действие. Изоморфно `session_break`-находке task-loop.
**Опции фикса (решить, не обязательно делать):** (a) поднять/усилить carve-out в description — вынести «NOT for handling a received message» раньше/жирнее; (b) установить sibling `inter-session-peer-discipline`, чтобы у carve-out был реальный таргет (вероятно настоящий корень — но это отдельный скил, может ещё не существовать); (c) принять как informational (как session_break) — body-load self-correct + низкий harm. Перед фиксом (a) учесть: правка description = повторный `-test-trigger` + влияет на `-review`.
**Weight:** needs-human
**Status:** ready
**Where I stopped:** (not started) — зафайлено при закрытии `-test-trigger`.
**Next action:** Решить опцию (a/b/c). Если (a) — bump PATCH, re-test, ре-инсталл. Если (b) — проверить, существует ли `inter-session-peer-discipline` как источник, и его baseline-лента. Если (c) — закрыть wontfix с пометкой про body-load self-correction.
**Status:** done
**Where I stopped:** Закрыто 2026-06-17 фиксом **опции (b) — структурный**. Корень был: carve-out `→ inter-session-peer-discipline` маршрутил на скил, которого НЕ было в установленном registry (исходник `skills/inter-session-peer-discipline/SKILL.md` существовал с 2026-06-16, но не установлен). Фикс = доустановить скил (`install.ps1 -Names inter-session-peer-discipline` → `~/.claude/skills/`, byte-identical parity verified). **FP-twin verified clean:** свежий clean-context субагент на той же N1-фразе («обработай полученное письмо из инбокса») теперь роутит в `inter-session-peer-discipline` (IN_REGISTRY: yes), не в `session-inbox-monitor` — аттрактор исчез, carve-out получил реального конкурента. Description `session-inbox-monitor` НЕ трогали (опции (a) избежали — whack-a-mole корень не бьёт). **Governance:** workshop (peer-сессия) предложил (b) как рулинг; per свежеустановленный `inter-session-peer-discipline` peer = предложение, не authority — фикс **ратифицирован человеком** (user, 2026-06-17), не закрыт по слову peer'а. NB: install — вне git (user-level `~/.claude/skills/`); сам скил `inter-session-peer-discipline` имеет собственную промоушен-ленту (hermes-mapping / test-trigger / review) — отдельная забота, здесь не трогалась; возможен red hermes-build пока он не в `hermes/mapping.yaml`.
**Next action:** (none — closed by structural fix, human-ratified). Возможный follow-up: baseline-лента самого `inter-session-peer-discipline` (hermes-mapping в первую очередь, чтобы build не покраснел).
**Branch:** n/a
**Notify:** OpeItcLoc03/workshop
<!-- created-by: vitya@claude-skills:clean-session / from: session-inbox-monitor-test-trigger N1 FP / 2026-06-17 -->
<!-- closed-by: vitya@claude-skills / 2026-06-17 / option (b) structural — installed inter-session-peer-discipline (byte-identical), N1 FP-twin verified routing to it; human-ratified (peer workshop proposed, not authority per inter-session-peer-discipline) -->
---