Verified figures
| Statistic | Manuscript draft | Verified | Status |
|---|---|---|---|
| Cohort size | 11,354 | 11,354 | exact match |
| Exp. 1 — dose-determined (4h) | 30.5% | 32.3% | revised |
| Exp. 1 — dose-determined (24h) | 26.3% | 28.6% | revised |
| Exp. 2 — AUROC, A_full | 0.900 | 0.900 | exact match |
| Exp. 2 — AUROC, E_no_explicit_treatment_features | 0.791 | 0.791 | exact match |
| Exp. 2 — recoverability gap | ≈0.108 | 0.109 | essentially exact |
| Exp. 3 — mean window overlap (24h) | 56.1% | 31.1% | revised down |
| Exp. 3 — median overlap (24h) | 100% | 12.4% | revised down |
| Exp. 3 — % >50% overlap | 55.7% | 28.7% | revised down |
Struck-through cells are the original manuscript draft's figures, superseded after two extraction bugs were found and fixed — not hidden, just clearly marked as historical.
The 11,354-stay cohort size above is the published Sepsis-3 table this manuscript draft used — now a sensitivity cohort. The primary cohort is 13,192 stays (MIMIC-IV v3.1, Sepsis-3 recomputed; see docs/DECISIONS_H3.md), which this historical verification predates.
What Experiment 2's gap reflects
The AUROC gap (0.900 → 0.791) survived a 15× difference in underlying vasopressor-dose row counts almost untouched — 0.109 verified vs. ≈0.108 in the original, inflated-data run, so the gap itself is not an artifact of the data bug. Exploratory work in review (exp-persistence, not pre-registered) finds what the gap is actually made of: SOFA's dose-coded cardiovascular and total terms carry the currently running treatment's dose tier into the state, and that effect runs largely through treatment persistence rather than a SOFA-specific mechanism. Once an "infusion running right now" indicator is included, SOFA's own terms add almost nothing on top of it — (A+I) minus (E+I) is 0.000 [-0.000, +0.001] at the decision point, and under 0.01 at every offset tested.
The three bugs, found and fixed in the open
Full diagnostic trail — including the false starts — in ROADMAP.md.
A scope note: this evidence is task-specific
Everything on this page evaluates a feature's relationship to next-action prediction specifically. That's a deliberate scope, not an oversight — the same feature's status can differ entirely for a different task. A cardiovascular-subscore value that's treatment-confounded for predicting the next vasopressor action may be exactly the right feature for predicting mortality: mortality prediction doesn't carry the "was this information available before the decision" constraint that action-prediction does. None of the figures above should be read as "this feature is bad" in general — only "this feature's value for predicting the next action is inflated by treatment history, by this much." See Terminology for the full distinction this depends on.
Limitation: sanitization has a clinical-validity cost
Variant D's fix (recompute the total from a MAP-only cardiovascular proxy) removes
the treatment-confounding this project measures — but it isn't free. The MAP-only branch of the
scoring rule (score_map = 1 if MAP < 70 else 0)
is a two-level signal that cannot distinguish a patient who is healthy and untreated from one who
is successfully treated and still critically ill — the second patient's MAP looks the same as the
first's once vasopressors have done their job.
Concrete example, computed from the actual scoring function: a patient on norepinephrine 0.15 mcg/kg/min with MAP 74 (successfully restored to normal by the drug they're actively receiving).
This is a genuine tradeoff, not an argument that sanitization is the wrong approach: predictive purity (Variant D/E's lower action-recoverability) is bought at a real cost in clinical validity (losing the "needed treatment to reach this value" signal). Whether that cost is acceptable is task-dependent (see the scope note above) — and is exactly what motivates disentangling severity from treatment history as two separate, explicit terms, rather than collapsing them into one composite score either way.
Testing that concern quantitatively: it doesn't hold at the cohort level
The concrete example above is real, but does it add up to variant D/E being meaningfully worse at predicting mortality across the whole cohort? Trained the same way as Experiment 2 (logistic regression / random forest / gradient boosting, clustered bootstrap CIs) but predicting in-hospital mortality from the state at a single fixed 24h decision point — matching SOFA's own original validation convention — rather than the next action at every timestep:
| Variant | Action-recoverability AUROC (Exp. 2) | Mortality AUROC (Exp. 6, 24h, n=11,336) |
|---|---|---|
| A_full | 0.900 | 0.793 |
| B_no_total_sofa | 0.900 | 0.790 |
| C_no_cardio_sofa | 0.885 | 0.788 |
| D_treatment_decomposed | 0.792 | 0.784 |
| E_no_explicit_treatment_features | 0.791 | 0.782 |
Reported as the actual result, not adjusted toward the anticipated one: sanitizing the state costs almost nothing in mortality-prediction accuracy, despite costing a lot in next-action predictability. This does not confirm the qualitative concern above — at least not as measured by whole-cohort mortality prediction at a fixed timepoint. The individual-patient failure mode is still mathematically real; it just doesn't appear to aggregate into a large mortality-AUROC loss. Full figures: results/experiment6_mortality_vs_action_recoverability.json.
A second mechanism instance: respiratory SOFA
Theorems 1–2 are proofs about the cardiovascular subscore specifically. Does the diagnostic generalize to a different SOFA subscore, or was it a one-off property? Checked against respiratory SOFA — deliberately isolated: this does not modify the shared `sofa_resp` function or any of Experiments 1, 2, 3, or 6's already-published figures, all of which continue to use the existing implementation unchanged.
The official rule (Vincent et al., 1996) scores
respiratory SOFA from the PaO2/FiO2 ratio, but its two highest tiers (3, 4)
additionally require the patient to be on mechanical ventilation — a conditional this project's
own sofa_resp
does not implement. Checking whether the same non-identifiability pattern as Theorem 1 holds here
turned up something more precise: it doesn't, not in the same form. Fixing ventilation
status doesn't collapse the score to a constant the way fixing any nonzero dose does for
cardiovascular SOFA — a ventilated patient's score still varies across all five PF tiers. What
actually happens is narrower: a score-shift collision — for PF in [100, 200), two patients
with the identical PF ratio get different official scores (3 vs. 2) purely as a function of
treatment status.
The collision zone directly, PF ∈ [100,200), n=18,360:
What this means for the general framework: the diagnostic generalizes, but not uniformly — a second confirmed instance with a genuinely different mathematical shape (a bounded-range collision, not an unbounded-range constancy) is what starts to separate "an audit of one score" from "a methodology." Full figures: results/experiment7_respiratory_sofa_summary.json, proof: FORMAL_ANALYSIS.md §4.5.
A pre-registered disentanglement test — falsified
A reviewer suggestion proposed a specific alternative to Variant D: instead of stripping treatment signal out of the severity term, keep severity untouched and add explicit treatment-history features alongside it — testing whether that recovers Variant D's small mortality-predictive-validity loss (0.011 AUROC, above) without reintroducing Experiment 2's action-recoverability gap. Full design: docs/PHASE4_VARIANT_F_SPEC.md.
Variant F = Variant D's severity term (unchanged) plus two explicit treatment-history features, deliberately chosen to avoid re-exposing the raw dose value Variant D removes: hours on vasopressor (continuous duration, ending at the decision boundary) and hours since dose-tier change (regimen recency, tied to the same tier thresholds the SOFA score itself uses — not raw rate, which titrates too often to carry signal). The success criterion was stated before the experiment ran: F would be useful if its mortality AUROC moved toward A's while its action-recoverability stayed close to D's — action-recoverability rising toward A instead was named in advance as evidence against the hypothesis.
| Variant | Action-recoverability AUROC | Mortality AUROC |
|---|---|---|
| A_full | 0.900 | 0.793 |
| D_treatment_decomposed | 0.792 | 0.784 |
| F_disentangled (D + history features) | 0.914 | 0.790 |
The pre-registered falsification condition was met, unambiguously: F's action-recoverability didn't drift toward A's, it exceeded it. Two purely temporal features — how long a patient has been on a vasopressor, and how long since their dose tier last changed — are on their own more predictive of the next vasopressor decision than the entire physiology-plus-severity state. This sharpens the treatment-persistence mechanism already visible in the offset-decay curve below: vasopressor courses are highly autocorrelated, and duration/recency features encode that autocorrelation almost losslessly, independent of physiology. It's independent confirmation of a point made elsewhere on this site: the predictive power this project measures was never really about SOFA's construction quirk specifically — it's ordinary treatment persistence, and this experiment just gives a cleaner, more direct instrument for it than the original AUROC gap. This is not evidence that Variant D's own design is wrong — it shows that any specific choice of history feature carries a real risk of reconstructing the action independent of physiology, and that risk has to be tested per feature set, not assumed away. Full figures: results/experiment8_variant_f_summary.json, discussion: FORMAL_ANALYSIS.md §7.5.
H3, run
The pre-registered paired-bootstrap test has been run: Delta = AUROC(0) minus AUROC(8) = 0.147, 95% CI [0.140, 0.154] (bin-index offsets, common rows, logreg) — Prediction A, per docs/DECISIONS_H3.md. A synthetic ground-truth check (exploratory work in review, exp-simulation) finds this same rule fires whenever a state encodes a currently-running treatment under realistic persistence, whether or not a SOFA-specific mechanism is present — so Prediction A on its own does not separate the SOFA-construction mechanism from ordinary treatment persistence. Exploratory work in review, none of which changes the decision: persistence, label alignment, paired CIs, dose decisions, simulation. See Status for the full run.