Commit Graph

4 Commits

Author SHA1 Message Date
Дмитрий db1eb8e337 fix(mentor): резолв ID узлов в имена в скил-контексте наставника
renderSkillContext резолвит #N -> '#N - имя' через registry.indexById (resolveNodeName, fail-safe -> голый #N); onPlanWrite прокидывает registry. Наставник видит рекомендацию роутера именами. TDD +4 теста, регрессия tools-only 3910 GREEN.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 17:15:14 +03:00
Дмитрий b739d5adad feat(mentor): мерж роутера в наставника — единый рецензент (спека+план+скилы) + decision GO/NO-GO
Болезни B (роутер в пустоту) + A (наставник не заворачивал) — лечение Р7/Р8 (Подход 1):
наставник — единый мозг-рецензент, зовёт classify() как функцию (3 слоя + граф nodes.yaml +
карточки — код не тронут, новый вызыватель), судит спеку+план+выбор скилов, заворачивает NO-GO.

- validateMentorVerdict + промпты (план/спека): явное decision GO|NO-GO (поглощённый Р7)
- plan-skills.mjs: parsePlanSkills (skills-json) + extractPlanGoal (зеркало extractGoal судьи)
- mentor-seam: renderSkillContext; onPlanWrite зовёт classifyImpl (fail-safe: сбой → без скил-сверки)
- decideMentorObjection: заворот на decision=NO-GO ИЛИ сломанный вердикт; mentor-GO только на чистом GO
- formatMentorObjection доносит суть (recommendation + reasoning + plan_points), GO -> пусто
- enforce-mentor main: loadRegistry + classify; счётчик L1 decision-aware (Р7/§3.4)
- скил-сверка — только план (gate2); спека (gate1) — по сути + decision
- включает redesign согласования L1->L2 (Фазы 0-6, способ B: наставник->судья->печать)
- регрессия tools-only 3901 passed + 2 skip (база 3877, +24 теста, 0 регрессий)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 11:38:09 +03:00
Дмитрий 57b811b3c0 fix(mentor-finreview): финревью Фазы B 5-скил — FR-1 freeze-gate VF-1/SE-A1 inline + FR-2 единый рендер районов/staleness (W1-канон) + FR-4 balanced-парс JSON + VA-1 единый рендер контекста/ДР-1 + VA-2 маркер КОНТЕКСТ ПУСТ + VA-3 валидация request_district + F-C2-6/W7 ноты 2026-06-11 20:10:42 +03:00
Дмитрий 48b410f395 feat(mentor-live-seam): живой шов наставника — task-id O17 + tamper-evident журнал + вердикт-производитель C-1/F4 + runMentorRound/петля/F7 + freeze-gate VA-8/O2/VA-9 (sub-plan C Tasks 1-7 + A1-A8 + Д-1а/Д-2а/Д-3 + sharp-edges F-C1..F-C7) 2026-06-11 18:13:45 +03:00