Asthma (chronic stepwise + acute exacerbation)
GINA 2026 UPDATE (2026-05-24): added depemokimab (RxCUI 2729265, RxNav-validated TTY=IN) — NEW ultra-long-acting anti-IL5, 100 mg SC q26 weeks (twice-yearly), severe eosinophilic asthma eos≥300 age≥12 — to GINA Step 5 + asthma_phenotype_biologic_matrix + evidence.pmids (SWIFT-1/2 PMID 39248309 NEJM 2024, live-verified). O2 start threshold lowered to SpO2 <92% per GINA 2026 (was <93%; target 93–95%, upper limit 95%). last_reconciled→2026-05-24. RxCUI SWEEP DONE (2026-05-24): bud-form 19831→1246304 (RxNav-validated SCD); all biologics RxNav-confirmed valid ingredient CUIs (omalizumab 302379, mepolizumab 1720597, benralizumab 1989100, dupilumab 1876376, tezepelumab 2587789, depemokimab 2729265); only the albuterol-budesonide rescue product SCD remains to resolve (not the Track 1 reliever, which is ICS-formoterol 1246304). DEPTH-PASS-2 2026-05-16 (shard-07-cardio-chronic, golden-template-mirrored vs cardio.htn.core.v1) added: (1) co-located src/lib/dossiers/pulm.asthma.core.v1._design-brief.md + _research-bundle.md per §5.5 items 1+2 (20 PubMed-verified PMIDs, named trials + effect sizes + 95% CI, retrieval-dated 2026-05-16, Consensus→WebSearch fallback logged); design_brief pointer repointed from the tier3 package path to the co-located brief. (2) prisma/seed/ros-and-ddx/pulm.asthma.core.v1.{differentials,ros,finding-lrs}.ts created (NEW — none existed; only pulm.asthma.peds.v1.* was present): 13 differentials (wheeze/variable-airflow partition: asthma vs COPD/ACO/VCD/HF/bronchiectasis/EGPA/ABPA/GERD-cough + asthma phenotype sub-partition allergic-eosinophilic/non-allergic/late-onset-eos/obesity/AERD) w/ cohort-anchored priors (PMID-sourced), 16 ROS items, 33 LR rows = 18 LR+ / 16 LR− (bronchodilator reversibility, FeNO, blood eos ≥150/≥300 nested bands, methacholine PC20, peak-flow variability), 3 conditional-dependency rules (FeNO|ICS-use; reversibility|recent-SABA; eos nested bands), T_test≈5%/T_treat≈30%, ENGINE_ID pulm.asthma.core.v1. (3) 2nd regimen axis asthma_phenotype_biologic_matrix added (drug × T2-biomarker/phenotype gating as DATA: allergic-IgE→omalizumab, eos≥300→mepolizumab/benralizumab, broad-T2 eos≥150/FeNO≥25/OCS-dep→dupilumab, low-T2/any-severe→tezepelumab, AERD→LTRA/dupilumab, obesity, pregnancy). (4) RxNav: research:rxnav:validate run 2026-05-16 — all canonical-profile drugs OK (albuterol 435, ipratropium 7213, prednisone 8640, methylprednisolone 6902, magnesium-sulfate 6585, montelukast 88249, fluticasone 41126); combination/biologic CUIs (19831 bud-form, 69120 tiotropium, 302379/1720597/1989100/1876376/2587789 biologics) have NO DrugEffectProfile to align to → left flagged NEEDS_RXNAV_VALIDATION, no hand-authored CUIs. (5) GINA-2026 content refresh: release verified live via WebSearch (GINA 2026 Strategy Report released May 2026, ginasthma.org; Track 1 preferred, SABA-only avoided); evidence.pmids reconciled 16→20 (added PRACTICAL 31451207, CAPTAIN 32918892, Petsky-FeNO-adult 27580628, Petsky-FeNO-paeds 27825189) — every PMID re-fetched via get_article_metadata, effect sizes + 95% CI transcribed verbatim. Counts: 20 verified PMIDs, ≥18 effect sizes w/ 95% CI, 18 LR+, 16 LR−, 13 differentials, 16 ROS, 7 RxCUIs validated-OK (0 fixed — none wrong this pass), 2 regimen axes. SCHEMA-GAP: _types.ts has no first-class LR/pretest/decision-threshold field — encoded in seed files + severity_triggers + phase purpose + bundle tables. CHRONIC DEPTH-PASS-2 + ACUTE (2026-05-16): additive deepening — preserved working GINA Track 1 regimen_axes (Steps 1–5) and all four setting_playbooks (outpatient/ED/inpatient/ICU) incl. IV magnesium / continuous albuterol / ketamine-induction thresholds; added Bayesian/differential-as-data, biologic-eligibility chain, special-population matrix, and PMID-verified evidence. Header docblock → GINA 2026 (released May 2026, WebSearch-confirmed). PMID AUDIT: prior evidence.pmids (15) had 7 wrong-article codes (34936738=VITT/Covid, 36599064=Acromegaly, 12835246=child-sexual-abuse pilot, 27568557=Gaucher mouse, 24929894=adiponectin/stroke, 27568556=GRK2 opioid, 32668213=biodiversity) + 3 wrong-engine fillers (POINT 29766750, REDUCE 23900119, Anthonisen 3491997 — all CULLED per content-factory/pulmonary.md §1). Rebuilt to 16 PubMed-verified PMIDs (get_article_metadata 2026-05-16). Full audit: _briefs/pulm.asthma.core.v1.depth.md §1. §5.5.2 differential as data: asthma vs COPD/ACO vs VCD/EILO vs hyperventilation vs EGPA vs AERD vs ABPA vs cardiac-asthma/HF vs occupational (chronic) and anaphylaxis vs PTX vs PE vs ADHF vs foreign-body (acute) — wired via 3 severity_triggers (differential_asthma_vs_mimics_chronic, differential_acute_wheeze_vs_mimics, biologic_eligibility_phenotype_chain), DIFFERENTIAL/BRANCHING_WORKUP phase logic with test characteristics (reversibility ≥12%&≥200 mL, FeNO ≥25, eos ≥150/≥300, methacholine PC20<8), workups[].branches_to, and 3 sibling_differentiation blocks. Cross-dossier engine_ids (6, all real): pulm.copd.core.v1, cardio.acute-hf.core.v1, allergy.anaphylaxis.v1, pulm.pe.core.v1, pulm.pneumothorax.core.v1, pulm.asthma.peds.v1. Biologic phenotype matrix encoded as DATA with eligibility gating (Step 5 drug triggers + biologic_eligibility_phenotype_chain): omalizumab IgE 30–700 + perennial allergen (INNOVATE 15679715, 26% exac↓); mepolizumab/benralizumab eos ≥300 (MENSA 25199059 ~47–53%↓; SIROCCO 27609408; CALIMA 27609406); dupilumab eos ≥150 OR FeNO ≥25 OR OCS-dependent (QUEST 29782217 ~47.7%↓; VENTURE 29782224 70.1% OCS↓); tezepelumab any T2 incl. eos<150&FeNO<25 (NAVIGATOR 33979488 rate ratio 0.44). ≥15 effect-size numbers (delivered ~18) PMID-anchored in regimen rationale + severity_triggers + depth.md §3: SYGMA-1/2 (29768149/29768147), Novel START (31112386), MANDALA HR 0.74 (35569035), NAVIGATOR rate ratio 0.44 / eos<300 0.59 (33979488), QUEST 47.7%/65.8% + FEV1 +0.32 L (29782217), VENTURE 70.1% OCS↓ (29782224), INNOVATE 26%/0.24-vs-0.48 (15679715), MENSA (25199059), SIRIUS 50% OCS↓ (25199060), SIROCCO RR~0.49 (27609408), CALIMA RR~0.64 (27609406), ZONDA 75% OCS↓ (28530840), SOURCE (35364018), Cates MART (23633340), Kew IV-Mg (24865567). Regimen-builder template (project_medication_regimen_builder.md): ≥6 special-population branches (delivered 7) as DATA (RegimenDrug.triggers + contraindication_rules) — pregnancy (continue ICS/LABA, do not step down), AERD (avoid all COX-1 NSAID + LTRA/dupilumab pathway), obesity phenotype (biologic over ICS escalation), smoker/ACO (ICS-containing mandatory + LAMA), OCS-sparing deprescribing trigger, biologic step-down after ≥12 mo control, cardioselective β-blocker caution (non-selective relative CI; cardioselective OK if strong CV indication). calc.act (Asthma Control Test) now wired in CONTEXT + RISK_STRATIFICATION (resolves in clinical-tools-registry by id); workup.vocal_cord_dysfunction wired in DIFFERENTIAL (registry adapter_id); severe_asthma_exac local workup re-tagged BRANCHING_WORKUP and branches_to acute-mimic engines. All 12 phases populated and non-empty (verified vs _types.ts ALL_PHASES). RxCUI: 8814 was WRONG (RxNav-verified = epoprostenol, NOT magnesium sulfate) — CORRECTED to 6585 (RxNav-verified magnesium sulfate IN). 19831 (budesonide-formoterol) resolves to budesonide IN only — base-ingredient code for a combination product; flagged NEEDS_RXNAV_VALIDATION (NOT hand-authored to SCD/SBD). Confirmed correct ingredient CUIs (RxNav 2026-05-16): 69120 tiotropium, 302379 omalizumab, 1720597 mepolizumab, 1989100 benralizumab, 1876376 dupilumab, 2587789 tezepelumab, 435 albuterol, 7213 ipratropium, 8640 prednisone, 6902 methylprednisolone, 88249 montelukast. Research bundle §4 has the RxNav check. SCHEMA-GAP NOTES: (1) _types.ts has no first-class Bayesian-LR / pretest / decision-threshold / biologic-eligibility-matrix / special-population-matrix / effect-size field — encoded in severity_triggers, phase purpose/advance_when, calculator guideline_basis, regimen rationale/triggers/contraindication_rules, and depth.md tables; (2) RequiredCalculator.drives enum lacks diagnostic_gate — calc.act reuses risk_stratification; (3) design_brief points at a tier3 package path (src/lib/tier3/...) so _briefs/pulm.asthma.core.v1.md was NOT authored — depth payload is _briefs/pulm.asthma.core.v1.depth.md per scope. PRODUCTION blockers: (1) combination-inhaler RxCUI 19831 is base-ingredient — run npm run research:rxnav:validate to resolve SCD/SBD; (2) no engine-specific test file under tests/ (uses tests/dossiers/dossier-contract.test.ts); (3) design_brief/manifest/package/atoms/note_template pointers unchanged per scope. DEPTH-PASS-3 2026-05-26 (lane-E): +NMA +USPSTF +Cochrane +ICER stubs +decision thresholds, side-car at pulm.asthma.core.v1._depth-pass-3.md.
Entry points (6)
- symptomEpisodic wheeze, cough, chest tightness, dyspnea (GINA 2026 Box 1-2)wheeze_dyspnea
- symptomNocturnal awakening from cough/wheeze (GINA 2026 control assessment)nocturnal_symptoms
- symptomSevere acute exacerbation (PEF <50%, accessory muscles, silent chest) — BTS/SIGN 2024 severity classificationsevere_exacerbation
- lab_abnormalitySpirometry: reduced FEV1/FVC with bronchodilator reversibility ≥12% (GINA 2026 Box 1-2; ATS/ERS 2022 spirometry standards)fev1_reduced_reversible
- problem_listExisting asthma — stepwise titration / control review (GINA 2026 Step ladder)asthma_existing
- historySABA over-use (>2 canisters/yr or >12 puffs/day) — review needed (GINA 2026; SABA overuse mortality risk — Nwaru Eur Resp J 2020)high_saba_use
Required inputs (19)
- agerequireddemographic • used at CONTEXTAdult vs pediatric pathway and biologic eligibility (GINA 2026 age-stratified steps)
- spo2requiredvital • used at CONTEXTAcute severity gate; admission threshold SpO2 <92% per BTS/SIGN 2024; ICU criteria
- rrrequiredvital • used at CONTEXTTachypnea + accessory muscles for severe exacerbation (BTS/SIGN 2024 severity table)
- hrrequiredvital • used at CONTEXTTachycardia, pulsus paradoxus pattern, β2-agonist toxicity (BTS/SIGN 2024)
- peak_flow_pefrequiredvital • used at RISK_STRATIFICATIONPEF % personal best — drives severity tier and zone of action plan (GINA 2026 Box 4-1; BTS/SIGN 2024)
- exacerbations_12morequiredhistory • used at CONTEXTStep-up trigger; biologic eligibility ≥2 OCS courses/yr (GINA 2026 Step 5; ATS/ERS 2024 severe asthma)
- inhaler_techniquerequiredhistory • used at CONTEXTTechnique/adherence assessed BEFORE step-up per GINA 2026
- allergen_smoking_occupationhistory • used at CONTEXTOccupational asthma + trigger control (GINA 2026 §3; NICE 2024 NG80)
- pregnancy_statusrequiredhistory • used at CONTEXTGINA: avoid LTRA boxed-warning use; prefer ICS-formoterol; manage flares aggressively
- blood_eoslab • used at INITIAL_WORKUPT2 phenotype — biologic selection: ≥150 dupilumab (QUEST, Castro NEJM 2018); ≥300 anti-IL5/anti-IL5R (MENSA, Ortega NEJM 2014)
- fenolab • used at INITIAL_WORKUPT2 inflammation marker; dupilumab response predictor (ATS/ERS 2024; GINA 2026 Box 3-4)
- total_igelab • used at INITIAL_WORKUPOmalizumab eligibility 30–700 IU/mL with perennial allergen (INNOVATE; GINA 2026 Step 5)
- potassiumlab • used at TREATMENTMonitor for hypokalemia after high-dose β2-agonist — continuous neb / IV (BTS/SIGN 2024 acute management)
- lactatelab • used at TREATMENTHigh-dose β2-agonist → β2-mediated lactic acidosis mimics sepsis (Lau CI Emerg Med J 2015)
- glucoselab • used at TREATMENTHyperglycemia from systemic steroids + β2-agonist (BTS/SIGN 2024 monitoring)
- vbg_or_abglab • used at RED_FLAGSSevere exac: rising / normalising PaCO2 = impending respiratory failure (BTS/SIGN 2024 life-threatening criteria)
- spirometryrequiredimaging • used at INITIAL_WORKUPFEV1, FEV1/FVC, reversibility — diagnosis confirmation (GINA 2026 Box 1-2; ATS/ERS 2022)
- cxrimaging • used at INITIAL_WORKUPSevere exac: rule out pneumothorax, pneumonia, foreign body (BTS/SIGN 2024)
- current_medsrequiredmedication • used at CONTEXTDetect SABA-only / NSAID-AERD / β-blocker / ACE-I cough — adjust (GINA 2026 §3 risk factors)
12-phase flow (12)
- 1FRAMEConfirm asthma diagnosis (variable airflow obstruction with reversibility) vs ACO/COPD/VCD/EILO (GINA 2026 Box 1-2)inputs: spirometryadvance: Diagnosis confirmed by spirometry + symptom pattern per GINA 2026
- 2ENTRYStepwise control review or acute exacerbation triage (GINA 2026 §4)inputs: ageadvance: Trigger captured (control review vs exacerbation)
- 3CONTEXTACT score (calc.act), exacerbations 12mo, inhaler technique, adherence, triggers, occupation, comorbidities — rhinitis, GERD, obesity, OSA, pregnancy; detect SABA-only / NSAID-AERD / β-blocker / ACE-I (GINA 2026 Box 2-2; NAEPP EPR-4 2020)inputs: exacerbations_12mo, inhaler_technique, rr, spo2, hr, pregnancy_status, current_medsactions: calc.actadvance: Control level + technique + trigger/comorbidity sweep audited per GINA 2026
- 4RED_FLAGSLife-threatening exacerbation: silent chest, exhaustion, SpO2 <92%, PEF <33% best, normalising/rising PaCO2, AMS (BTS/SIGN 2024 Table 6)inputs: spo2, rr, peak_flow_pef, vbg_or_abgadvance: No life-threatening features OR escalated to ICU pathway
- 5INITIAL_WORKUPSpirometry with reversibility (BDR ≥12% AND ≥200 mL); PEF diary (≥20% diurnal variability); T2 biomarkers — blood eos (≥150 dupilumab; ≥300 anti-IL5/IL5R), FeNO (≥25 ppb T2; dupilumab response predictor), total IgE (30–700 + perennial allergen → omalizumab) at Step 4–5; allergen panel; methacholine challenge if spirometry non-diagnostic but symptoms typical (PC20 <8 mg/mL); CXR + ABG/VBG if severe acute (GINA 2026 Box 1-2/3-4; ATS/ERS 2024)inputs: spirometry, blood_eos, feno, total_ige, cxractions: panel.cbcadvance: Phenotype data (eos/FeNO/IgE) complete enough to guide step + biologic; acute severity assigned
- 6BRANCHING_WORKUP§5.5.2 acute-exacerbation differential — severe/refractory wheeze: exclude anaphylaxis (urticaria/angioedema/hypotension/exposure → allergy.anaphylaxis.v1), pneumothorax (sudden pleuritic + ↓breath sounds, CXR/POCUS → pulm.pneumothorax.core.v1), PE (disproportionate hypoxia, pleuritic, risk factors → pulm.pe.core.v1), ADHF/cardiac asthma (orthopnea/JVD/NT-proBNP↑↑/echo → cardio.acute-hf.core.v1), foreign body (focal monophonic wheeze, asymmetry → bronchoscopy), ABPA (Aspergillus-specific IgE/IgG, central bronchiectasis); laryngoscopy if VCD suspected (GINA 2026 Box 1-4; BTS/SIGN 2024)inputs: cxractions: severe_asthma_exacadvance: Acute mimics excluded or routed to the correct engine
- 7DIFFERENTIAL§5.5.2 differential-as-data — asthma vs COPD/ACO (post-BD FEV1/FVC fixed <0.70 = COPD; BDR ≥12% AND ≥200 mL = asthma), vs VCD/EILO (inspiratory truncated flow-volume loop, laryngoscopy gold standard), vs hyperventilation (normal spirometry, ABG hypocapnia, Nijmegen), vs EGPA (eos >1500, ANCA, multisystem), vs AERD/Samter (NSAID reaction + nasal polyps), vs ABPA (Aspergillus IgE/IgG, central bronchiectasis, eos), vs cardiac asthma/ADHF (NT-proBNP↑↑, orthopnea, echo), vs occupational (cross-shift PEF, work-related pattern); phenotype assigned (allergic / eosinophilic / AERD / occupational / EIB) per GINA 2026 §2inputs: feno, blood_eos, spirometryactions: workup.vocal_cord_dysfunctionadvance: Competing dx excluded by discriminator + phenotype assigned per GINA 2026
- 8RISK_STRATIFICATIONGINA 2026 control level via ACT (calc.act <20 = uncontrolled, drives step); risk for future exacerbation — prior ICU/intubation, ≥2 OCS courses, low FEV1, high SABA use (>1 canister/mo), blood eos, FeNO, obesity, smoking, food allergy (GINA 2026 Box 2-2/2-3); BTS/SIGN 2024 acute severity tier (speak-in-sentences, PEF %, SpO2, accessory muscle, AMS, PaCO2)inputs: exacerbations_12mo, peak_flow_pefactions: calc.actadvance: ACT + exacerbation severity + future-risk profile documented
- 9TREATMENTGINA 2026 Track 1 stepwise (Steps 1–5); LAMA at step 5; biologic at step 5 (anti-IgE / anti-IL5 / anti-IL5R / anti-IL4R / anti-TSLP); minimise OCS. Acute: O2 only if SpO2 <92% (GINA 2026), target 93–95%, SABA + ipratropium, oral/IV steroid, IV magnesium 2 g if severe / poor first-hour response, NIV/intubation if respiratory failureinputs: blood_eos, feno, total_ige, spo2, peak_flow_pefadvance: Step + biologic candidacy + trigger plan + acute regimen documented
- 10DISPOSITIONAcute: home if mild + good first-hour response / admit if moderate-severe with incomplete response / ICU if life-threatening per BTS/SIGN 2024; chronic: severe-asthma clinic referral if Step ≥4 with ≥2 exacerbations/yr per ATS/ERS 2024advance: Disposition + level of care set
- 11MONITORINGAcute: hourly PEF, RR, SpO2; K+/lactate after continuous neb; VBG q1-2h if hypercapnic (BTS/SIGN 2024). Chronic: ACT/exacerbation review at 4–6 weeks; biologic response at 4 months per ATS/ERS 2024; step-down attempt after 3 months controlled (GINA 2026 §4)inputs: potassium, lactate, vbg_or_abgadvance: Review interval scheduled and adherence supports plan
- 12FOLLOWUPWritten asthma action plan (GINA 2026 Box 4-2), vaccinations — flu, pneumococcal, COVID, RSV (ACIP 2026), smoking cessation, weight, allergen control, controller refill, technique re-audit, follow-up within 1 week of any ED/admission per GINA 2026advance: Action plan + vaccinations + 1-week follow-up complete