Files
PTSRaiAgent/config/scales/cssrs_screen.yaml
T
ElebobaandClaude Opus 5.5 0c8cedc0c6
CI / ruff · pytest (pull_request) Successful in 23s
feat(core): scale engine with YAML schema and deterministic scoring
Pydantic schema for config/scales/*.yaml, cached loader, score() with
severity bands (sex-specific for AUDIT-C), rule-based C-SSRS triage,
flags (PHQ-9 item 9, PCL-5 >= 33, PHQ-4 subscales) and delta().
Starting literature thresholds for phq9, gad7, pcl5, auditc, pcptsd5,
cssrs_screen, phq4; final values are approved by the psychiatrist (#8).

Refs #3

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 14:56:40 +03:00

59 lines
3.9 KiB
YAML

# Стартовые пороги из литературы, финальные утверждает психиатр (issue #8).
# C-SSRS, скрининговая версия (Posner et al., 2011; Columbia Lighthouse Project), триаж:
# q1–q2 (желание умереть, суицидальные мысли) → low
# q3 (мысли о способе, без намерения) → moderate
# q4 (намерение), q5 (план), q6 (поведение за 3 месяца) → high
# Ответы «да/нет» хранятся как 1/0. Порядок правил важен: первое совпавшее — уровень риска.
# В оригинале q6 задаётся «за всю жизнь» с уточнением «в последние 3 месяца»; для триажа нужен
# только второй вариант, поэтому q6 сформулирован сразу про 3 месяца (утверждает психиатр).
id: cssrs_screen
title: "Колумбийская шкала оценки тяжести суицидального риска (C-SSRS), скрининг"
recall_period: "последний месяц (вопрос 6 — последние 3 месяца)"
instruction: "Ответьте, пожалуйста, на несколько вопросов о том, как Вы себя чувствовали за последний месяц."
license_note: "C-SSRS — бесплатно для клинического и некоммерческого использования (Columbia Lighthouse Project)."
translation_note: >-
Рабочий перевод команды (демо-текст). Финальный текст — официальная русская скрининговая версия,
выбирает психиатр.
scoring: rules
options:
- {value: 0, label: "Нет"}
- {value: 1, label: "Да"}
items:
- {id: cssrs_1, text: "Хотелось ли Вам умереть или заснуть и не проснуться?", buttons_only: true}
- {id: cssrs_2, text: "Были ли у Вас мысли о том, чтобы покончить с собой?", buttons_only: true}
- {id: cssrs_3, text: "Думали ли Вы о том, как могли бы это сделать?", buttons_only: true}
- id: cssrs_4
text: "Были ли у Вас такие мысли и хоть какое-то намерение действовать в соответствии с ними?"
buttons_only: true
- id: cssrs_5
text: "Начинали ли Вы продумывать или уже продумали детали того, как покончить с собой? Собираетесь ли Вы осуществить этот план?"
buttons_only: true
- id: cssrs_6
text: "За последние 3 месяца делали ли Вы что-нибудь, начинали делать или готовились сделать, чтобы покончить с собой?"
buttons_only: true
range: {min: 0, max: 6}
severity_rules:
- code: high
label: "Высокий риск"
when:
any_of:
- {item: cssrs_4, op: ">=", value: 1}
- {item: cssrs_5, op: ">=", value: 1}
- {item: cssrs_6, op: ">=", value: 1}
- code: moderate
label: "Умеренный риск"
when: {item: cssrs_3, op: ">=", value: 1}
- code: low
label: "Низкий риск"
when:
any_of:
- {item: cssrs_1, op: ">=", value: 1}
- {item: cssrs_2, op: ">=", value: 1}
default_severity: {code: none, label: "Риск не выявлен"}
flags:
# high → acute-алерт и кризисный протокол (ADR-006); moderate → врачу ≤ 24 ч (config/rules.yaml).
- code: cssrs_high
when: {severity_in: [high]}
- code: cssrs_moderate
when: {severity_in: [moderate]}