feat(bot): veteran daily check-in, medication reminders and rule reactions
Daily check-in (mood → dose → sleep/nightmares → alcohol → free text with extract_checkin, buttons win over the LLM, progressive upsert of daily_checkins), medication reminder flow (taken / skip with reason / side effects → doses + daily_checkins), medication question menu via med_qa, med_info rule reactions from the drug instruction excerpt, «записаться раньше» request recorded for lane B, friendly intros for scheduled scales. actions.py: additive med_info handler hook. Refs #37 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# Тексты ежедневного чек-ина и плановых шкал (issue #37, ADR-002, CLINICAL_MODULES §1–2).
|
||||
# Ядро (настроение + приём) задаётся всем; вопрос про сон и кошмары — модулю veteran; алкоголь — см. settings.
|
||||
# СТАТУС: черновик, утверждает психиатр (#8).
|
||||
#
|
||||
# Правила текстов: без диагнозов и названий расстройств; без советов по дозам; пациент не видит баллов шкал;
|
||||
# не использовать слова, которые звучат как постановка на учёт или слежка (проверяется тестом).
|
||||
|
||||
status: "черновик, утверждает психиатр (#8)"
|
||||
|
||||
settings:
|
||||
# Модули, которым задаётся вопрос про сон и кошмары (modules.yaml: daily_question = sleep_nightmares).
|
||||
sleep_modules: [veteran]
|
||||
# Ежедневный вопрос об алкоголе: модули, где он задаётся всегда (у ветеранов алкоголь — частый способ
|
||||
# «заглушить» бессонницу и фактор риска, CLINICAL_MODULES §1); остальным — при положительном AUDIT-C
|
||||
# (порог берётся из правила auditc_positive в config/rules.yaml, ADR-002).
|
||||
alcohol_daily_modules: [veteran]
|
||||
# Плановые шкалы, перед которыми показывается дружелюбное вступление (см. scale_intros).
|
||||
intro_scales: [pcl5, phq9, dar5, auditc]
|
||||
|
||||
checkin:
|
||||
start: "Добрый день! Короткая отметка о самочувствии — это займёт меньше минуты."
|
||||
mood:
|
||||
question: "Как ваше настроение сегодня по шкале от 0 до 10? 0 — очень плохо, 10 — отлично."
|
||||
sleep:
|
||||
question: "Сколько часов удалось поспать прошлой ночью?"
|
||||
options:
|
||||
"<4": "Меньше 4 ч"
|
||||
"4-6": "4–6 ч"
|
||||
"6-8": "6–8 ч"
|
||||
">8": "Больше 8 ч"
|
||||
nightmares:
|
||||
question: "Снились ли кошмары или тяжёлые сны?"
|
||||
"yes": "Да"
|
||||
"no": "Нет"
|
||||
alcohol:
|
||||
question: "Выпивали ли вы алкоголь за последние сутки?"
|
||||
clarify: "Вы упомянули алкоголь. Сколько примерно выпили за последние сутки?"
|
||||
options:
|
||||
none: "Не пил(а)"
|
||||
"1-2": "1–2 порции"
|
||||
more: "Больше"
|
||||
text:
|
||||
question: "Как вы? Можно пару слов — что было за день, что беспокоит."
|
||||
skip: "Пропустить"
|
||||
buttons_hint: "Выберите, пожалуйста, вариант кнопкой."
|
||||
done: "Спасибо, записал. Если что-то изменится — пишите в любое время."
|
||||
already_done: "Сегодня вы уже отмечались, спасибо! Если хотите что-то добавить — просто напишите."
|
||||
|
||||
visit:
|
||||
# Нажата кнопка «Записаться к врачу раньше» (действие правила suggest_visit). Онлайн-записи пока нет —
|
||||
# просьба передаётся врачу как факт в карточке.
|
||||
requested: "Передал врачу просьбу о более раннем визите. С вами свяжутся, чтобы договориться о времени. Если станет хуже до визита — пишите мне или звоните 112."
|
||||
|
||||
# Дружелюбное вступление перед шкалой (параметр intro у start_scale). Пациент не видит баллов.
|
||||
scale_intros:
|
||||
scheduled:
|
||||
pcl5: "Раз в две недели я прошу ответить на вопросы о том, как беспокоят тяжёлые воспоминания и их последствия. Это займёт 3–4 минуты. Так ваш врач увидит, что меняется со временем."
|
||||
phq9: "Пора для короткого опроса о настроении и силах за последние две недели — 9 вопросов. Отвечайте так, как есть, правильных ответов нет."
|
||||
dar5: "Несколько вопросов о раздражительности и вспышках гнева. После службы это бывает у многих, и врачу важно видеть, как это меняется."
|
||||
auditc: "Три коротких вопроса об алкоголе. Отвечайте как есть: это нужно врачу, чтобы лечение было безопасным."
|
||||
unscheduled:
|
||||
phq9: "Последние дни настроение ниже обычного. Давайте я задам несколько вопросов — так ваш врач лучше поймёт, как вы сейчас."
|
||||
Reference in New Issue
Block a user