CI / ruff · pytest (pull_request) Successful in 39s
Deep-link /start <code> binds the chat via IdentityProvider, text and button presses go to get_engine().handle(), replies render as inline keyboards and are sent verbatim (no parse_mode). TelegramOutbox delivers scheduler pushes to bound chats and falls back to the previous outbox. No-op without TG_BOT_TOKEN; logs carry no text or chat ids. Refs #11 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DfbiLXFJswz2EK3qtWF7S7
config/
Конфигурация клинической логики (ADR-008). Схемы задаёт зона core, значения утверждает психиатр (clinical).
scales/— шкалы: пункты, варианты, градации, флагиrules.yaml— правила алертов и действийmodules.yaml— модули и расписания шкалlexicon/risk_ru.yaml— лексикон рискаtexts/— тексты для пациента (кризисный скрипт, согласие, перефразировки)