FA-84861 / Fantasy sports scoring / Open access
Score display rounds half-hundredths with binary float formatting · case 01
A 12.25 score shows as 12.2 on the scoreboard while 12.35 shows 12.3 or 12.4 depending on float noise.
ROOT CAUSE
The display formats pts/100 with %.1f, inheriting binary float representation and half-even behavior instead of half-away-from-zero.
VERIFIED REPAIR
Round the integer hundredths to tenths half away from zero with integer arithmetic and suppress -0.0.
Unsuccessful approach: Integer half-up rounding without separating the sign rounds negative scores toward positive and prints them wrongly.
Case contract
Score a skill-player stat line in integer hundredths. Passing yards earn 1 point per full 25 yards, rushing and receiving yards 1 point per full 10 yards, each category truncated toward zero separately. Pass TD 4, interception -2, rush/receiving TD 6, fumble lost -2 (fumbles recovered by the own team are free), two-point conversion 2, each first down 0.25. Receptions are worth 0/0.5/1 for std/half/ppr, and a TE earns an extra 0.5 per reception on top. 300+ passing, 100+ rushing and 100+ receiving yards each add a 3 point bonus. The display string rounds to tenths half away from zero and never shows -0.0.
Why this case matters
Fantasy football points drive weekly matchups and payouts; small unit or boundary mistakes flip results that users dispute.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(stats, fmt, pos):
def unit(y, per):
q = abs(y) // per
return q if y >= 0 else -q
rec_val = {'std': 0, 'half': 50, 'ppr': 100}[fmt]
if pos == 'TE':
rec_val += 50
pts = 0
pts += unit(stats['pass_yds'], 25) * 100
pts += stats['pass_td'] * 400
pts -= stats['int'] * 200
pts += unit(stats['rush_yds'], 10) * 100
pts += stats['rush_td'] * 600
pts += stats['rec'] * rec_val
pts += unit(stats['rec_yds'], 10) * 100
pts += stats['rec_td'] * 600
pts -= stats['fum_lost'] * 200
pts += stats['two_pt'] * 200
pts += stats['first_downs'] * 25
if stats['pass_yds'] >= 300:
pts += 300
if stats['rush_yds'] >= 100:
pts += 300
if stats['rec_yds'] >= 100:
pts += 300
return {'hundredths': pts, 'display': '%.1f' % (pts / 100)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 1,
'pass_td': 0,
'pass_yds': 240,
'rec': 3,
'rec_td': 0,
'rec_yds': 40,
'rush_td': 0,
'rush_yds': 119,
'two_pt': 1},
'std', 'QB'],
{'display': '25.3', 'hundredths': 2525}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 2,
'int': 0,
'pass_td': 0,
'pass_yds': 14,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'half', 'RB'],
{'display': '-3.5', 'hundredths': -350}),
('second regression',
[{'first_downs': 1,
'fum': 1,
'fum_lost': 0,
'int': 0,
'pass_td': 1,
'pass_yds': 226,
'rec': 2,
'rec_td': 1,
'rec_yds': 100,
'rush_td': 0,
'rush_yds': 47,
'two_pt': 0},
'half', 'QB'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 3,
'pass_yds': 325,
'rec': 6,
'rec_td': 1,
'rec_yds': 38,
'rush_td': 1,
'rush_yds': 100,
'two_pt': 1},
'half', 'WR'],
{'display': '55.5', 'hundredths': 5550}),
('normal control 2',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 409,
'rec': 9,
'rec_td': 1,
'rec_yds': 62,
'rush_td': 0,
'rush_yds': 132,
'two_pt': 1},
'ppr', 'RB'],
{'display': '67.0', 'hundredths': 6700}),
('normal control 3',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': -4,
'rec': 10,
'rec_td': 0,
'rec_yds': 129,
'rush_td': 0,
'rush_yds': 50,
'two_pt': 1},
'ppr', 'QB'],
{'display': '41.0', 'hundredths': 4100}),
('normal control 4',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 1,
'int': 1,
'pass_td': 1,
'pass_yds': 216,
'rec': 1,
'rec_td': 1,
'rec_yds': 116,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 0},
'half', 'WR'],
{'display': '42.5', 'hundredths': 4250})],
[('regression: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 0,
'pass_yds': 35,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -10,
'two_pt': 0},
'ppr', 'RB'],
{'display': '-4.3', 'hundredths': -425}),
('partial repair probe: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -3,
'two_pt': 0},
'half', 'QB'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 0,
'pass_td': 0,
'pass_yds': 184,
'rec': 10,
'rec_td': 2,
'rec_yds': 15,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 0},
'std', 'RB'],
{'display': '42.3', 'hundredths': 4225}),
('normal control 1',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 2,
'pass_yds': 380,
'rec': 3,
'rec_td': 1,
'rec_yds': -4,
'rush_td': 0,
'rush_yds': 82,
'two_pt': 0},
'std', 'WR'],
{'display': '35.8', 'hundredths': 3575}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 3,
'pass_td': 2,
'pass_yds': 26,
'rec': 9,
'rec_td': 0,
'rec_yds': 70,
'rush_td': 1,
'rush_yds': 101,
'two_pt': 0},
'ppr', 'RB'],
{'display': '39.0', 'hundredths': 3900}),
('normal control 3',
[{'first_downs': 1,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 96,
'rec': 11,
'rec_td': 2,
'rec_yds': 82,
'rush_td': 2,
'rush_yds': 131,
'two_pt': 0},
'ppr', 'TE'],
{'display': '73.8', 'hundredths': 7375}),
('normal control 4',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 1,
'pass_yds': 24,
'rec': 5,
'rec_td': 2,
'rec_yds': 100,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'half', 'RB'],
{'display': '50.0', 'hundredths': 5000})],
[('regression: display rounding',
[{'first_downs': 9,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 152,
'rec': 1,
'rec_td': 2,
'rec_yds': 57,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 1},
'ppr', 'WR'],
{'display': '55.3', 'hundredths': 5525}),
('partial repair probe: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': -7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'std', 'TE'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 2,
'pass_td': 4,
'pass_yds': -3,
'rec': 6,
'rec_td': 1,
'rec_yds': 61,
'rush_td': 2,
'rush_yds': 145,
'two_pt': 0},
'half', 'TE'],
{'display': '60.3', 'hundredths': 6025}),
('normal control 1',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 63,
'rec': 10,
'rec_td': 2,
'rec_yds': -4,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'QB'],
{'display': '32.5', 'hundredths': 3250}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 0,
'pass_yds': 24,
'rec': 2,
'rec_td': 0,
'rec_yds': 50,
'rush_td': 2,
'rush_yds': -4,
'two_pt': 0},
'std', 'TE'],
{'display': '17.0', 'hundredths': 1700}),
('normal control 3',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 1,
'pass_yds': 280,
'rec': 0,
'rec_td': 2,
'rec_yds': 40,
'rush_td': 2,
'rush_yds': 133,
'two_pt': 1},
'ppr', 'TE'],
{'display': '59.0', 'hundredths': 5900}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 1,
'int': 3,
'pass_td': 3,
'pass_yds': 320,
'rec': 5,
'rec_td': 2,
'rec_yds': 20,
'rush_td': 1,
'rush_yds': 119,
'two_pt': 1},
'half', 'RB'],
{'display': '58.0', 'hundredths': 5800})],
[('regression: display rounding',
[{'first_downs': 3,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'half', 'RB'],
{'display': '-7.3', 'hundredths': -725}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 9,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 3,
'two_pt': 0},
'std', 'TE'],
{'display': '-4.5', 'hundredths': -450}),
('second regression',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 17,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 12,
'two_pt': 0},
'ppr', 'WR'],
{'display': '-7.8', 'hundredths': -775}),
('normal control 1',
[{'first_downs': 3,
'fum': 3,
'fum_lost': 1,
'int': 0,
'pass_td': 4,
'pass_yds': 244,
'rec': 2,
'rec_td': 0,
'rec_yds': 90,
'rush_td': 1,
'rush_yds': 108,
'two_pt': 0},
'half', 'WR'],
{'display': '52.8', 'hundredths': 5275}),
('normal control 2',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 229,
'rec': 4,
'rec_td': 0,
'rec_yds': 49,
'rush_td': 0,
'rush_yds': 151,
'two_pt': 1},
'half', 'QB'],
{'display': '45.5', 'hundredths': 4550}),
('normal control 3',
[{'first_downs': 8,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 338,
'rec': 11,
'rec_td': 2,
'rec_yds': 115,
'rush_td': 0,
'rush_yds': 52,
'two_pt': 0},
'half', 'TE'],
{'display': '70.0', 'hundredths': 7000}),
('normal control 4',
[{'first_downs': 4,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 183,
'rec': 6,
'rec_td': 0,
'rec_yds': 100,
'rush_td': 1,
'rush_yds': 99,
'two_pt': 1},
'half', 'QB'],
{'display': '47.0', 'hundredths': 4700})],
[('regression: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 188,
'rec': 5,
'rec_td': 0,
'rec_yds': 110,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'RB'],
{'display': '53.3', 'hundredths': 5325}),
('partial repair probe: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'std', 'QB'],
{'display': '-6.3', 'hundredths': -625}),
('second regression',
[{'first_downs': 9,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 45,
'rec': 3,
'rec_td': 1,
'rec_yds': 80,
'rush_td': 2,
'rush_yds': 9,
'two_pt': 1},
'std', 'WR'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 145,
'rec': 10,
'rec_td': 0,
'rec_yds': 65,
'rush_td': 0,
'rush_yds': 128,
'two_pt': 1},
'ppr', 'QB'],
{'display': '30.0', 'hundredths': 3000}),
('normal control 2',
[{'first_downs': 6,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 397,
'rec': 5,
'rec_td': 1,
'rec_yds': -2,
'rush_td': 1,
'rush_yds': 84,
'two_pt': 1},
'std', 'TE'],
{'display': '58.0', 'hundredths': 5800}),
('normal control 3',
[{'first_downs': 1,
'fum': 3,
'fum_lost': 3,
'int': 3,
'pass_td': 1,
'pass_yds': 25,
'rec': 11,
'rec_td': 2,
'rec_yds': 105,
'rush_td': 0,
'rush_yds': 10,
'two_pt': 1},
'half', 'RB'],
{'display': '26.8', 'hundredths': 2675}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 38,
'rec': 11,
'rec_td': 1,
'rec_yds': 127,
'rush_td': 0,
'rush_yds': 9,
'two_pt': 1},
'std', 'RB'],
{'display': '34.5', 'hundredths': 3450})]]
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 |
|---|---|---|---|
| regression: display rounding | {'display': '25.2', 'hundredths': 2525} | {'display': '25.3', 'hundredths': 2525} | Failed |
| partial repair probe: display rounding | {'display': '-3.5', 'hundredths': -350} | {'display': '-3.5', 'hundredths': -350} | Passed |
| second regression | {'display': '37.2', 'hundredths': 3725} | {'display': '37.3', 'hundredths': 3725} | Failed |
| normal control 1 | {'display': '55.5', 'hundredths': 5550} | {'display': '55.5', 'hundredths': 5550} | Passed |
| normal control 2 | {'display': '67.0', 'hundredths': 6700} | {'display': '67.0', 'hundredths': 6700} | Passed |
| normal control 3 | {'display': '41.0', 'hundredths': 4100} | {'display': '41.0', 'hundredths': 4100} | Passed |
| normal control 4 | {'display': '42.5', 'hundredths': 4250} | {'display': '42.5', 'hundredths': 4250} | Passed |
SHA-256 / d1ef945f1a5c588463af154182bd9afd84f7b7ab21dd5634dd85cbdd92d9dad0
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(stats, fmt, pos):
def unit(y, per):
q = abs(y) // per
return q if y >= 0 else -q
rec_val = {'std': 0, 'half': 50, 'ppr': 100}[fmt]
if pos == 'TE':
rec_val += 50
pts = 0
pts += unit(stats['pass_yds'], 25) * 100
pts += stats['pass_td'] * 400
pts -= stats['int'] * 200
pts += unit(stats['rush_yds'], 10) * 100
pts += stats['rush_td'] * 600
pts += stats['rec'] * rec_val
pts += unit(stats['rec_yds'], 10) * 100
pts += stats['rec_td'] * 600
pts -= stats['fum_lost'] * 200
pts += stats['two_pt'] * 200
pts += stats['first_downs'] * 25
if stats['pass_yds'] >= 300:
pts += 300
if stats['rush_yds'] >= 100:
pts += 300
if stats['rec_yds'] >= 100:
pts += 300
t = (pts + 5) // 10
return {'hundredths': pts, 'display': '%d.%d' % (t // 10, t % 10)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 1,
'pass_td': 0,
'pass_yds': 240,
'rec': 3,
'rec_td': 0,
'rec_yds': 40,
'rush_td': 0,
'rush_yds': 119,
'two_pt': 1},
'std', 'QB'],
{'display': '25.3', 'hundredths': 2525}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 2,
'int': 0,
'pass_td': 0,
'pass_yds': 14,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'half', 'RB'],
{'display': '-3.5', 'hundredths': -350}),
('second regression',
[{'first_downs': 1,
'fum': 1,
'fum_lost': 0,
'int': 0,
'pass_td': 1,
'pass_yds': 226,
'rec': 2,
'rec_td': 1,
'rec_yds': 100,
'rush_td': 0,
'rush_yds': 47,
'two_pt': 0},
'half', 'QB'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 3,
'pass_yds': 325,
'rec': 6,
'rec_td': 1,
'rec_yds': 38,
'rush_td': 1,
'rush_yds': 100,
'two_pt': 1},
'half', 'WR'],
{'display': '55.5', 'hundredths': 5550}),
('normal control 2',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 409,
'rec': 9,
'rec_td': 1,
'rec_yds': 62,
'rush_td': 0,
'rush_yds': 132,
'two_pt': 1},
'ppr', 'RB'],
{'display': '67.0', 'hundredths': 6700}),
('normal control 3',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': -4,
'rec': 10,
'rec_td': 0,
'rec_yds': 129,
'rush_td': 0,
'rush_yds': 50,
'two_pt': 1},
'ppr', 'QB'],
{'display': '41.0', 'hundredths': 4100}),
('normal control 4',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 1,
'int': 1,
'pass_td': 1,
'pass_yds': 216,
'rec': 1,
'rec_td': 1,
'rec_yds': 116,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 0},
'half', 'WR'],
{'display': '42.5', 'hundredths': 4250})],
[('regression: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 0,
'pass_yds': 35,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -10,
'two_pt': 0},
'ppr', 'RB'],
{'display': '-4.3', 'hundredths': -425}),
('partial repair probe: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -3,
'two_pt': 0},
'half', 'QB'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 0,
'pass_td': 0,
'pass_yds': 184,
'rec': 10,
'rec_td': 2,
'rec_yds': 15,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 0},
'std', 'RB'],
{'display': '42.3', 'hundredths': 4225}),
('normal control 1',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 2,
'pass_yds': 380,
'rec': 3,
'rec_td': 1,
'rec_yds': -4,
'rush_td': 0,
'rush_yds': 82,
'two_pt': 0},
'std', 'WR'],
{'display': '35.8', 'hundredths': 3575}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 3,
'pass_td': 2,
'pass_yds': 26,
'rec': 9,
'rec_td': 0,
'rec_yds': 70,
'rush_td': 1,
'rush_yds': 101,
'two_pt': 0},
'ppr', 'RB'],
{'display': '39.0', 'hundredths': 3900}),
('normal control 3',
[{'first_downs': 1,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 96,
'rec': 11,
'rec_td': 2,
'rec_yds': 82,
'rush_td': 2,
'rush_yds': 131,
'two_pt': 0},
'ppr', 'TE'],
{'display': '73.8', 'hundredths': 7375}),
('normal control 4',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 1,
'pass_yds': 24,
'rec': 5,
'rec_td': 2,
'rec_yds': 100,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'half', 'RB'],
{'display': '50.0', 'hundredths': 5000})],
[('regression: display rounding',
[{'first_downs': 9,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 152,
'rec': 1,
'rec_td': 2,
'rec_yds': 57,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 1},
'ppr', 'WR'],
{'display': '55.3', 'hundredths': 5525}),
('partial repair probe: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': -7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'std', 'TE'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 2,
'pass_td': 4,
'pass_yds': -3,
'rec': 6,
'rec_td': 1,
'rec_yds': 61,
'rush_td': 2,
'rush_yds': 145,
'two_pt': 0},
'half', 'TE'],
{'display': '60.3', 'hundredths': 6025}),
('normal control 1',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 63,
'rec': 10,
'rec_td': 2,
'rec_yds': -4,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'QB'],
{'display': '32.5', 'hundredths': 3250}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 0,
'pass_yds': 24,
'rec': 2,
'rec_td': 0,
'rec_yds': 50,
'rush_td': 2,
'rush_yds': -4,
'two_pt': 0},
'std', 'TE'],
{'display': '17.0', 'hundredths': 1700}),
('normal control 3',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 1,
'pass_yds': 280,
'rec': 0,
'rec_td': 2,
'rec_yds': 40,
'rush_td': 2,
'rush_yds': 133,
'two_pt': 1},
'ppr', 'TE'],
{'display': '59.0', 'hundredths': 5900}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 1,
'int': 3,
'pass_td': 3,
'pass_yds': 320,
'rec': 5,
'rec_td': 2,
'rec_yds': 20,
'rush_td': 1,
'rush_yds': 119,
'two_pt': 1},
'half', 'RB'],
{'display': '58.0', 'hundredths': 5800})],
[('regression: display rounding',
[{'first_downs': 3,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'half', 'RB'],
{'display': '-7.3', 'hundredths': -725}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 9,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 3,
'two_pt': 0},
'std', 'TE'],
{'display': '-4.5', 'hundredths': -450}),
('second regression',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 17,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 12,
'two_pt': 0},
'ppr', 'WR'],
{'display': '-7.8', 'hundredths': -775}),
('normal control 1',
[{'first_downs': 3,
'fum': 3,
'fum_lost': 1,
'int': 0,
'pass_td': 4,
'pass_yds': 244,
'rec': 2,
'rec_td': 0,
'rec_yds': 90,
'rush_td': 1,
'rush_yds': 108,
'two_pt': 0},
'half', 'WR'],
{'display': '52.8', 'hundredths': 5275}),
('normal control 2',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 229,
'rec': 4,
'rec_td': 0,
'rec_yds': 49,
'rush_td': 0,
'rush_yds': 151,
'two_pt': 1},
'half', 'QB'],
{'display': '45.5', 'hundredths': 4550}),
('normal control 3',
[{'first_downs': 8,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 338,
'rec': 11,
'rec_td': 2,
'rec_yds': 115,
'rush_td': 0,
'rush_yds': 52,
'two_pt': 0},
'half', 'TE'],
{'display': '70.0', 'hundredths': 7000}),
('normal control 4',
[{'first_downs': 4,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 183,
'rec': 6,
'rec_td': 0,
'rec_yds': 100,
'rush_td': 1,
'rush_yds': 99,
'two_pt': 1},
'half', 'QB'],
{'display': '47.0', 'hundredths': 4700})],
[('regression: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 188,
'rec': 5,
'rec_td': 0,
'rec_yds': 110,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'RB'],
{'display': '53.3', 'hundredths': 5325}),
('partial repair probe: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'std', 'QB'],
{'display': '-6.3', 'hundredths': -625}),
('second regression',
[{'first_downs': 9,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 45,
'rec': 3,
'rec_td': 1,
'rec_yds': 80,
'rush_td': 2,
'rush_yds': 9,
'two_pt': 1},
'std', 'WR'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 145,
'rec': 10,
'rec_td': 0,
'rec_yds': 65,
'rush_td': 0,
'rush_yds': 128,
'two_pt': 1},
'ppr', 'QB'],
{'display': '30.0', 'hundredths': 3000}),
('normal control 2',
[{'first_downs': 6,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 397,
'rec': 5,
'rec_td': 1,
'rec_yds': -2,
'rush_td': 1,
'rush_yds': 84,
'two_pt': 1},
'std', 'TE'],
{'display': '58.0', 'hundredths': 5800}),
('normal control 3',
[{'first_downs': 1,
'fum': 3,
'fum_lost': 3,
'int': 3,
'pass_td': 1,
'pass_yds': 25,
'rec': 11,
'rec_td': 2,
'rec_yds': 105,
'rush_td': 0,
'rush_yds': 10,
'two_pt': 1},
'half', 'RB'],
{'display': '26.8', 'hundredths': 2675}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 38,
'rec': 11,
'rec_td': 1,
'rec_yds': 127,
'rush_td': 0,
'rush_yds': 9,
'two_pt': 1},
'std', 'RB'],
{'display': '34.5', 'hundredths': 3450})]]
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 |
|---|---|---|---|
| regression: display rounding | {'display': '25.3', 'hundredths': 2525} | {'display': '25.3', 'hundredths': 2525} | Passed |
| partial repair probe: display rounding | {'display': '-4.5', 'hundredths': -350} | {'display': '-3.5', 'hundredths': -350} | Failed |
| second regression | {'display': '37.3', 'hundredths': 3725} | {'display': '37.3', 'hundredths': 3725} | Passed |
| normal control 1 | {'display': '55.5', 'hundredths': 5550} | {'display': '55.5', 'hundredths': 5550} | Passed |
| normal control 2 | {'display': '67.0', 'hundredths': 6700} | {'display': '67.0', 'hundredths': 6700} | Passed |
| normal control 3 | {'display': '41.0', 'hundredths': 4100} | {'display': '41.0', 'hundredths': 4100} | Passed |
| normal control 4 | {'display': '42.5', 'hundredths': 4250} | {'display': '42.5', 'hundredths': 4250} | Passed |
SHA-256 / c51997819ce56343c732f8e29f2d0043117209be4de7c40cbc9ff117d8c93514
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(stats, fmt, pos):
def unit(y, per):
q = abs(y) // per
return q if y >= 0 else -q
rec_val = {'std': 0, 'half': 50, 'ppr': 100}[fmt]
if pos == 'TE':
rec_val += 50
pts = 0
pts += unit(stats['pass_yds'], 25) * 100
pts += stats['pass_td'] * 400
pts -= stats['int'] * 200
pts += unit(stats['rush_yds'], 10) * 100
pts += stats['rush_td'] * 600
pts += stats['rec'] * rec_val
pts += unit(stats['rec_yds'], 10) * 100
pts += stats['rec_td'] * 600
pts -= stats['fum_lost'] * 200
pts += stats['two_pt'] * 200
pts += stats['first_downs'] * 25
if stats['pass_yds'] >= 300:
pts += 300
if stats['rush_yds'] >= 100:
pts += 300
if stats['rec_yds'] >= 100:
pts += 300
t = (abs(pts) + 5) // 10
sign = '-' if pts < 0 and t else ''
return {'hundredths': pts, 'display': '%s%d.%d' % (sign, t // 10, t % 10)}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 1,
'pass_td': 0,
'pass_yds': 240,
'rec': 3,
'rec_td': 0,
'rec_yds': 40,
'rush_td': 0,
'rush_yds': 119,
'two_pt': 1},
'std', 'QB'],
{'display': '25.3', 'hundredths': 2525}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 2,
'int': 0,
'pass_td': 0,
'pass_yds': 14,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'half', 'RB'],
{'display': '-3.5', 'hundredths': -350}),
('second regression',
[{'first_downs': 1,
'fum': 1,
'fum_lost': 0,
'int': 0,
'pass_td': 1,
'pass_yds': 226,
'rec': 2,
'rec_td': 1,
'rec_yds': 100,
'rush_td': 0,
'rush_yds': 47,
'two_pt': 0},
'half', 'QB'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 3,
'pass_yds': 325,
'rec': 6,
'rec_td': 1,
'rec_yds': 38,
'rush_td': 1,
'rush_yds': 100,
'two_pt': 1},
'half', 'WR'],
{'display': '55.5', 'hundredths': 5550}),
('normal control 2',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 409,
'rec': 9,
'rec_td': 1,
'rec_yds': 62,
'rush_td': 0,
'rush_yds': 132,
'two_pt': 1},
'ppr', 'RB'],
{'display': '67.0', 'hundredths': 6700}),
('normal control 3',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': -4,
'rec': 10,
'rec_td': 0,
'rec_yds': 129,
'rush_td': 0,
'rush_yds': 50,
'two_pt': 1},
'ppr', 'QB'],
{'display': '41.0', 'hundredths': 4100}),
('normal control 4',
[{'first_downs': 4,
'fum': 1,
'fum_lost': 1,
'int': 1,
'pass_td': 1,
'pass_yds': 216,
'rec': 1,
'rec_td': 1,
'rec_yds': 116,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 0},
'half', 'WR'],
{'display': '42.5', 'hundredths': 4250})],
[('regression: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 1,
'pass_td': 0,
'pass_yds': 35,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -10,
'two_pt': 0},
'ppr', 'RB'],
{'display': '-4.3', 'hundredths': -425}),
('partial repair probe: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -3,
'two_pt': 0},
'half', 'QB'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 0,
'pass_td': 0,
'pass_yds': 184,
'rec': 10,
'rec_td': 2,
'rec_yds': 15,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 0},
'std', 'RB'],
{'display': '42.3', 'hundredths': 4225}),
('normal control 1',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 2,
'pass_yds': 380,
'rec': 3,
'rec_td': 1,
'rec_yds': -4,
'rush_td': 0,
'rush_yds': 82,
'two_pt': 0},
'std', 'WR'],
{'display': '35.8', 'hundredths': 3575}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 3,
'pass_td': 2,
'pass_yds': 26,
'rec': 9,
'rec_td': 0,
'rec_yds': 70,
'rush_td': 1,
'rush_yds': 101,
'two_pt': 0},
'ppr', 'RB'],
{'display': '39.0', 'hundredths': 3900}),
('normal control 3',
[{'first_downs': 1,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 96,
'rec': 11,
'rec_td': 2,
'rec_yds': 82,
'rush_td': 2,
'rush_yds': 131,
'two_pt': 0},
'ppr', 'TE'],
{'display': '73.8', 'hundredths': 7375}),
('normal control 4',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 1,
'pass_yds': 24,
'rec': 5,
'rec_td': 2,
'rec_yds': 100,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'half', 'RB'],
{'display': '50.0', 'hundredths': 5000})],
[('regression: display rounding',
[{'first_downs': 9,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 152,
'rec': 1,
'rec_td': 2,
'rec_yds': 57,
'rush_td': 0,
'rush_yds': 100,
'two_pt': 1},
'ppr', 'WR'],
{'display': '55.3', 'hundredths': 5525}),
('partial repair probe: display rounding',
[{'first_downs': 1,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': -7,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -15,
'two_pt': 0},
'std', 'TE'],
{'display': '-6.8', 'hundredths': -675}),
('second regression',
[{'first_downs': 5,
'fum': 0,
'fum_lost': 0,
'int': 2,
'pass_td': 4,
'pass_yds': -3,
'rec': 6,
'rec_td': 1,
'rec_yds': 61,
'rush_td': 2,
'rush_yds': 145,
'two_pt': 0},
'half', 'TE'],
{'display': '60.3', 'hundredths': 6025}),
('normal control 1',
[{'first_downs': 6,
'fum': 1,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 63,
'rec': 10,
'rec_td': 2,
'rec_yds': -4,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'QB'],
{'display': '32.5', 'hundredths': 3250}),
('normal control 2',
[{'first_downs': 4,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 0,
'pass_yds': 24,
'rec': 2,
'rec_td': 0,
'rec_yds': 50,
'rush_td': 2,
'rush_yds': -4,
'two_pt': 0},
'std', 'TE'],
{'display': '17.0', 'hundredths': 1700}),
('normal control 3',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 1,
'pass_yds': 280,
'rec': 0,
'rec_td': 2,
'rec_yds': 40,
'rush_td': 2,
'rush_yds': 133,
'two_pt': 1},
'ppr', 'TE'],
{'display': '59.0', 'hundredths': 5900}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 1,
'int': 3,
'pass_td': 3,
'pass_yds': 320,
'rec': 5,
'rec_td': 2,
'rec_yds': 20,
'rush_td': 1,
'rush_yds': 119,
'two_pt': 1},
'half', 'RB'],
{'display': '58.0', 'hundredths': 5800})],
[('regression: display rounding',
[{'first_downs': 3,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'half', 'RB'],
{'display': '-7.3', 'hundredths': -725}),
('partial repair probe: display rounding',
[{'first_downs': 6,
'fum': 2,
'fum_lost': 1,
'int': 2,
'pass_td': 0,
'pass_yds': 9,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 3,
'two_pt': 0},
'std', 'TE'],
{'display': '-4.5', 'hundredths': -450}),
('second regression',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 17,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': 12,
'two_pt': 0},
'ppr', 'WR'],
{'display': '-7.8', 'hundredths': -775}),
('normal control 1',
[{'first_downs': 3,
'fum': 3,
'fum_lost': 1,
'int': 0,
'pass_td': 4,
'pass_yds': 244,
'rec': 2,
'rec_td': 0,
'rec_yds': 90,
'rush_td': 1,
'rush_yds': 108,
'two_pt': 0},
'half', 'WR'],
{'display': '52.8', 'hundredths': 5275}),
('normal control 2',
[{'first_downs': 2,
'fum': 2,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 229,
'rec': 4,
'rec_td': 0,
'rec_yds': 49,
'rush_td': 0,
'rush_yds': 151,
'two_pt': 1},
'half', 'QB'],
{'display': '45.5', 'hundredths': 4550}),
('normal control 3',
[{'first_downs': 8,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 338,
'rec': 11,
'rec_td': 2,
'rec_yds': 115,
'rush_td': 0,
'rush_yds': 52,
'two_pt': 0},
'half', 'TE'],
{'display': '70.0', 'hundredths': 7000}),
('normal control 4',
[{'first_downs': 4,
'fum': 0,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 183,
'rec': 6,
'rec_td': 0,
'rec_yds': 100,
'rush_td': 1,
'rush_yds': 99,
'two_pt': 1},
'half', 'QB'],
{'display': '47.0', 'hundredths': 4700})],
[('regression: display rounding',
[{'first_downs': 5,
'fum': 2,
'fum_lost': 0,
'int': 2,
'pass_td': 3,
'pass_yds': 188,
'rec': 5,
'rec_td': 0,
'rec_yds': 110,
'rush_td': 2,
'rush_yds': 99,
'two_pt': 1},
'std', 'RB'],
{'display': '53.3', 'hundredths': 5325}),
('partial repair probe: display rounding',
[{'first_downs': 7,
'fum': 2,
'fum_lost': 2,
'int': 2,
'pass_td': 0,
'pass_yds': 13,
'rec': 0,
'rec_td': 0,
'rec_yds': 0,
'rush_td': 0,
'rush_yds': -6,
'two_pt': 0},
'std', 'QB'],
{'display': '-6.3', 'hundredths': -625}),
('second regression',
[{'first_downs': 9,
'fum': 1,
'fum_lost': 0,
'int': 3,
'pass_td': 3,
'pass_yds': 45,
'rec': 3,
'rec_td': 1,
'rec_yds': 80,
'rush_td': 2,
'rush_yds': 9,
'two_pt': 1},
'std', 'WR'],
{'display': '37.3', 'hundredths': 3725}),
('normal control 1',
[{'first_downs': 8,
'fum': 2,
'fum_lost': 2,
'int': 3,
'pass_td': 0,
'pass_yds': 145,
'rec': 10,
'rec_td': 0,
'rec_yds': 65,
'rush_td': 0,
'rush_yds': 128,
'two_pt': 1},
'ppr', 'QB'],
{'display': '30.0', 'hundredths': 3000}),
('normal control 2',
[{'first_downs': 6,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 4,
'pass_yds': 397,
'rec': 5,
'rec_td': 1,
'rec_yds': -2,
'rush_td': 1,
'rush_yds': 84,
'two_pt': 1},
'std', 'TE'],
{'display': '58.0', 'hundredths': 5800}),
('normal control 3',
[{'first_downs': 1,
'fum': 3,
'fum_lost': 3,
'int': 3,
'pass_td': 1,
'pass_yds': 25,
'rec': 11,
'rec_td': 2,
'rec_yds': 105,
'rush_td': 0,
'rush_yds': 10,
'two_pt': 1},
'half', 'RB'],
{'display': '26.8', 'hundredths': 2675}),
('normal control 4',
[{'first_downs': 2,
'fum': 3,
'fum_lost': 0,
'int': 1,
'pass_td': 3,
'pass_yds': 38,
'rec': 11,
'rec_td': 1,
'rec_yds': 127,
'rush_td': 0,
'rush_yds': 9,
'two_pt': 1},
'std', 'RB'],
{'display': '34.5', 'hundredths': 3450})]]
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 |
|---|---|---|---|
| regression: display rounding | {'display': '25.3', 'hundredths': 2525} | {'display': '25.3', 'hundredths': 2525} | Passed |
| partial repair probe: display rounding | {'display': '-3.5', 'hundredths': -350} | {'display': '-3.5', 'hundredths': -350} | Passed |
| second regression | {'display': '37.3', 'hundredths': 3725} | {'display': '37.3', 'hundredths': 3725} | Passed |
| normal control 1 | {'display': '55.5', 'hundredths': 5550} | {'display': '55.5', 'hundredths': 5550} | Passed |
| normal control 2 | {'display': '67.0', 'hundredths': 6700} | {'display': '67.0', 'hundredths': 6700} | Passed |
| normal control 3 | {'display': '41.0', 'hundredths': 4100} | {'display': '41.0', 'hundredths': 4100} | Passed |
| normal control 4 | {'display': '42.5', 'hundredths': 4250} | {'display': '42.5', 'hundredths': 4250} | Passed |
SHA-256 / 1c52273535f68fbc349c7f8e4fcb3e470a236c34e3f75eaa9927b2bcc0d2a9e9
Verification & scope
A deterministic toy scoring contract stipulated for this example; it is not the rulebook of any real fantasy platform. 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:50:35.119018+00:00.
Case digest / 0a87ccde6845421532cf7611d8ad02239c8546af2e679660fc3da07cb632b638