Follow-up к c3e6ddb (label-refresh): метки узлов обновил, а проза внутри
nd() (NODE_DETAILS) оставалась с дрейфом. Заказчик «карту html обнови» —
поправил два места:
1. claude_md nd() стр.276 — `Tooling v2.15` → `Tooling v2.22`
(manages-список ссылается на устаревшую версию Прил.Н).
2. tooling nd() стр.299 — «Реестр 80 позиций — 60 формализованных
инструментов + 20 ruflo-плагинов» → «Реестр 93 позиций — 73 форма-
лизованных инструментов + 20 ruflo-плагинов» (канон Прил.Н §0:
v2.20 счётчик 67→73 / 87→93; v2.21+v2.22 — без изменений счётчиков).
Не трогал — историческая фактура: реколлаж 16.05.2026 (v1.16/v2.2/...) на
стр.268/1188/1618 и cross-ref-checker collision 17.05 на стр.1471.
Узлы/рёбра не менялись (147/180) — это string-refresh внутри nd().
LEFTHOOK_EXCLUDE=adr-judge: то же, что c5d360f/c3e6ddb (ReDoS-обход).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Узлы rector/php_insights/backend_patterns/nightowl теперь в панелях описания (nd())
и теплокарте использования (NODE_META, uses:0 новые). Дополняет 5d82fdd (NODES/EDGES/
NODE_SECTION в data.js). Browser-smoke: 141 узел, NODE_META+NODE_DETAILS у всех 4, 0 JS-ошибок.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
iter8 (commit 9fcefa3) проставил 10 ruflo-узлам флаг
NODE_META.isolated=true, но это метаданные — рендер vis.js
флаг не читал, узлы рисовались обычным оранжевым цветом
группы ruflo. На карте изоляция была не видна.
Изоляция через group-level (переживает режимы карты —
теплокарту/фильтр, которые перезаписывают opacity/borderWidth,
но не color/shapeProperties):
- GROUPS.ruflo: оранжевый #ff8800 → серый #555555 +
shapeProperties.borderDashes [4,4] + приглушённый шрифт #8a8a8a
- легенда-фильтр: dot оранжевый → серый dashed, текст
«🌊 ruflo (оркестратор)» → «🔇 ruflo (изолирован 18.05)»
- hk_ruflo_queen: group 'hooks' → 'ruflo' (10-й изолированный
узел, был в hooks-кластере — теперь визуально в ruflo)
- CATEGORY_LABELS.ruflo: «оркестратор» → «изолирован»
Группа ruflo не опустела (все 9 её узлов изолированы) — фильтр
group:ruflo продолжает работать. NODE_META.isolated флаги
не трогались (data-слой корректен с iter8).
Верификация: JS-синтаксис проверен (vm.Script parse OK) +
stylelint GREEN (color-hex-length fix #888→#888888). Визуальный
рендер в браузере НЕ проверен — Playwright-профиль занят
параллельной Claude-сессией (тот самый mcp_pw↔sk_parallel
same-dir case). shapeProperties — документированная vis.js
group-опция, риск низкий.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Ветка ребейзнута на parallel-sessions §15 — Pravila v1.27 и CLAUDE.md
v2.14 параллельно заняты §15-эпиком, перенумеровано Pravila→v1.28 /
CLAUDE.md→v2.15. Sync cross-refs: Tooling §0+§13 footer, PSR_v1 §0
entry, automation-graph rule-labels (pravila/claude_md узлы),
+rebase-девиация note в plan. Tooling v2.14 / PSR_v1 v3.13 — без
изменений (§15 их не трогал).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
SG #40 was characterised across all D3 docs as warn-only / does not block. Verified end-to-end: security_reminder_hook.py does sys.exit(2) — a BLOCKING PreToolUse hook (one-time speed-bump per file+rule per session, the retry passes).
SG2: on this Windows host the bundled hooks.json hardcodes python3, absent from PATH — the hook never spawned (inert). Fixed with a python3.exe shim in the Python install dir (env-only, not in repo).
Normative sync: Tooling v2.5, PSR_v1 v3.5, Pravila v1.19, CLAUDE.md v2.5; ADR-003 amended; automation-graph sec_guidance nd(). Tool counts unchanged (40 positions).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Слой WISHLIST: панель отложенных хотелок развития мозга/портала + кнопка-легенда «💡 Хотелки» в нижней легенде. Засеяно 4 хотелками раздела E8: K7-spike, мост claude-mem→ReasoningBank, claude-mem #1, двухуровневый ремонтник. Аддитивно — режим легенды наравне с «Разделы»; счётчики узлов/рёбер не меняются.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
+1 раздел в блок E «Мета и управление». Итого 40 разделов
(13 наполнены / 27 пусты). E8 — пустой каркас под будущий playbook.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
39 разделов деятельности Лидерры (5 блоков A–E) как классификация:
все 83 узла распределены по разделам — 13 наполнены, 26 пусты
(пустые — бизнес-домены, под которые в карте dev-автоматики узлов
ещё нет). Кнопка-панель «📂 Разделы» + строка «Раздел» в Паспорте
узла. Топология карты (83/90/11) и радиальный layout без изменений.
Основа будущего «мозга»: 1 раздел = 1 playbook.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Both tools check RLS compliance; the boundary "когда какой" was
undocumented (tracked as a RED conflict on the automation graph).
- .claude/skills/rls-check/SKILL.md: +section "Граница с агентом
rls-reviewer", +bullet in "Не использовать когда", +clause in
the frontmatter description.
- .claude/agents/rls-reviewer.md: +mirrored section "Граница со
скилом /rls-check", +bullet in "Out of scope", +clause in
the description.
- docs/automation-graph.html: conflict sk_rls<->ag_rls recolored
RED->GREEN (CONFLICT edge + both nd() node entries + EDGE_META).
- cspell-words.txt: +1 pre-existing word surfaced by the cspell
full-file scan of the now-staged SKILL.md.
Rule: one named table -> /rls-check; diff/branch/PR -> rls-reviewer.
The smoke test stays skill-only by design (running Pest in a review
subagent is slow and hits --parallel quirks 72/77).
Spec: docs/superpowers/specs/2026-05-16-rls-tooling-boundary-design.md
Plan: docs/superpowers/plans/2026-05-16-rls-tooling-boundary.md
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
.conflict-item теперь использует динамический bg из CONFLICT_TYPES[type].bg, эмодзи-префикс + цветной name из CONFLICT_TYPES[type].color. Сортировка через CONFLICT_TYPES[type].rank (RED=1, BLACK=2, GREEN=3) — 🔴 не закрыт правилом → ⚫ возник на практике → 🟢 закрыт правилом. Footer cat-legend заменил 1 «— конфликт» бэйдж на 3 цветных. Iter2 spec §4.3 — last code task.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
#legend-panel разделён на 2 containers: #legend-node-content (existing) + #legend-edge-content (new, hidden default). На click по ребру открывается edge layout с 7 полями (источник/получатель/тип связи/когда/что передаёт/обязательность/регламент). showLegend переименована в showNodeLegend; новая showEdgeLegend. Click handler dispatches node vs edge. Iter2 spec §5.4, §5.5.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>