feat(wp498): Ф15 — T4 «назови понятие» без «?» идёт в Наставника бота, не в Hermes (вариант Д) - #308
Closed
TserenTserenov wants to merge 2 commits into
Closed
TserenTserenov wants to merge 2 commits into
TserenTserenov wants to merge 2 commits into
Conversation
…, не в Hermes (АрхГейт, вариант Д)
Событие concept_named (факты мастерства М10/М11/М14) умеет писать только
консультация бота при под-интенте concept_naming. У T4 такие сообщения без
ведущего «?» раньше уходили в Hermes и терялись для чек-листа участника.
- handlers/fallback.py: _is_concept_naming_request() поверх того же
detect_mentor_intent() (списки якорей не копируются); ветка в T4-блоке ДО
вызова Hermes, после проверки «SM ждёт ответ»; уважает allow_global
консультации через check_global_event('?'+text, state) — паритет с
«?»-вопросом; лог с тиром для приёмки (условие пир-сессии с Kimi).
- tests: 11 тестов на реальный предикат (положительные, отрицательные,
«?»-текст не обрабатывается дважды). 564 passed, 10 known failures.
- docs: сценарий консультации, раздел «T4 и Гермес».
DRR: DS-my-strategy/inbox/WP-498/DRR-f15-hermes-concept-named.md
Пир-сессия: MC-sessions 2026-09-05-22-archgate-hermes-concept-named
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…«?», смоук-тесты самой ветки, оговорка про FSM - High: «гейт»/«понятие» у разработчика T4 — обиходные слова вне IWE («какой гейт сработал: AND или OR», «объясни фотосинтез через понятия»). Без «?»/префикса теперь действует только подмножество _CONCEPT_NAMING_EXPLICIT_PATTERNS («понятия IWE», «какой гейт мы применили», «назови понятие/гейт»); явный «Наставник, …» — прежний detect_mentor_intent. Владелец списков — states/common/consultation.py (is_explicit_concept_naming_request), fallback только делегирует. «?»-путь не сужен. - Medium: три смоук-теста самой ветки on_unknown_message (go_to консультации + Hermes не вызван; гейт allow_global закрыт → Hermes как раньше; фраза разработчика → Hermes). Проверка гейта — ровно как у «?»-вопроса. - Medium/Low: сценарий дополнен оговоркой про активный aiogram FSM-стейт (passthrough-middleware пропускает только «?»-текст) — известный пробел, middleware сознательно не трогали (правило 10.37). Тесты: 1056 passed, 10 known pre-existing failures. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Что
У участников тира T4 обычные сообщения уходят в Hermes. Событие
concept_named(факты мастерства М10/М11/М14 чек-листа РП-522) умеет писать только консультация бота при под-интентеconcept_naming. Теперь T4-сообщение без ведущего «?» с якорем «назови понятие» (detect_mentor_intent) идёт в Наставника бота, а не в Hermes.Стек: поверх #307 (Ф14) — база этого PR
wp498-f14-cleanup; после слияния #307 перенацелить наpilot.Как
handlers/fallback.py:_is_concept_naming_request()— тот же детектор, что внутри консультации, списки якорей не копируются. Ветка в T4-блоке стоит ДО вызова Hermes и ПОСЛЕ проверки «SM ждёт ответ». Уважаетallow_global: [consultation]изtransitions.yamlчерезcheck_global_event('?'+text, state)— паритет с «?»-вопросом. Лог с тиром для приёмки.tests/test_role_free_for_all_tiers.py: 11 тестов на реальный предикат. Полный прогон: 564 passed, 10 known pre-existing failures (i18n ES/FR, revoke_consent, pgcrypto, profile_empty).docs/scenarios/02-вспомогательные/scenario-02-04-consultation.md: раздел «T4 и Гермес».Решение
АрхГейт (варианты А/Б/Б′/В/Г/Д, пир-сессия с Kimi, консенсус на Д с пост-деплойным измерением 2 недели и порогом отката):
DS-my-strategy/inbox/WP-498/DRR-f15-hermes-concept-named.md.Приёмка после выкатки на pilot
С T4-аккаунта, без «?»: «объясни через понятия IWE, что мы сейчас сделали» → в логах
[fallback] T4 concept_naming intent → common.consultation … tier 4иMentor concept_named: emitting …; ответ от Наставника бота, не от Hermes. Контроль: «Наставник, я застрял» без «?» → по-прежнему Hermes.🤖 Generated with Claude Code