FA-64596 / Clinical triage scoring / Open access
Upper gastrointestinal bleed risk score and disposition: systolic lowest band · case 01
A systolic pressure of exactly 90 scores 3.
ROOT CAUSE
The 90-99 band excludes 90.
VERIFIED REPAIR
Score 2 for 90-99 and 3 only below 90.
Unsuccessful approach: Collapsing the lowest band into 2 points under-scores shock.
Case contract
Input {urea (mmol/L), hb (g/dL), sex, sbp, hr, melena, syncope, hepatic, cardiac}. Toy points: urea < 6.5:0, 6.5-7.9:2, 8.0-9.9:3, 10.0-24.9:4, >=25:6. Hb male >=13:0, 12-12.9:1, 10-11.9:3, <10:6; female >=12:0, 10-11.9:1, <10:6. SBP >=110:0, 100-109:1, 90-99:2, <90:3. hr >= 100:1, melena 1, syncope 2, hepatic disease 2, cardiac failure 2. Disposition: 0 DISCHARGE, 1-6 ADMIT, >= 7 URGENT. Return {score, disposition}.
Why this case matters
Bleeding risk scores combine sex-specific laboratory tables with haemodynamic bands; each table edge is a separable defect.
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):
u = Fraction(str(x['urea'])) * 10
hb = Fraction(str(x['hb'])) * 10
p_u = 0 if u < 65 else 2 if u < 80 else 3 if u < 100 else 4 if u < 250 else 6
if x['sex'] == 'M':
p_hb = 0 if hb >= 130 else 1 if hb >= 120 else 3 if hb >= 100 else 6
else:
p_hb = 0 if hb >= 120 else 1 if hb >= 100 else 6
bp = x['sbp']
p_bp = 0 if bp >= 110 else 1 if bp >= 100 else 2 if bp > 90 else 3
s = p_u + p_hb + p_bp
s += 1 if x['hr'] >= 100 else 0
s += 1 if x['melena'] else 0
s += 2 if x['syncope'] else 0
s += 2 if x['hepatic'] else 0
s += 2 if x['cardiac'] else 0
disp = 'DISCHARGE' if s == 0 else 'ADMIT' if s < 7 else 'URGENT'
return {'score': s, 'disposition': disp}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 121,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 111,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.3',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 91,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 84,
'hr': 101,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.1',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.1',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.1',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 122,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.6',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 112,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.4',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 92,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 83,
'hr': 102,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.2',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.2',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.2',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 123,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.7',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 113,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.5',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 93,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 82,
'hr': 103,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.3',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.3',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.3',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 124,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.8',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 114,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.6',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 94,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 81,
'hr': 104,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.4',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.4',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.4',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.9',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 115,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.7',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 95,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 80,
'hr': 105,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.5',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.5',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| all normal discharge | {'disposition': 'DISCHARGE', 'score': 0} | {'disposition': 'DISCHARGE', 'score': 0} | Passed |
| urea 6.5 to 6.9 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| urea exactly 6.5 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| female haemoglobin 11 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| female haemoglobin below 10 | {'disposition': 'ADMIT', 'score': 6} | {'disposition': 'ADMIT', 'score': 6} | Passed |
| male haemoglobin 12.5 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| systolic exactly 90 | {'disposition': 'ADMIT', 'score': 5} | {'disposition': 'ADMIT', 'score': 4} | Failed |
| systolic below 90 with tachycardia | {'disposition': 'URGENT', 'score': 7} | {'disposition': 'URGENT', 'score': 7} | Passed |
| tachycardia alone | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| melena with tachycardia | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| high risk bleed | {'disposition': 'URGENT', 'score': 17} | {'disposition': 'URGENT', 'score': 17} | Passed |
SHA-256 / f0d1f2cf9732db15ab5df960d37c1147d5ca8c66a95d48df5bbcbe8af1fb5960
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):
u = Fraction(str(x['urea'])) * 10
hb = Fraction(str(x['hb'])) * 10
p_u = 0 if u < 65 else 2 if u < 80 else 3 if u < 100 else 4 if u < 250 else 6
if x['sex'] == 'M':
p_hb = 0 if hb >= 130 else 1 if hb >= 120 else 3 if hb >= 100 else 6
else:
p_hb = 0 if hb >= 120 else 1 if hb >= 100 else 6
bp = x['sbp']
p_bp = 0 if bp >= 110 else 1 if bp >= 100 else 2
s = p_u + p_hb + p_bp
s += 1 if x['hr'] >= 100 else 0
s += 1 if x['melena'] else 0
s += 2 if x['syncope'] else 0
s += 2 if x['hepatic'] else 0
s += 2 if x['cardiac'] else 0
disp = 'DISCHARGE' if s == 0 else 'ADMIT' if s < 7 else 'URGENT'
return {'score': s, 'disposition': disp}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 121,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 111,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.3',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 91,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 84,
'hr': 101,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.1',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.1',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.1',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 122,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.6',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 112,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.4',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 92,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 83,
'hr': 102,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.2',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.2',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.2',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 123,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.7',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 113,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.5',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 93,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 82,
'hr': 103,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.3',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.3',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.3',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 124,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.8',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 114,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.6',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 94,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 81,
'hr': 104,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.4',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.4',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.4',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.9',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 115,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.7',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 95,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 80,
'hr': 105,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.5',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.5',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| all normal discharge | {'disposition': 'DISCHARGE', 'score': 0} | {'disposition': 'DISCHARGE', 'score': 0} | Passed |
| urea 6.5 to 6.9 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| urea exactly 6.5 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| female haemoglobin 11 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| female haemoglobin below 10 | {'disposition': 'ADMIT', 'score': 6} | {'disposition': 'ADMIT', 'score': 6} | Passed |
| male haemoglobin 12.5 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| systolic exactly 90 | {'disposition': 'ADMIT', 'score': 4} | {'disposition': 'ADMIT', 'score': 4} | Passed |
| systolic below 90 with tachycardia | {'disposition': 'ADMIT', 'score': 6} | {'disposition': 'URGENT', 'score': 7} | Failed |
| tachycardia alone | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| melena with tachycardia | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| high risk bleed | {'disposition': 'URGENT', 'score': 16} | {'disposition': 'URGENT', 'score': 17} | Failed |
SHA-256 / 22eeb9014c0004be3adb265c454bf6da847a379b2f49eb0e709fc12ac1d422da
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):
u = Fraction(str(x['urea'])) * 10
hb = Fraction(str(x['hb'])) * 10
p_u = 0 if u < 65 else 2 if u < 80 else 3 if u < 100 else 4 if u < 250 else 6
if x['sex'] == 'M':
p_hb = 0 if hb >= 130 else 1 if hb >= 120 else 3 if hb >= 100 else 6
else:
p_hb = 0 if hb >= 120 else 1 if hb >= 100 else 6
bp = x['sbp']
p_bp = 0 if bp >= 110 else 1 if bp >= 100 else 2 if bp >= 90 else 3
s = p_u + p_hb + p_bp
s += 1 if x['hr'] >= 100 else 0
s += 1 if x['melena'] else 0
s += 2 if x['syncope'] else 0
s += 2 if x['hepatic'] else 0
s += 2 if x['cardiac'] else 0
disp = 'DISCHARGE' if s == 0 else 'ADMIT' if s < 7 else 'URGENT'
return {'score': s, 'disposition': disp}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 121,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 111,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.1',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.3',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 91,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 84,
'hr': 101,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.1',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.1',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.1',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 122,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.6',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 112,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.2',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.4',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 92,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 83,
'hr': 102,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.2',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.2',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.2',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 123,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.7',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 113,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.3',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.5',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 93,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 82,
'hr': 103,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.3',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.3',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.3',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 124,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.8',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 114,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.4',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.6',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 94,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 81,
'hr': 104,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.4',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.4',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.4',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})],
[('all normal discharge',
{'urea': '5.0',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 0, 'disposition': 'DISCHARGE'}),
('urea 6.5 to 6.9',
{'urea': '6.9',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('urea exactly 6.5',
{'urea': '6.5',
'hb': '14.0',
'sex': 'M',
'sbp': 115,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('female haemoglobin 11',
{'urea': '5.0',
'hb': '11.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('female haemoglobin below 10',
{'urea': '5.0',
'hb': '9.5',
'sex': 'F',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 6, 'disposition': 'ADMIT'}),
('male haemoglobin 12.5',
{'urea': '5.0',
'hb': '12.7',
'sex': 'M',
'sbp': 125,
'hr': 80,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('systolic exactly 90',
{'urea': '7.0',
'hb': '14.0',
'sex': 'M',
'sbp': 90,
'hr': 95,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 4, 'disposition': 'ADMIT'}),
('systolic below 90 with tachycardia',
{'urea': '9.0',
'hb': '14.0',
'sex': 'M',
'sbp': 80,
'hr': 105,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 7, 'disposition': 'URGENT'}),
('tachycardia alone',
{'urea': '5.0',
'hb': '13.5',
'sex': 'M',
'sbp': 125,
'hr': 100,
'melena': False,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 1, 'disposition': 'ADMIT'}),
('melena with tachycardia',
{'urea': '5.5',
'hb': '14.0',
'sex': 'M',
'sbp': 125,
'hr': 105,
'melena': True,
'syncope': False,
'hepatic': False,
'cardiac': False},
{'score': 2, 'disposition': 'ADMIT'}),
('high risk bleed',
{'urea': '26',
'hb': '8.5',
'sex': 'M',
'sbp': 85,
'hr': 80,
'melena': False,
'syncope': True,
'hepatic': False,
'cardiac': False},
{'score': 17, 'disposition': 'URGENT'})]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| all normal discharge | {'disposition': 'DISCHARGE', 'score': 0} | {'disposition': 'DISCHARGE', 'score': 0} | Passed |
| urea 6.5 to 6.9 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| urea exactly 6.5 | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| female haemoglobin 11 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| female haemoglobin below 10 | {'disposition': 'ADMIT', 'score': 6} | {'disposition': 'ADMIT', 'score': 6} | Passed |
| male haemoglobin 12.5 | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| systolic exactly 90 | {'disposition': 'ADMIT', 'score': 4} | {'disposition': 'ADMIT', 'score': 4} | Passed |
| systolic below 90 with tachycardia | {'disposition': 'URGENT', 'score': 7} | {'disposition': 'URGENT', 'score': 7} | Passed |
| tachycardia alone | {'disposition': 'ADMIT', 'score': 1} | {'disposition': 'ADMIT', 'score': 1} | Passed |
| melena with tachycardia | {'disposition': 'ADMIT', 'score': 2} | {'disposition': 'ADMIT', 'score': 2} | Passed |
| high risk bleed | {'disposition': 'URGENT', 'score': 17} | {'disposition': 'URGENT', 'score': 17} | Passed |
SHA-256 / d1d57b35fa567adfdbfa553245fad3695327c44cc91706e21591c4e60eda9a65
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:26.031623+00:00.
Case digest / 90561c8bb988d9a313a46e5c0f770b854b0dfdc195df7ef4fc45b986b1835e50