FA-64476 / Clinical triage scoring / Open access
Embolism pretest probability and rule-out pathway: half-point score report · case 01
A score of 1.5 is displayed as 1.
ROOT CAUSE
Integer division drops the half point when converting from half-point units.
VERIFIED REPAIR
Report the score as h/2 with its half point.
Unsuccessful approach: Rounding to the nearest integer still hides half points.
Case contract
Input {dvt_signs, pe_most_likely, hr, immobile_days, surgery_weeks_ago (or null), prior_vte, hemoptysis, malignancy, age, spo2, estrogen}. Toy points: DVT signs 3, alternative less likely 3, hr > 100 1.5, immobilisation >= 3 days OR surgery within 4 weeks 1.5 (counted once), prior VTE 1.5, haemoptysis 1, malignancy 1. Score > 4 is LIKELY (next IMAGING). UNLIKELY patients are RULED_OUT when age < 50, hr < 100, spo2 >= 95 and none of haemoptysis, estrogen, prior VTE or surgery within 4 weeks; otherwise next D_DIMER. Return {score, category, next}.
Why this case matters
Pretest scoring feeds a rule-out gate; half-point arithmetic, the either/or item and exclusion lists are separate defect sites.
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):
h = 0
h += 6 if x['dvt_signs'] else 0
h += 6 if x['pe_most_likely'] else 0
h += 3 if x['hr'] > 100 else 0
h += 3 if x['immobile_days'] >= 3 or (x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4) else 0
h += 3 if x['prior_vte'] else 0
h += 2 if x['hemoptysis'] else 0
h += 2 if x['malignancy'] else 0
likely = h > 8
recent_surg = x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4
if likely:
nxt = 'IMAGING'
elif x['age'] < 50 and x['hr'] < 100 and x['spo2'] >= 95 and not (x['hemoptysis'] or x['estrogen'] or x['prior_vte'] or recent_surg):
nxt = 'RULED_OUT'
else:
nxt = 'D_DIMER'
return {'score': h // 2, 'category': 'LIKELY' if likely else 'UNLIKELY', 'next': nxt}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 26,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 4,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 61,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 102,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 6,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 41,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 27,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 5,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 62,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 103,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 7,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 42,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 28,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 6,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 63,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 104,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 8,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 43,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 7,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 64,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 105,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 9,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 44,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 8,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 65,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 106,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 10,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 45,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})]]
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 |
|---|---|---|---|
| low risk young patient | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| immobilised after surgery counted once | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| surgery on the day counts | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| score 4.5 is likely | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| score 4.0 unlikely | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4.0} | Passed |
| half point score reported | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
| surgery exactly 4 weeks ago excludes rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
| remote surgery allows rule-out | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| estrogen use blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0.0} | Passed |
| prior VTE blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
SHA-256 / ca7b615248cf407837ca6188014cc9778f6fcbaf6caf7f586f4d175e3ebb071d
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):
h = 0
h += 6 if x['dvt_signs'] else 0
h += 6 if x['pe_most_likely'] else 0
h += 3 if x['hr'] > 100 else 0
h += 3 if x['immobile_days'] >= 3 or (x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4) else 0
h += 3 if x['prior_vte'] else 0
h += 2 if x['hemoptysis'] else 0
h += 2 if x['malignancy'] else 0
likely = h > 8
recent_surg = x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4
if likely:
nxt = 'IMAGING'
elif x['age'] < 50 and x['hr'] < 100 and x['spo2'] >= 95 and not (x['hemoptysis'] or x['estrogen'] or x['prior_vte'] or recent_surg):
nxt = 'RULED_OUT'
else:
nxt = 'D_DIMER'
return {'score': round(h / 2), 'category': 'LIKELY' if likely else 'UNLIKELY', 'next': nxt}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 26,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 4,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 61,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 102,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 6,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 41,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 27,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 5,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 62,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 103,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 7,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 42,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 28,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 6,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 63,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 104,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 8,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 43,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 7,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 64,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 105,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 9,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 44,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 8,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 65,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 106,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 10,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 45,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})]]
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 |
|---|---|---|---|
| low risk young patient | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| immobilised after surgery counted once | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| surgery on the day counts | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| score 4.5 is likely | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Failed |
| score 4.0 unlikely | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4.0} | Passed |
| half point score reported | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 2} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
| surgery exactly 4 weeks ago excludes rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 2} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
| remote surgery allows rule-out | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| estrogen use blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0.0} | Passed |
| prior VTE blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 2} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Failed |
SHA-256 / 632efb513dc9be44a39080fd764c245898ba5e260a636aa52f71b97b56027f9f
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):
h = 0
h += 6 if x['dvt_signs'] else 0
h += 6 if x['pe_most_likely'] else 0
h += 3 if x['hr'] > 100 else 0
h += 3 if x['immobile_days'] >= 3 or (x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4) else 0
h += 3 if x['prior_vte'] else 0
h += 2 if x['hemoptysis'] else 0
h += 2 if x['malignancy'] else 0
likely = h > 8
recent_surg = x['surgery_weeks_ago'] is not None and x['surgery_weeks_ago'] <= 4
if likely:
nxt = 'IMAGING'
elif x['age'] < 50 and x['hr'] < 100 and x['spo2'] >= 95 and not (x['hemoptysis'] or x['estrogen'] or x['prior_vte'] or recent_surg):
nxt = 'RULED_OUT'
else:
nxt = 'D_DIMER'
return {'score': h / 2, 'category': 'LIKELY' if likely else 'UNLIKELY', 'next': nxt}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 26,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 4,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 61,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 102,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 6,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 41,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 27,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 5,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 62,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 103,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 7,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 42,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 28,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 6,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 63,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 104,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 8,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 31,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 43,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 29,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 7,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': True,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 5.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 64,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 105,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 34,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 9,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 32,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 44,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})],
[('low risk young patient',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 30,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('immobilised after surgery counted once',
{'dvt_signs': True,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 8,
'surgery_weeks_ago': 2,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('surgery on the day counts',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 0,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 40,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.5 is likely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 4.5, 'category': 'LIKELY', 'next': 'IMAGING'}),
('score 4.0 unlikely',
{'dvt_signs': False,
'pe_most_likely': True,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': True,
'age': 65,
'spo2': 98,
'estrogen': False},
{'score': 4.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('half point score reported',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 106,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 55,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('surgery exactly 4 weeks ago excludes rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 4,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('remote surgery allows rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': 10,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 35,
'spo2': 98,
'estrogen': False},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'RULED_OUT'}),
('estrogen use blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': False,
'hemoptysis': False,
'malignancy': False,
'age': 33,
'spo2': 98,
'estrogen': True},
{'score': 0.0, 'category': 'UNLIKELY', 'next': 'D_DIMER'}),
('prior VTE blocks rule-out',
{'dvt_signs': False,
'pe_most_likely': False,
'hr': 80,
'immobile_days': 0,
'surgery_weeks_ago': None,
'prior_vte': True,
'hemoptysis': False,
'malignancy': False,
'age': 45,
'spo2': 98,
'estrogen': False},
{'score': 1.5, 'category': 'UNLIKELY', 'next': 'D_DIMER'})]]
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 |
|---|---|---|---|
| low risk young patient | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| immobilised after surgery counted once | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Passed |
| surgery on the day counts | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Passed |
| score 4.5 is likely | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | {'category': 'LIKELY', 'next': 'IMAGING', 'score': 4.5} | Passed |
| score 4.0 unlikely | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4.0} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 4.0} | Passed |
| half point score reported | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Passed |
| surgery exactly 4 weeks ago excludes rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Passed |
| remote surgery allows rule-out | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | {'category': 'UNLIKELY', 'next': 'RULED_OUT', 'score': 0.0} | Passed |
| estrogen use blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0.0} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 0.0} | Passed |
| prior VTE blocks rule-out | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | {'category': 'UNLIKELY', 'next': 'D_DIMER', 'score': 1.5} | Passed |
SHA-256 / 78c970b53bb27ecc987497bd852ca81a7dcc07e9e3cc936e91a56ecd715191e6
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:24.718795+00:00.
Case digest / 990992773f74aee7ae3218f7c0ef75fb061c91591206eea53af09ab93346eed9