Clinical Decision Support Composer
Most clinical decision support (CDS) rules are written once, in the abstract, and only discover their edge cases after they're live and firing on real patients.
Core trick
Generates edge-case patients from a clinic's own panel to stress-test plain-English clinical rules before go-live.
Description
Most clinical decision support (CDS) rules are written once, in the abstract, and only discover their edge cases after they're live and firing on real patients. This composer moves that reckoning before go-live: a clinician writes a rule in plain English, and the tool grills it with sharp corner cases — grounded in your patient panel — so the rule ships already stress-tested against the population it will run on.
README excerpt
# 🩺 Bridgineering **A clinical decision support (CDS) rule-authoring tool that tailors to your own data and patient population.** Most CDS rules are written once, in the abstract, and only discover their edge cases after they're live and firing on real patients. Bridgineering moves that reckoning *before* go-live: a clinician writes a rule in plain English, and the tool **grills** it with sharp corner cases — grounded in *your* patient panel — so the rule ships already stress-tested against the population it will run on. --- ## How it works 1. **Write** a rule in plain English *(e.g. "When a patient mentions rectal bleeding, remind the clinician to refer to GI.")* 2. **Interpret** — the rule is decomposed into a structured trigger: `listen_for` / `ehr_condition` / `action`. 3. **Grill** — the rule is pressure-tested along **three angles**, in priority order: - 🔴 **Safety** — could firing (or *not* firing) miss or mishandle a dangerous patient? (anticoagulation, active malignancy, IBD, a risk factor the data can't even see) - 🔵 **Operational** — will it fire when the action is already handled, creating alert fatigue? (already referred, colonoscopy already scheduled) - 🟢 **Prevalence** — does it mostly fire on low-yield patients? (young, low-risk, benign cause) 4. **Refine** — accept / modify / skip each corner case; the rule tightens as you go. 5. **Activate** — ship a clean rule, a tightened rule, or (deliberately) one with an acknowledged, unresolved s