FA-64266 / Medication dosing calculations / Open access
Order screening against mg/kg reference ranges: absolute maximum comparison · case 01
A dose exactly at the absolute maximum is rejected.
ROOT CAUSE
The absolute ceiling check uses >=.
VERIFIED REPAIR
Return OVER_ABSOLUTE only when the dose exceeds abs_max_mg.
Unsuccessful approach: Letting the weight-based 10% tolerance leak into the absolute ceiling allows doses above it.
Case contract
Input {dose_mg, weight_kg (or null), age_days, range [lo, hi] mg/kg, optional neonatal_range, abs_max_mg}. Missing weight returns NO_WEIGHT. A dose above abs_max_mg returns OVER_ABSOLUTE. Neonates (age_days < 28) use neonatal_range when present. Toy 10% tolerance: UNDER when mg/kg < 0.9*lo, OVER when mg/kg > 1.1*hi, else OK. Return {flag, mg_per_kg (2 dp)}.
Why this case matters
Clinical decision support screens orders against weight-based ranges; the population gate and the tolerance edges are separate rules.
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):
if x['weight_kg'] is None:
return {'flag': 'NO_WEIGHT'}
dose = Fraction(str(x['dose_mg']))
if dose >= x['abs_max_mg']:
return {'flag': 'OVER_ABSOLUTE'}
lo, hi = x['range']
if x['age_days'] < 28 and x.get('neonatal_range'):
lo, hi = x['neonatal_range']
per_kg = dose / Fraction(str(x['weight_kg']))
if per_kg * 10 < Fraction(str(lo)) * 9:
flag = 'UNDER'
elif per_kg * 10 > Fraction(str(hi)) * 11:
flag = 'OVER'
else:
flag = 'OK'
return {'flag': flag, 'mg_per_kg': round(float(per_kg), 2)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('within range control',
{'dose_mg': 310, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.5}),
('neonate on day 27',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.33}),
('infant on day 28 uses standard range',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 91,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 91, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.1}),
('clear underdose',
{'dose_mg': 79, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.9}),
('overdose tolerance edge',
{'dose_mg': 242, 'weight_kg': 11, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 65, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.38}),
('absolute maximum',
{'dose_mg': 1060, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 100, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 320, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.0}),
('neonate on day 27',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.67}),
('infant on day 28 uses standard range',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 92,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 92, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.2}),
('clear underdose',
{'dose_mg': 78, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.8}),
('overdose tolerance edge',
{'dose_mg': 264, 'weight_kg': 12, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 70, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 14.29}),
('absolute maximum',
{'dose_mg': 1070, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 200, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 330, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.5}),
('neonate on day 27',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.0}),
('infant on day 28 uses standard range',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.0}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 93,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 93, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.3}),
('clear underdose',
{'dose_mg': 77, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.7}),
('overdose tolerance edge',
{'dose_mg': 286, 'weight_kg': 13, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 75, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 13.33}),
('absolute maximum',
{'dose_mg': 1080, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 300, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 340, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.0}),
('neonate on day 27',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.33}),
('infant on day 28 uses standard range',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 94,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 94, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.4}),
('clear underdose',
{'dose_mg': 76, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.6}),
('overdose tolerance edge',
{'dose_mg': 308, 'weight_kg': 14, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 80, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 12.5}),
('absolute maximum',
{'dose_mg': 1090, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 400, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 350, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.5}),
('neonate on day 27',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OVER', 'mg_per_kg': 5.67}),
('infant on day 28 uses standard range',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 95,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 95, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.5}),
('clear underdose',
{'dose_mg': 75, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.5}),
('overdose tolerance edge',
{'dose_mg': 330, 'weight_kg': 15, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 85, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 11.76}),
('absolute maximum',
{'dose_mg': 1100, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 500, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})]]
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 |
|---|---|---|---|
| within range control | {'flag': 'OK', 'mg_per_kg': 15.5} | {'flag': 'OK', 'mg_per_kg': 15.5} | Passed |
| neonate on day 27 | {'flag': 'OK', 'mg_per_kg': 4.33} | {'flag': 'OK', 'mg_per_kg': 4.33} | Passed |
| infant on day 28 uses standard range | {'flag': 'UNDER', 'mg_per_kg': 4.33} | {'flag': 'UNDER', 'mg_per_kg': 4.33} | Passed |
| older infant ignores neonatal range | {'flag': 'OK', 'mg_per_kg': 10.0} | {'flag': 'OK', 'mg_per_kg': 10.0} | Passed |
| underdose within tolerance | {'flag': 'OK', 'mg_per_kg': 9.1} | {'flag': 'OK', 'mg_per_kg': 9.1} | Passed |
| clear underdose | {'flag': 'UNDER', 'mg_per_kg': 7.9} | {'flag': 'UNDER', 'mg_per_kg': 7.9} | Passed |
| overdose tolerance edge | {'flag': 'OK', 'mg_per_kg': 22.0} | {'flag': 'OK', 'mg_per_kg': 22.0} | Passed |
| dose exactly at absolute maximum | {'flag': 'OVER_ABSOLUTE'} | {'flag': 'OK', 'mg_per_kg': 15.38} | Failed |
| absolute maximum | {'flag': 'OVER_ABSOLUTE'} | {'flag': 'OVER_ABSOLUTE'} | Passed |
| missing weight | {'flag': 'NO_WEIGHT'} | {'flag': 'NO_WEIGHT'} | Passed |
SHA-256 / 8e246fa97be0908fb22bbc1d87ff9b408475eea192473988eff632e8c6a796a1
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):
if x['weight_kg'] is None:
return {'flag': 'NO_WEIGHT'}
dose = Fraction(str(x['dose_mg']))
if dose > x['abs_max_mg'] * 11 / 10:
return {'flag': 'OVER_ABSOLUTE'}
lo, hi = x['range']
if x['age_days'] < 28 and x.get('neonatal_range'):
lo, hi = x['neonatal_range']
per_kg = dose / Fraction(str(x['weight_kg']))
if per_kg * 10 < Fraction(str(lo)) * 9:
flag = 'UNDER'
elif per_kg * 10 > Fraction(str(hi)) * 11:
flag = 'OVER'
else:
flag = 'OK'
return {'flag': flag, 'mg_per_kg': round(float(per_kg), 2)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('within range control',
{'dose_mg': 310, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.5}),
('neonate on day 27',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.33}),
('infant on day 28 uses standard range',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 91,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 91, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.1}),
('clear underdose',
{'dose_mg': 79, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.9}),
('overdose tolerance edge',
{'dose_mg': 242, 'weight_kg': 11, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 65, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.38}),
('absolute maximum',
{'dose_mg': 1060, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 100, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 320, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.0}),
('neonate on day 27',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.67}),
('infant on day 28 uses standard range',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 92,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 92, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.2}),
('clear underdose',
{'dose_mg': 78, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.8}),
('overdose tolerance edge',
{'dose_mg': 264, 'weight_kg': 12, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 70, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 14.29}),
('absolute maximum',
{'dose_mg': 1070, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 200, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 330, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.5}),
('neonate on day 27',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.0}),
('infant on day 28 uses standard range',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.0}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 93,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 93, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.3}),
('clear underdose',
{'dose_mg': 77, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.7}),
('overdose tolerance edge',
{'dose_mg': 286, 'weight_kg': 13, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 75, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 13.33}),
('absolute maximum',
{'dose_mg': 1080, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 300, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 340, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.0}),
('neonate on day 27',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.33}),
('infant on day 28 uses standard range',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 94,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 94, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.4}),
('clear underdose',
{'dose_mg': 76, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.6}),
('overdose tolerance edge',
{'dose_mg': 308, 'weight_kg': 14, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 80, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 12.5}),
('absolute maximum',
{'dose_mg': 1090, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 400, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 350, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.5}),
('neonate on day 27',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OVER', 'mg_per_kg': 5.67}),
('infant on day 28 uses standard range',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 95,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 95, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.5}),
('clear underdose',
{'dose_mg': 75, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.5}),
('overdose tolerance edge',
{'dose_mg': 330, 'weight_kg': 15, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 85, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 11.76}),
('absolute maximum',
{'dose_mg': 1100, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 500, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})]]
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 |
|---|---|---|---|
| within range control | {'flag': 'OK', 'mg_per_kg': 15.5} | {'flag': 'OK', 'mg_per_kg': 15.5} | Passed |
| neonate on day 27 | {'flag': 'OK', 'mg_per_kg': 4.33} | {'flag': 'OK', 'mg_per_kg': 4.33} | Passed |
| infant on day 28 uses standard range | {'flag': 'UNDER', 'mg_per_kg': 4.33} | {'flag': 'UNDER', 'mg_per_kg': 4.33} | Passed |
| older infant ignores neonatal range | {'flag': 'OK', 'mg_per_kg': 10.0} | {'flag': 'OK', 'mg_per_kg': 10.0} | Passed |
| underdose within tolerance | {'flag': 'OK', 'mg_per_kg': 9.1} | {'flag': 'OK', 'mg_per_kg': 9.1} | Passed |
| clear underdose | {'flag': 'UNDER', 'mg_per_kg': 7.9} | {'flag': 'UNDER', 'mg_per_kg': 7.9} | Passed |
| overdose tolerance edge | {'flag': 'OK', 'mg_per_kg': 22.0} | {'flag': 'OK', 'mg_per_kg': 22.0} | Passed |
| dose exactly at absolute maximum | {'flag': 'OK', 'mg_per_kg': 15.38} | {'flag': 'OK', 'mg_per_kg': 15.38} | Passed |
| absolute maximum | {'flag': 'OK', 'mg_per_kg': 17.67} | {'flag': 'OVER_ABSOLUTE'} | Failed |
| missing weight | {'flag': 'NO_WEIGHT'} | {'flag': 'NO_WEIGHT'} | Passed |
SHA-256 / 75f18879c44b241a5702ede94e67466c210d07eb889c89497527fb1972f93c83
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):
if x['weight_kg'] is None:
return {'flag': 'NO_WEIGHT'}
dose = Fraction(str(x['dose_mg']))
if dose > x['abs_max_mg']:
return {'flag': 'OVER_ABSOLUTE'}
lo, hi = x['range']
if x['age_days'] < 28 and x.get('neonatal_range'):
lo, hi = x['neonatal_range']
per_kg = dose / Fraction(str(x['weight_kg']))
if per_kg * 10 < Fraction(str(lo)) * 9:
flag = 'UNDER'
elif per_kg * 10 > Fraction(str(hi)) * 11:
flag = 'OVER'
else:
flag = 'OK'
return {'flag': flag, 'mg_per_kg': round(float(per_kg), 2)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('within range control',
{'dose_mg': 310, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.5}),
('neonate on day 27',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.33}),
('infant on day 28 uses standard range',
{'dose_mg': 13,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 91,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 91, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.1}),
('clear underdose',
{'dose_mg': 79, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.9}),
('overdose tolerance edge',
{'dose_mg': 242, 'weight_kg': 11, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 65, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 15.38}),
('absolute maximum',
{'dose_mg': 1060, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 100, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 320, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.0}),
('neonate on day 27',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 4.67}),
('infant on day 28 uses standard range',
{'dose_mg': 14,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 4.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 92,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 92, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.2}),
('clear underdose',
{'dose_mg': 78, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.8}),
('overdose tolerance edge',
{'dose_mg': 264, 'weight_kg': 12, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 70, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 14.29}),
('absolute maximum',
{'dose_mg': 1070, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 200, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 330, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 16.5}),
('neonate on day 27',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.0}),
('infant on day 28 uses standard range',
{'dose_mg': 15,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.0}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 93,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 93, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.3}),
('clear underdose',
{'dose_mg': 77, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.7}),
('overdose tolerance edge',
{'dose_mg': 286, 'weight_kg': 13, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 75, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 13.33}),
('absolute maximum',
{'dose_mg': 1080, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 300, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 340, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.0}),
('neonate on day 27',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 5.33}),
('infant on day 28 uses standard range',
{'dose_mg': 16,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.33}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 94,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 94, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.4}),
('clear underdose',
{'dose_mg': 76, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.6}),
('overdose tolerance edge',
{'dose_mg': 308, 'weight_kg': 14, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 80, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 12.5}),
('absolute maximum',
{'dose_mg': 1090, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 400, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})],
[('within range control',
{'dose_mg': 350, 'weight_kg': 20, 'age_days': 2000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 17.5}),
('neonate on day 27',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 27,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'OVER', 'mg_per_kg': 5.67}),
('infant on day 28 uses standard range',
{'dose_mg': 17,
'weight_kg': 3,
'age_days': 28,
'range': [10, 20],
'neonatal_range': [3, 5],
'abs_max_mg': 100},
{'flag': 'UNDER', 'mg_per_kg': 5.67}),
('older infant ignores neonatal range',
{'dose_mg': 40,
'weight_kg': 4,
'age_days': 95,
'range': [8, 12],
'neonatal_range': [2, 4],
'abs_max_mg': 100},
{'flag': 'OK', 'mg_per_kg': 10.0}),
('underdose within tolerance',
{'dose_mg': 95, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 9.5}),
('clear underdose',
{'dose_mg': 75, 'weight_kg': 10, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'UNDER', 'mg_per_kg': 7.5}),
('overdose tolerance edge',
{'dose_mg': 330, 'weight_kg': 15, 'age_days': 1000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 22.0}),
('dose exactly at absolute maximum',
{'dose_mg': 1000, 'weight_kg': 85, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OK', 'mg_per_kg': 11.76}),
('absolute maximum',
{'dose_mg': 1100, 'weight_kg': 60, 'age_days': 9000, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'OVER_ABSOLUTE'}),
('missing weight',
{'dose_mg': 100, 'weight_kg': None, 'age_days': 500, 'range': [10, 20], 'abs_max_mg': 1000},
{'flag': 'NO_WEIGHT'})]]
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 |
|---|---|---|---|
| within range control | {'flag': 'OK', 'mg_per_kg': 15.5} | {'flag': 'OK', 'mg_per_kg': 15.5} | Passed |
| neonate on day 27 | {'flag': 'OK', 'mg_per_kg': 4.33} | {'flag': 'OK', 'mg_per_kg': 4.33} | Passed |
| infant on day 28 uses standard range | {'flag': 'UNDER', 'mg_per_kg': 4.33} | {'flag': 'UNDER', 'mg_per_kg': 4.33} | Passed |
| older infant ignores neonatal range | {'flag': 'OK', 'mg_per_kg': 10.0} | {'flag': 'OK', 'mg_per_kg': 10.0} | Passed |
| underdose within tolerance | {'flag': 'OK', 'mg_per_kg': 9.1} | {'flag': 'OK', 'mg_per_kg': 9.1} | Passed |
| clear underdose | {'flag': 'UNDER', 'mg_per_kg': 7.9} | {'flag': 'UNDER', 'mg_per_kg': 7.9} | Passed |
| overdose tolerance edge | {'flag': 'OK', 'mg_per_kg': 22.0} | {'flag': 'OK', 'mg_per_kg': 22.0} | Passed |
| dose exactly at absolute maximum | {'flag': 'OK', 'mg_per_kg': 15.38} | {'flag': 'OK', 'mg_per_kg': 15.38} | Passed |
| absolute maximum | {'flag': 'OVER_ABSOLUTE'} | {'flag': 'OVER_ABSOLUTE'} | Passed |
| missing weight | {'flag': 'NO_WEIGHT'} | {'flag': 'NO_WEIGHT'} | Passed |
SHA-256 / 067fe08aa7b2721a44c3b7e3fc4de2e4f73db2b351c10c9e7899fff48cbbae05
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:22.608271+00:00.
Case digest / ff553c32aabc92b84e96c07093d4880e7fe85636dce9f403a8238687003f90c4