FAILURE MAP
← Case archive

FA-64836 / Clinical triage scoring / Open access

Acute asthma severity from peak flow and signs: tachycardia criterion · case 01

A heart rate of exactly 110 is not treated as a severe sign.

Verified by executionVariant 1 · 10 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The tachycardia threshold excludes 110.

VERIFIED REPAIR

Treat hr >= 110 as an acute severe sign.

Unsuccessful approach: Exempting children under 12 adds an age rule the contract does not have.

Case contract

Input {pef, best (best or predicted PEF), spo2, sentences (can complete sentences), rr, hr, age}. pct = pef*100/best. Toy classification: LIFE_THREATENING when pct < 33 or spo2 < 92; ACUTE_SEVERE when pct <= 50, rr >= 25, hr >= 110 or sentences cannot be completed; MODERATE when pct <= 75; else MILD. Return {pct (1 dp), severity}.

Why this case matters

Severity grading from a percentage of best peak flow mixes ratio arithmetic with or-combined bedside signs.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(x):
    pct = Fraction(x['pef'] * 100, x['best'])
    if pct < 33 or x['spo2'] < 92:
        sev = 'LIFE_THREATENING'
    elif pct <= 50 or x['rr'] >= 25 or x['hr'] > 110 or not x['sentences']:
        sev = 'ACUTE_SEVERE'
    elif pct <= 75:
        sev = 'MODERATE'
    else:
        sev = 'MILD'
    return {'pct': round(float(pct), 1), 'severity': sev}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('mild control',
   {'pef': 430, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 86.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 310, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 62.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 91, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 19, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 331, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.2, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 26, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 11},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 116, 'age': 6},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 401, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.2, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 110, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 24.4, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 440, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 88.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 320, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 64.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 92, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 20, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 332, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.4, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 27, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 12},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 117, 'age': 7},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 402, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.4, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 120, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 26.7, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 450, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 90.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 330, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 93, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 21, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 333, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.6, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 28, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 13},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 118, 'age': 8},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 403, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.6, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 130, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 28.9, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 460, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 92.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 340, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 68.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 94, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 22, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 334, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.8, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 29, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 14},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 119, 'age': 9},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 404, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.8, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 140, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 31.1, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 470, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 94.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 95, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 23, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 335, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 67.0, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 30, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 15},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 120, 'age': 10},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 405, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 81.0, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 150, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 33.3, 'severity': 'ACUTE_SEVERE'})]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
mild control{'pct': 86.0, 'severity': 'MILD'}{'pct': 86.0, 'severity': 'MILD'}Passed
moderate{'pct': 62.0, 'severity': 'MODERATE'}{'pct': 62.0, 'severity': 'MODERATE'}Passed
exactly 50 percent{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}Passed
exactly 33 percent{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}Passed
hypoxic with fair peak flow{'pct': 66.2, 'severity': 'LIFE_THREATENING'}{'pct': 66.2, 'severity': 'LIFE_THREATENING'}Passed
severe by rate alone{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}Passed
heart rate exactly 110{'pct': 72.0, 'severity': 'MODERATE'}{'pct': 72.0, 'severity': 'ACUTE_SEVERE'}Failed
tachycardic child{'pct': 80.0, 'severity': 'ACUTE_SEVERE'}{'pct': 80.0, 'severity': 'ACUTE_SEVERE'}Passed
cannot finish sentences{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}Passed
below one third{'pct': 24.4, 'severity': 'LIFE_THREATENING'}{'pct': 24.4, 'severity': 'LIFE_THREATENING'}Passed

SHA-256 / 8e57e302409adb12e3b35219ff07ac847771d2b6febd50448f9b8055de72ea2a

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(x):
    pct = Fraction(x['pef'] * 100, x['best'])
    if pct < 33 or x['spo2'] < 92:
        sev = 'LIFE_THREATENING'
    elif pct <= 50 or x['rr'] >= 25 or (x['hr'] >= 110 and x['age'] >= 12) or not x['sentences']:
        sev = 'ACUTE_SEVERE'
    elif pct <= 75:
        sev = 'MODERATE'
    else:
        sev = 'MILD'
    return {'pct': round(float(pct), 1), 'severity': sev}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('mild control',
   {'pef': 430, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 86.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 310, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 62.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 91, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 19, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 331, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.2, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 26, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 11},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 116, 'age': 6},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 401, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.2, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 110, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 24.4, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 440, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 88.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 320, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 64.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 92, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 20, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 332, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.4, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 27, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 12},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 117, 'age': 7},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 402, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.4, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 120, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 26.7, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 450, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 90.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 330, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 93, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 21, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 333, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.6, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 28, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 13},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 118, 'age': 8},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 403, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.6, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 130, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 28.9, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 460, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 92.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 340, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 68.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 94, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 22, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 334, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.8, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 29, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 14},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 119, 'age': 9},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 404, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.8, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 140, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 31.1, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 470, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 94.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 95, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 23, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 335, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 67.0, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 30, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 15},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 120, 'age': 10},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 405, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 81.0, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 150, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 33.3, 'severity': 'ACUTE_SEVERE'})]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
