From 2900554d5f0351dbdadfd06af8f5e3c2e4dedccc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Tue, 9 Jun 2026 03:25:43 +0300 Subject: [PATCH] docs(router-mentor): E/G warm-up batch zakryt v reestre hvostov (P1-P6) --- .../2026-06-08-router-mentor-loose-ends-registry.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/superpowers/plans/2026-06-08-router-mentor-loose-ends-registry.md b/docs/superpowers/plans/2026-06-08-router-mentor-loose-ends-registry.md index 02d5b1f9..538892a6 100644 --- a/docs/superpowers/plans/2026-06-08-router-mentor-loose-ends-registry.md +++ b/docs/superpowers/plans/2026-06-08-router-mentor-loose-ends-registry.md @@ -66,9 +66,9 @@ ## 🟨 E. Doc-gaps / косметика -- **DOC-1 (важно перед активацией М6):** escape чтут только стена М2/пол М5/egress; параллельные стражи (`enforce-router-gate`, `enforce-runtime-write-deny`, судья) escape НЕ знают → реальный `force-push`/`.env`-запись не пройдут, пока зоопарк зарегистрирован. Полностью «дверь» открывается только когда Фаза 8 растворит/научит зоопарк (escape-awareness, §10 правило 7). -- Доска «Кто на посту» — **детальный рендер недавних escape/блоков** (счётчики есть, детализация — follow-up handoff#5). -- M3 `node-graph` docstring «от loadRegistry» (косметика комментария). `brain-retro-opus-reviewer` prompt-caching no-op (perf-minor). +- ✅ **DOC-1** (E/G warm-up `a85d7f9d`): callout добавлен в M7 design spec §10 (перед активацией М6 — escape чтут только М2/М5/egress; до Фазы 8 частичный по конструкции). +- ✅ **Доска «Кто на посту» — детальный рендер** (E/G warm-up `cf9f803d`): `computeGuardBoardBlock` рендерит таблицу недавних escape/блоков при непустых массивах + `escapeCell` anti-injection (SE-3). **Открытым остаётся live-источник** событий (`main()` передаёт `[]`) — это вшивка B-блока (R-09/R-30), не E. +- ✅ **M3 `node-graph` docstring** + пиннинг (E/G warm-up `553ddea4`): docstring «от loadRegistry» уточнён (принимает любой plain `{nodes,chains}`-литерал). `brain-retro-opus-reviewer` prompt-caching no-op — **уже был задокументирован** в коде (строки 38-43), добавлен лишь пиннинг-тест контракта. ## 🟦 F. Архитектурные (решение владельца) @@ -80,8 +80,9 @@ Почти всё DONE+pushed; открыты только фаза-2 и мелочи: - **Фаза 2** (observer spec §10): независимый LLM agent-судья качества роутинга, реальные `confusion_marker`/`chain_divergence`, real-time friction-флаги, авто-правка нормативки. -- **4-й FP-класс** routing-gate: цитата `/node` в pasted-тексте классифицируется как директива (минор, observer accuracy). -- Embedding-index: файл-кэш + HNSW/faiss — defer (пока N мал). `observer-self-assessment-api.test.mjs:258` pre-existing fail (тех-долг). Мелкие regex-нити (`\bcommit\b` в release-классе / двойной счёт перекрывающихся PII-паттернов). +- ✅ **4-й FP-класс** routing-gate (E/G warm-up `5ae0b135`): новый узкий `stripPastedContext` (fenced+blockquote only) снимает PASTED-цитаты `/node` ДО детекции; inline-форма остаётся директивой (FP-смещение routingGate сохранено, SE-1). +- ✅ **regex-нити** (E/G warm-up): `\bcommit\b` убран из release-класса `classifyTask` (`cfc4e0a8`); двойной счёт перекрывающихся PII закрыт единым конвейером sanitize/count (`84f75abb`, count==редакции, SE-2). +- Embedding-index: файл-кэш + HNSW/faiss — defer (пока N мал). `observer-self-assessment-api.test.mjs:258` pre-existing fail (тех-долг). **Открытым остаётся:** Фаза 2 observer (LLM agent-судья качества). ---