Clinical Commander

All dossiers
pulm.asthma.core.v1

Asthma (chronic stepwise + acute exacerbation)

pulmonologychronicacuteadultoutpatientacuteinpatienttransition

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)

  • symptom
    Episodic wheeze, cough, chest tightness, dyspnea (GINA 2026 Box 1-2)
    wheeze_dyspnea
  • symptom
    Nocturnal awakening from cough/wheeze (GINA 2026 control assessment)
    nocturnal_symptoms
  • symptom
    Severe acute exacerbation (PEF <50%, accessory muscles, silent chest) — BTS/SIGN 2024 severity classification
    severe_exacerbation
  • lab_abnormality
    Spirometry: reduced FEV1/FVC with bronchodilator reversibility ≥12% (GINA 2026 Box 1-2; ATS/ERS 2022 spirometry standards)
    fev1_reduced_reversible
  • problem_list
    Existing asthma — stepwise titration / control review (GINA 2026 Step ladder)
    asthma_existing
  • history
    SABA 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)

  • agerequired
    demographic • used at CONTEXT
    Adult vs pediatric pathway and biologic eligibility (GINA 2026 age-stratified steps)
  • spo2required
    vital • used at CONTEXT
    Acute severity gate; admission threshold SpO2 <92% per BTS/SIGN 2024; ICU criteria
  • rrrequired
    vital • used at CONTEXT
    Tachypnea + accessory muscles for severe exacerbation (BTS/SIGN 2024 severity table)
  • hrrequired
    vital • used at CONTEXT
    Tachycardia, pulsus paradoxus pattern, β2-agonist toxicity (BTS/SIGN 2024)
  • peak_flow_pefrequired
    vital • used at RISK_STRATIFICATION
    PEF % personal best — drives severity tier and zone of action plan (GINA 2026 Box 4-1; BTS/SIGN 2024)
  • exacerbations_12morequired
    history • used at CONTEXT
    Step-up trigger; biologic eligibility ≥2 OCS courses/yr (GINA 2026 Step 5; ATS/ERS 2024 severe asthma)
  • inhaler_techniquerequired
    history • used at CONTEXT
    Technique/adherence assessed BEFORE step-up per GINA 2026
  • allergen_smoking_occupation
    history • used at CONTEXT
    Occupational asthma + trigger control (GINA 2026 §3; NICE 2024 NG80)
  • pregnancy_statusrequired
    history • used at CONTEXT
    GINA: avoid LTRA boxed-warning use; prefer ICS-formoterol; manage flares aggressively
  • blood_eos
    lab • used at INITIAL_WORKUP
    T2 phenotype — biologic selection: ≥150 dupilumab (QUEST, Castro NEJM 2018); ≥300 anti-IL5/anti-IL5R (MENSA, Ortega NEJM 2014)
  • feno
    lab • used at INITIAL_WORKUP
    T2 inflammation marker; dupilumab response predictor (ATS/ERS 2024; GINA 2026 Box 3-4)
  • total_ige
    lab • used at INITIAL_WORKUP
    Omalizumab eligibility 30–700 IU/mL with perennial allergen (INNOVATE; GINA 2026 Step 5)
  • potassium
    lab • used at TREATMENT
    Monitor for hypokalemia after high-dose β2-agonist — continuous neb / IV (BTS/SIGN 2024 acute management)
  • lactate
    lab • used at TREATMENT
    High-dose β2-agonist → β2-mediated lactic acidosis mimics sepsis (Lau CI Emerg Med J 2015)
  • glucose
    lab • used at TREATMENT
    Hyperglycemia from systemic steroids + β2-agonist (BTS/SIGN 2024 monitoring)
  • vbg_or_abg
    lab • used at RED_FLAGS
    Severe exac: rising / normalising PaCO2 = impending respiratory failure (BTS/SIGN 2024 life-threatening criteria)
  • spirometryrequired
    imaging • used at INITIAL_WORKUP
    FEV1, FEV1/FVC, reversibility — diagnosis confirmation (GINA 2026 Box 1-2; ATS/ERS 2022)
  • cxr
    imaging • used at INITIAL_WORKUP
    Severe exac: rule out pneumothorax, pneumonia, foreign body (BTS/SIGN 2024)
  • current_medsrequired
    medication • used at CONTEXT
    Detect SABA-only / NSAID-AERD / β-blocker / ACE-I cough — adjust (GINA 2026 §3 risk factors)

12-phase flow (12)

  1. 1FRAME
    Confirm asthma diagnosis (variable airflow obstruction with reversibility) vs ACO/COPD/VCD/EILO (GINA 2026 Box 1-2)
    inputs: spirometry
    advance: Diagnosis confirmed by spirometry + symptom pattern per GINA 2026
  2. 2ENTRY
    Stepwise control review or acute exacerbation triage (GINA 2026 §4)
    inputs: age
    advance: Trigger captured (control review vs exacerbation)
  3. 3CONTEXT
    ACT 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_meds
    actions: calc.act
    advance: Control level + technique + trigger/comorbidity sweep audited per GINA 2026
  4. 4RED_FLAGS
    Life-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_abg
    advance: No life-threatening features OR escalated to ICU pathway
  5. 5INITIAL_WORKUP
    Spirometry 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, cxr
    actions: panel.cbc
    advance: Phenotype data (eos/FeNO/IgE) complete enough to guide step + biologic; acute severity assigned
  6. 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: cxr
    actions: severe_asthma_exac
    advance: Acute mimics excluded or routed to the correct engine
  7. 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 §2
    inputs: feno, blood_eos, spirometry
    actions: workup.vocal_cord_dysfunction
    advance: Competing dx excluded by discriminator + phenotype assigned per GINA 2026
  8. 8RISK_STRATIFICATION
    GINA 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_pef
    actions: calc.act
    advance: ACT + exacerbation severity + future-risk profile documented
  9. 9TREATMENT
    GINA 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 failure
    inputs: blood_eos, feno, total_ige, spo2, peak_flow_pef
    advance: Step + biologic candidacy + trigger plan + acute regimen documented
  10. 10DISPOSITION
    Acute: 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 2024
    advance: Disposition + level of care set
  11. 11MONITORING
    Acute: 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_abg
    advance: Review interval scheduled and adherence supports plan
  12. 12FOLLOWUP
    Written 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 2026
    advance: Action plan + vaccinations + 1-week follow-up complete