feature: Simulator Scenarios + Clinical Validation: SOFA/GCS

This commit is contained in:
voltsrage
2026-06-21 04:55:39 +08:00
parent bf46e6554a
commit 3638dd0669
39 changed files with 1619 additions and 213 deletions
@@ -2,7 +2,7 @@
"scenario": {
"id": "uti-sepsis-elderly-01",
"name": "UTI Progressing to Sepsis in Elderly Patient",
"description": "72-year-old female presenting with UTI symptoms who deteriorates into sepsis over 4 hours, triggering SIRS, qSOFA, and NEWS2 alerts with sepsis bundle compliance.",
"description": "72-year-old female with UTI progressing to sepsis over 4 hours. qSOFA screen fires first; SOFA delta \u2265 2 triggers sepsis bundle. NEWS2 and bundle compliance still exercised.",
"durationMinutes": 240,
"tags": [
"sepsis",
@@ -98,6 +98,36 @@
"source": "Manual"
}
},
{
"offsetMinutes": 0,
"type": "observation",
"data": {
"code": "GCS_EYE",
"value": 4,
"unit": "score",
"source": "Manual"
}
},
{
"offsetMinutes": 0,
"type": "observation",
"data": {
"code": "GCS_VERBAL",
"value": 4,
"unit": "score",
"source": "Manual"
}
},
{
"offsetMinutes": 0,
"type": "observation",
"data": {
"code": "GCS_MOTOR",
"value": 6,
"unit": "score",
"source": "Manual"
}
},
{
"offsetMinutes": 20,
"type": "observation",
@@ -281,6 +311,56 @@
"source": "Lab"
}
},
{
"offsetMinutes": 45,
"type": "observation",
"data": {
"code": "PAO2_MMHG",
"value": 92,
"unit": "mmHg",
"source": "Lab"
}
},
{
"offsetMinutes": 45,
"type": "observation",
"data": {
"code": "FIO2_PCT",
"value": 28,
"unit": "%",
"source": "Manual"
}
},
{
"offsetMinutes": 45,
"type": "observation",
"data": {
"code": "PLATELET_K_UL",
"value": 210,
"unit": "k/\u00b5L",
"source": "Lab"
}
},
{
"offsetMinutes": 45,
"type": "observation",
"data": {
"code": "BILIRUBIN_MG_DL",
"value": 0.7,
"unit": "mg/dL",
"source": "Lab"
}
},
{
"offsetMinutes": 45,
"type": "observation",
"data": {
"code": "CREATININE_MG_DL",
"value": 1.0,
"unit": "mg/dL",
"source": "Lab"
}
},
{
"offsetMinutes": 40,
"type": "order",
@@ -450,7 +530,7 @@
"unit": "bpm",
"source": "Device"
},
"note": "SIRS criteria met: Temp >38.3 + HR >90 \u2192 SEPSIS_WARNING"
"note": "Temp >38.3 + HR >90 \u2014 early sepsis physiology"
},
{
"offsetMinutes": 90,
@@ -627,7 +707,7 @@
"unit": "bpm",
"source": "Device"
},
"note": "NEWS2 = 6, SIRS 3 of 4 criteria met (Temp, HR, RR)"
"note": "NEWS2 = 6, continued deterioration"
},
{
"offsetMinutes": 120,
@@ -698,7 +778,7 @@
"unit": "\u00d710\u00b3/\u00b5L",
"source": "Lab"
},
"note": "Repeat labs \u2014 WBC elevated, lactate rising, SIRS 4/4"
"note": "Repeat labs \u2014 WBC elevated, lactate rising"
},
{
"offsetMinutes": 120,
@@ -730,6 +810,48 @@
"source": "Lab"
}
},
{
"offsetMinutes": 125,
"type": "observation",
"data": {
"code": "PAO2_MMHG",
"value": 68,
"unit": "mmHg",
"source": "Lab"
},
"note": "Worsening gas exchange \u2014 SOFA Resp \u2191"
},
{
"offsetMinutes": 125,
"type": "observation",
"data": {
"code": "FIO2_PCT",
"value": 40,
"unit": "%",
"source": "Manual"
}
},
{
"offsetMinutes": 125,
"type": "observation",
"data": {
"code": "PLATELET_K_UL",
"value": 95,
"unit": "k/\u00b5L",
"source": "Lab"
}
},
{
"offsetMinutes": 125,
"type": "observation",
"data": {
"code": "CREATININE_MG_DL",
"value": 2.1,
"unit": "mg/dL",
"source": "Lab"
},
"note": "AKI \u2014 SOFA Renal \u2191; delta \u2265 2 \u2192 SOFA_SEPSIS"
},
{
"offsetMinutes": 125,
"type": "medication",
@@ -1308,46 +1430,34 @@
"description": "HR enters warning range (91 bpm)"
},
{
"afterOffsetMinutes": 90,
"afterOffsetMinutes": 105,
"type": "alert",
"alertType": "SEPSIS_WARNING",
"description": "SIRS criteria met: Temp 38.4\u00b0C (>38.3) + HR 96 (>90) = 2 of 4"
"alertType": "QSOFA_SCREEN",
"description": "qSOFA \u2265 2 \u2014 screen positive, recommend SOFA labs"
},
{
"afterOffsetMinutes": 90,
"afterOffsetMinutes": 125,
"type": "alert",
"alertType": "SOFA_SEPSIS",
"description": "SOFA delta \u2265 2 from baseline after repeat labs"
},
{
"afterOffsetMinutes": 125,
"type": "bundle",
"description": "Sepsis bundle auto-created with 4 orders: blood cultures, serum lactate, broad-spectrum antibiotics, IV fluid resuscitation"
"description": "Sepsis bundle auto-created; triggeringAlertType = SOFA_SEPSIS"
},
{
"afterOffsetMinutes": 105,
"type": "score",
"scoreType": "NEWS2",
"expectedMinimum": 5,
"description": "NEWS2 reaches 5 (HR=1, RR=2, Temp=1, SpO2=1) \u2192 WARNING threshold"
"description": "NEWS2 reaches medium risk"
},
{
"afterOffsetMinutes": 135,
"type": "alert",
"alertType": "NEWS2_EMERGENCY",
"description": "NEWS2 reaches 8 (HR=2, RR=2, SBP=1, Temp=2, SpO2=1) \u22657 \u2192 EMERGENCY"
},
{
"afterOffsetMinutes": 135,
"type": "score",
"scoreType": "NEWS2",
"expectedMinimum": 7,
"description": "NEWS2 \u22657 sustained through peak deterioration"
},
{
"afterOffsetMinutes": 150,
"type": "alert",
"alertType": "QSOFA_WARNING",
"description": "qSOFA 3/3: RR 24 (\u226522) + SBP 98 (\u2264100) + AVPU 1 (\u22651)"
},
{
"afterOffsetMinutes": 130,
"type": "bundle",
"description": "Sepsis bundle COMPLIANT \u2014 all 4 orders completed within 40 minutes (blood cultures T+92, lactate T+95, ceftriaxone T+125, IV fluids T+130)"
"description": "NEWS2 \u2265 7 at peak deterioration"
}
]
}