mild control{'pct': 86.0, 'severity': 'MILD'}{'pct': 86.0, 'severity': 'MILD'}Passed
moderate{'pct': 62.0, 'severity': 'MODERATE'}{'pct': 62.0, 'severity': 'MODERATE'}Passed
exactly 50 percent{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}Passed
exactly 33 percent{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}Passed
hypoxic with fair peak flow{'pct': 66.2, 'severity': 'LIFE_THREATENING'}{'pct': 66.2, 'severity': 'LIFE_THREATENING'}Passed
severe by rate alone{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}Passed
heart rate exactly 110{'pct': 72.0, 'severity': 'MODERATE'}{'pct': 72.0, 'severity': 'ACUTE_SEVERE'}Failed
tachycardic child{'pct': 80.0, 'severity': 'MILD'}{'pct': 80.0, 'severity': 'ACUTE_SEVERE'}Failed
cannot finish sentences{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}Passed
below one third{'pct': 24.4, 'severity': 'LIFE_THREATENING'}{'pct': 24.4, 'severity': 'LIFE_THREATENING'}Passed

SHA-256 / 92cb57afbded0845f1b4a7a0570ecc25051e66f46803ca1f7008c08f9526f4fe

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(x):
    pct = Fraction(x['pef'] * 100, x['best'])
    if pct < 33 or x['spo2'] < 92:
        sev = 'LIFE_THREATENING'
    elif pct <= 50 or x['rr'] >= 25 or x['hr'] >= 110 or not x['sentences']:
        sev = 'ACUTE_SEVERE'
    elif pct <= 75:
        sev = 'MODERATE'
    else:
        sev = 'MILD'
    return {'pct': round(float(pct), 1), 'severity': sev}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('mild control',
   {'pef': 430, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 86.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 310, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 62.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 91, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 19, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 331, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.2, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 26, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 11},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 116, 'age': 6},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 401, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.2, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 110, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 24.4, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 440, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 88.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 320, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 64.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 92, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 20, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 332, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.4, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 27, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 12},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 117, 'age': 7},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 402, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.4, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 120, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 26.7, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 450, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 90.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 330, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 93, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 21, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 333, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.6, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 28, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 13},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 118, 'age': 8},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 403, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.6, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 130, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 28.9, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 460, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 92.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 340, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 68.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 94, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 22, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 334, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 66.8, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 29, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 14},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 119, 'age': 9},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 404, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 80.8, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 140, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 31.1, 'severity': 'LIFE_THREATENING'})],
 [('mild control',
   {'pef': 470, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 94.0, 'severity': 'MILD'}),
  ('moderate',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'MODERATE'}),
  ('exactly 50 percent',
   {'pef': 250, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 95, 'age': 30},
   {'pct': 50.0, 'severity': 'ACUTE_SEVERE'}),
  ('exactly 33 percent',
   {'pef': 165, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 23, 'hr': 90, 'age': 30},
   {'pct': 33.0, 'severity': 'ACUTE_SEVERE'}),
  ('hypoxic with fair peak flow',
   {'pef': 335, 'best': 500, 'spo2': 90, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 67.0, 'severity': 'LIFE_THREATENING'}),
  ('severe by rate alone',
   {'pef': 350, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 30, 'hr': 90, 'age': 30},
   {'pct': 70.0, 'severity': 'ACUTE_SEVERE'}),
  ('heart rate exactly 110',
   {'pef': 360, 'best': 500, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 110, 'age': 15},
   {'pct': 72.0, 'severity': 'ACUTE_SEVERE'}),
  ('tachycardic child',
   {'pef': 200, 'best': 250, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 120, 'age': 10},
   {'pct': 80.0, 'severity': 'ACUTE_SEVERE'}),
  ('cannot finish sentences',
   {'pef': 405, 'best': 500, 'spo2': 97, 'sentences': False, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 81.0, 'severity': 'ACUTE_SEVERE'}),
  ('below one third',
   {'pef': 150, 'best': 450, 'spo2': 97, 'sentences': True, 'rr': 18, 'hr': 90, 'age': 30},
   {'pct': 33.3, 'severity': 'ACUTE_SEVERE'})]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
mild control{'pct': 86.0, 'severity': 'MILD'}{'pct': 86.0, 'severity': 'MILD'}Passed
moderate{'pct': 62.0, 'severity': 'MODERATE'}{'pct': 62.0, 'severity': 'MODERATE'}Passed
exactly 50 percent{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}{'pct': 50.0, 'severity': 'ACUTE_SEVERE'}Passed
exactly 33 percent{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}{'pct': 33.0, 'severity': 'ACUTE_SEVERE'}Passed
hypoxic with fair peak flow{'pct': 66.2, 'severity': 'LIFE_THREATENING'}{'pct': 66.2, 'severity': 'LIFE_THREATENING'}Passed
severe by rate alone{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}{'pct': 70.0, 'severity': 'ACUTE_SEVERE'}Passed
heart rate exactly 110{'pct': 72.0, 'severity': 'ACUTE_SEVERE'}{'pct': 72.0, 'severity': 'ACUTE_SEVERE'}Passed
tachycardic child{'pct': 80.0, 'severity': 'ACUTE_SEVERE'}{'pct': 80.0, 'severity': 'ACUTE_SEVERE'}Passed
cannot finish sentences{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}{'pct': 80.2, 'severity': 'ACUTE_SEVERE'}Passed
below one third{'pct': 24.4, 'severity': 'LIFE_THREATENING'}{'pct': 24.4, 'severity': 'LIFE_THREATENING'}Passed

SHA-256 / a94b1e0febf6d57b597c0d7c2881432e37cb6027687f38d3e85a4f352d9142a1

Verification & scope

A deterministic toy software model with explicitly stipulated thresholds and formulas; it is not clinical guidance, not a validated medical calculator, and makes no claim of conformance to any published protocol. Numbered variants vary patient and order inputs. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:47:28.240813+00:00.

Case digest / 4d2b780a0b5c31c4c7d52106d3fa357cd453c2d8601245831e53eb2093f0302f