FAILURE MAP
← Case archive

FA-84091 / Sports scoring and tiebreakers / Open access

Games behind measured from the team with most wins · case 01

Games behind is computed from the team with the most wins rather than the best percentage.

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

ROOT CAUSE

The reference row is chosen by the largest win total.

VERIFIED REPAIR

Use the top row of the percentage-sorted standings as the leader.

Unsuccessful approach: Using the first input row assumes the input is already sorted.

Case contract

Division standings. teams rows are [name, wins, losses]. Win percentage is wins / games (0 for no games) shown with three decimals and the leading zero dropped (".500", but "1.000"). Sort by win percentage, then more wins, then name. The leader is the first sorted row; games behind = ((leader_wins - wins) + (losses - leader_losses)) / 2, shown as "-" when zero and otherwise with one decimal (negative values allowed). Return [name, pct, gb] rows.

Why this case matters

Standings pages and playoff-race widgets print win percentage and games behind.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
N = 1
observations = []
def solve(teams):
    def pct(w, l):
        return Fraction(w, w + l) if w + l else Fraction(0)
    rows = sorted(teams, key=lambda r: (-pct(r[1], r[2]), -r[1], r[0]))
    lw, ll = max((r[1], r[2]) for r in teams)
    out = []
    for name, w, l in rows:
        p = '%.3f' % float(pct(w, l))
        if p.startswith('0'):
            p = p[1:]
        gb2 = (lw - w) + (l - ll)
        gb = '-' if gb2 == 0 else '%.1f' % (gb2 / 2)
        out.append([name, p, gb])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
def run(args):
    try:
        return solve(*args)
    except Exception as exc:
        return 'raised ' + type(exc).__name__
cases = [[('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 0, 33], ['Cats', 0, 66], ['Bucks', 1, 6], ['Wolves', 6, 3]],),
   [['Wolves', '.667', '-'],
    ['Bucks', '.143', '4.0'],
    ['Cats', '.000', '34.5'],
    ['Jets', '.000', '18.0']]),
  ('regression: leader selection',
   ([['Jets', 4, 16], ['Cats', 25, 15], ['Suns', 2, 0], ['Bucks', 25, 12], ['Wolves', 9, 8]],),
   [['Suns', '1.000', '-'],
    ['Bucks', '.676', '-5.5'],
    ['Cats', '.625', '-4.0'],
    ['Wolves', '.529', '0.5'],
    ['Jets', '.200', '7.0']]),
  ('variant scenario 1',
   ([['Suns', 14, 1], ['Jets', 7, 23], ['Cats', 2, 3], ['Wolves', 1, 9]],),
   [['Suns', '.933', '-'],
    ['Cats', '.400', '7.0'],
    ['Jets', '.233', '14.5'],
    ['Wolves', '.100', '10.5']]),
  ('variant scenario 2',
   ([['Wolves', 4, 0], ['Suns', 3, 14], ['Cats', 18, 1], ['Bucks', 0, 11]],),
   [['Wolves', '1.000', '-'],
    ['Cats', '.947', '-6.5'],
    ['Suns', '.176', '7.5'],
    ['Bucks', '.000', '7.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Bucks', 1, 8], ['Wolves', 39, 1]],),
   [['Wolves', '.975', '-'], ['Bucks', '.111', '22.5']]),
  ('regression: leader selection',
   ([['Cats', 9, 1], ['Suns', 8, 2], ['Jets', 4, 4], ['Wolves', 15, 18]],),
   [['Cats', '.900', '-'],
    ['Suns', '.800', '1.0'],
    ['Jets', '.500', '4.0'],
    ['Wolves', '.455', '5.5']]),
  ('variant scenario 1',
   ([['Wolves', 29, 11], ['Jets', 9, 10], ['Bucks', 4, 2]],),
   [['Wolves', '.725', '-'], ['Bucks', '.667', '8.0'], ['Jets', '.474', '9.5']]),
  ('variant scenario 2',
   ([['Bucks', 7, 9], ['Wolves', 15, 16], ['Jets', 5, 8]],),
   [['Wolves', '.484', '-'], ['Bucks', '.438', '0.5'], ['Jets', '.385', '1.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Wolves', 7, 25], ['Jets', 6, 20], ['Bucks', 0, 15]],),
   [['Jets', '.231', '-'], ['Wolves', '.219', '2.0'], ['Bucks', '.000', '0.5']]),
  ('variant scenario 1',
   ([['Wolves', 0, 1], ['Cats', 0, 0], ['Suns', 19, 20], ['Jets', 5, 10], ['Bucks', 14, 23]],),
   [['Suns', '.487', '-'],
    ['Bucks', '.378', '4.0'],
    ['Jets', '.333', '2.0'],
    ['Cats', '.000', '-0.5'],
    ['Wolves', '.000', '-']]),
  ('variant scenario 2',
   ([['Jets', 4, 15], ['Cats', 4, 18], ['Suns', 7, 27], ['Wolves', 13, 7], ['Bucks', 1, 6]],),
   [['Wolves', '.650', '-'],
    ['Jets', '.211', '8.5'],
    ['Suns', '.206', '13.0'],
    ['Cats', '.182', '10.0'],
    ['Bucks', '.143', '5.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 17, 11], ['Bucks', 34, 22]],),
   [['Bucks', '.607', '-'], ['Jets', '.607', '3.0']]),
  ('regression: leader selection',
   ([['Cats', 14, 9], ['Jets', 10, 3], ['Wolves', 1, 15], ['Bucks', 2, 18], ['Suns', 7, 32]],),
   [['Jets', '.769', '-'],
    ['Cats', '.609', '1.0'],
    ['Suns', '.179', '16.0'],
    ['Bucks', '.100', '11.5'],
    ['Wolves', '.062', '10.5']]),
  ('variant scenario 1',
   ([['Cats', 8, 15], ['Jets', 16, 30], ['Wolves', 0, 7], ['Bucks', 22, 4], ['Suns', 4, 8]],),
   [['Bucks', '.846', '-'],
    ['Jets', '.348', '16.0'],
    ['Cats', '.348', '12.5'],
    ['Suns', '.333', '11.0'],
    ['Wolves', '.000', '12.5']]),
  ('variant scenario 2',
   ([['Bucks', 32, 2], ['Suns', 64, 4], ['Wolves', 8, 12], ['Cats', 7, 13], ['Jets', 13, 15]],),
   [['Suns', '.941', '-'],
    ['Bucks', '.941', '15.0'],
    ['Jets', '.464', '31.0'],
    ['Wolves', '.400', '32.0'],
    ['Cats', '.350', '33.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Cats', 9, 3], ['Jets', 12, 4]],),
   [['Jets', '.750', '-'], ['Cats', '.750', '1.0']]),
  ('regression: leader selection',
   ([['Jets', 14, 7], ['Suns', 7, 12], ['Bucks', 23, 7], ['Cats', 8, 12], ['Wolves', 20, 0]],),
   [['Wolves', '1.000', '-'],
    ['Bucks', '.767', '2.0'],
    ['Jets', '.667', '6.5'],
    ['Cats', '.400', '12.0'],
    ['Suns', '.368', '12.5']]),
  ('variant scenario 1',
   ([['Suns', 20, 1], ['Wolves', 2, 2], ['Jets', 1, 4], ['Bucks', 1, 1], ['Cats', 0, 1]],),
   [['Suns', '.952', '-'],
    ['Wolves', '.500', '9.5'],
    ['Bucks', '.500', '9.5'],
    ['Jets', '.200', '11.0'],
    ['Cats', '.000', '10.0']]),
  ('variant scenario 2',
   ([['Wolves', 1, 0], ['Cats', 0, 4]],),
   [['Wolves', '1.000', '-'], ['Cats', '.000', '2.5']])]]
for label, args, expected in cases[N - 1]:
    check(label, run(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
control two teams[['Cats', '.667', '-'], ['Jets', '.533', '2.0']][['Cats', '.667', '-'], ['Jets', '.533', '2.0']]Passed
boundary half game[['Cats', '.667', '-'], ['Jets', '.643', '0.5']][['Cats', '.667', '-'], ['Jets', '.643', '0.5']]Passed
boundary perfect record[['Suns', '1.000', '-'], ['Jets', '.500', '1.5']][['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]Passed
boundary no games played[['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']][['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]Passed
control equal pct more wins first[['Bucks', '.500', '-'], ['Cats', '.500', '-']][['Bucks', '.500', '-'], ['Cats', '.500', '-']]Passed
regression: leader selection[['Wolves', '.667', '-'], ['Bucks', '.143', '4.0'], ['Cats', '.000', '34.5'], ['Jets', '.000', '18.0']][['Wolves', '.667', '-'], ['Bucks', '.143', '4.0'], ['Cats', '.000', '34.5'], ['Jets', '.000', '18.0']]Passed
regression: leader selection[['Suns', '1.000', '4.0'], ['Bucks', '.676', '-1.5'], ['Cats', '.625', '-'], ['Wolves', '.529', '4.5'], ['Jets', '.200', '11.0']][['Suns', '1.000', '-'], ['Bucks', '.676', '-5.5'], ['Cats', '.625', '-4.0'], ['Wolves', '.529', '0.5'], ['Jets', '.200', '7.0']]Failed
variant scenario 1[['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']][['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']]Passed
variant scenario 2[['Wolves', '1.000', '6.5'], ['Cats', '.947', '-'], ['Suns', '.176', '14.0'], ['Bucks', '.000', '14.0']][['Wolves', '1.000', '-'], ['Cats', '.947', '-6.5'], ['Suns', '.176', '7.5'], ['Bucks', '.000', '7.5']]Failed

SHA-256 / 4a4b2ffb59357e09d66d9cb74861cd5783b30fdbd34d28220ee8f79594a0a3b0

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
N = 1
observations = []
def solve(teams):
    def pct(w, l):
        return Fraction(w, w + l) if w + l else Fraction(0)
    rows = sorted(teams, key=lambda r: (-pct(r[1], r[2]), -r[1], r[0]))
    lw, ll = teams[0][1], teams[0][2]
    out = []
    for name, w, l in rows:
        p = '%.3f' % float(pct(w, l))
        if p.startswith('0'):
            p = p[1:]
        gb2 = (lw - w) + (l - ll)
        gb = '-' if gb2 == 0 else '%.1f' % (gb2 / 2)
        out.append([name, p, gb])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
def run(args):
    try:
        return solve(*args)
    except Exception as exc:
        return 'raised ' + type(exc).__name__
cases = [[('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 0, 33], ['Cats', 0, 66], ['Bucks', 1, 6], ['Wolves', 6, 3]],),
   [['Wolves', '.667', '-'],
    ['Bucks', '.143', '4.0'],
    ['Cats', '.000', '34.5'],
    ['Jets', '.000', '18.0']]),
  ('regression: leader selection',
   ([['Jets', 4, 16], ['Cats', 25, 15], ['Suns', 2, 0], ['Bucks', 25, 12], ['Wolves', 9, 8]],),
   [['Suns', '1.000', '-'],
    ['Bucks', '.676', '-5.5'],
    ['Cats', '.625', '-4.0'],
    ['Wolves', '.529', '0.5'],
    ['Jets', '.200', '7.0']]),
  ('variant scenario 1',
   ([['Suns', 14, 1], ['Jets', 7, 23], ['Cats', 2, 3], ['Wolves', 1, 9]],),
   [['Suns', '.933', '-'],
    ['Cats', '.400', '7.0'],
    ['Jets', '.233', '14.5'],
    ['Wolves', '.100', '10.5']]),
  ('variant scenario 2',
   ([['Wolves', 4, 0], ['Suns', 3, 14], ['Cats', 18, 1], ['Bucks', 0, 11]],),
   [['Wolves', '1.000', '-'],
    ['Cats', '.947', '-6.5'],
    ['Suns', '.176', '7.5'],
    ['Bucks', '.000', '7.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Bucks', 1, 8], ['Wolves', 39, 1]],),
   [['Wolves', '.975', '-'], ['Bucks', '.111', '22.5']]),
  ('regression: leader selection',
   ([['Cats', 9, 1], ['Suns', 8, 2], ['Jets', 4, 4], ['Wolves', 15, 18]],),
   [['Cats', '.900', '-'],
    ['Suns', '.800', '1.0'],
    ['Jets', '.500', '4.0'],
    ['Wolves', '.455', '5.5']]),
  ('variant scenario 1',
   ([['Wolves', 29, 11], ['Jets', 9, 10], ['Bucks', 4, 2]],),
   [['Wolves', '.725', '-'], ['Bucks', '.667', '8.0'], ['Jets', '.474', '9.5']]),
  ('variant scenario 2',
   ([['Bucks', 7, 9], ['Wolves', 15, 16], ['Jets', 5, 8]],),
   [['Wolves', '.484', '-'], ['Bucks', '.438', '0.5'], ['Jets', '.385', '1.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Wolves', 7, 25], ['Jets', 6, 20], ['Bucks', 0, 15]],),
   [['Jets', '.231', '-'], ['Wolves', '.219', '2.0'], ['Bucks', '.000', '0.5']]),
  ('variant scenario 1',
   ([['Wolves', 0, 1], ['Cats', 0, 0], ['Suns', 19, 20], ['Jets', 5, 10], ['Bucks', 14, 23]],),
   [['Suns', '.487', '-'],
    ['Bucks', '.378', '4.0'],
    ['Jets', '.333', '2.0'],
    ['Cats', '.000', '-0.5'],
    ['Wolves', '.000', '-']]),
  ('variant scenario 2',
   ([['Jets', 4, 15], ['Cats', 4, 18], ['Suns', 7, 27], ['Wolves', 13, 7], ['Bucks', 1, 6]],),
   [['Wolves', '.650', '-'],
    ['Jets', '.211', '8.5'],
    ['Suns', '.206', '13.0'],
    ['Cats', '.182', '10.0'],
    ['Bucks', '.143', '5.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 17, 11], ['Bucks', 34, 22]],),
   [['Bucks', '.607', '-'], ['Jets', '.607', '3.0']]),
  ('regression: leader selection',
   ([['Cats', 14, 9], ['Jets', 10, 3], ['Wolves', 1, 15], ['Bucks', 2, 18], ['Suns', 7, 32]],),
   [['Jets', '.769', '-'],
    ['Cats', '.609', '1.0'],
    ['Suns', '.179', '16.0'],
    ['Bucks', '.100', '11.5'],
    ['Wolves', '.062', '10.5']]),
  ('variant scenario 1',
   ([['Cats', 8, 15], ['Jets', 16, 30], ['Wolves', 0, 7], ['Bucks', 22, 4], ['Suns', 4, 8]],),
   [['Bucks', '.846', '-'],
    ['Jets', '.348', '16.0'],
    ['Cats', '.348', '12.5'],
    ['Suns', '.333', '11.0'],
    ['Wolves', '.000', '12.5']]),
  ('variant scenario 2',
   ([['Bucks', 32, 2], ['Suns', 64, 4], ['Wolves', 8, 12], ['Cats', 7, 13], ['Jets', 13, 15]],),
   [['Suns', '.941', '-'],
    ['Bucks', '.941', '15.0'],
    ['Jets', '.464', '31.0'],
    ['Wolves', '.400', '32.0'],
    ['Cats', '.350', '33.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Cats', 9, 3], ['Jets', 12, 4]],),
   [['Jets', '.750', '-'], ['Cats', '.750', '1.0']]),
  ('regression: leader selection',
   ([['Jets', 14, 7], ['Suns', 7, 12], ['Bucks', 23, 7], ['Cats', 8, 12], ['Wolves', 20, 0]],),
   [['Wolves', '1.000', '-'],
    ['Bucks', '.767', '2.0'],
    ['Jets', '.667', '6.5'],
    ['Cats', '.400', '12.0'],
    ['Suns', '.368', '12.5']]),
  ('variant scenario 1',
   ([['Suns', 20, 1], ['Wolves', 2, 2], ['Jets', 1, 4], ['Bucks', 1, 1], ['Cats', 0, 1]],),
   [['Suns', '.952', '-'],
    ['Wolves', '.500', '9.5'],
    ['Bucks', '.500', '9.5'],
    ['Jets', '.200', '11.0'],
    ['Cats', '.000', '10.0']]),
  ('variant scenario 2',
   ([['Wolves', 1, 0], ['Cats', 0, 4]],),
   [['Wolves', '1.000', '-'], ['Cats', '.000', '2.5']])]]
for label, args, expected in cases[N - 1]:
    check(label, run(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
control two teams[['Cats', '.667', '-'], ['Jets', '.533', '2.0']][['Cats', '.667', '-'], ['Jets', '.533', '2.0']]Passed
boundary half game[['Cats', '.667', '-'], ['Jets', '.643', '0.5']][['Cats', '.667', '-'], ['Jets', '.643', '0.5']]Passed
boundary perfect record[['Suns', '1.000', '-'], ['Jets', '.500', '1.5']][['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]Passed
boundary no games played[['Bucks', '.000', '1.0'], ['Suns', '.000', '-']][['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]Failed
control equal pct more wins first[['Bucks', '.500', '-'], ['Cats', '.500', '-']][['Bucks', '.500', '-'], ['Cats', '.500', '-']]Passed
regression: leader selection[['Wolves', '.667', '-18.0'], ['Bucks', '.143', '-14.0'], ['Cats', '.000', '16.5'], ['Jets', '.000', '-']][['Wolves', '.667', '-'], ['Bucks', '.143', '4.0'], ['Cats', '.000', '34.5'], ['Jets', '.000', '18.0']]Failed
regression: leader selection[['Suns', '1.000', '-7.0'], ['Bucks', '.676', '-12.5'], ['Cats', '.625', '-11.0'], ['Wolves', '.529', '-6.5'], ['Jets', '.200', '-']][['Suns', '1.000', '-'], ['Bucks', '.676', '-5.5'], ['Cats', '.625', '-4.0'], ['Wolves', '.529', '0.5'], ['Jets', '.200', '7.0']]Failed
variant scenario 1[['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']][['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']]Passed
variant scenario 2[['Wolves', '1.000', '-'], ['Cats', '.947', '-6.5'], ['Suns', '.176', '7.5'], ['Bucks', '.000', '7.5']][['Wolves', '1.000', '-'], ['Cats', '.947', '-6.5'], ['Suns', '.176', '7.5'], ['Bucks', '.000', '7.5']]Passed

SHA-256 / c80477765b4b6bb58cfdb6b90297282cde6dce32ce800b165d6ab6549d77f048

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
N = 1
observations = []
def solve(teams):
    def pct(w, l):
        return Fraction(w, w + l) if w + l else Fraction(0)
    rows = sorted(teams, key=lambda r: (-pct(r[1], r[2]), -r[1], r[0]))
    lw, ll = rows[0][1], rows[0][2]
    out = []
    for name, w, l in rows:
        p = '%.3f' % float(pct(w, l))
        if p.startswith('0'):
            p = p[1:]
        gb2 = (lw - w) + (l - ll)
        gb = '-' if gb2 == 0 else '%.1f' % (gb2 / 2)
        out.append([name, p, gb])
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
def run(args):
    try:
        return solve(*args)
    except Exception as exc:
        return 'raised ' + type(exc).__name__
cases = [[('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 0, 33], ['Cats', 0, 66], ['Bucks', 1, 6], ['Wolves', 6, 3]],),
   [['Wolves', '.667', '-'],
    ['Bucks', '.143', '4.0'],
    ['Cats', '.000', '34.5'],
    ['Jets', '.000', '18.0']]),
  ('regression: leader selection',
   ([['Jets', 4, 16], ['Cats', 25, 15], ['Suns', 2, 0], ['Bucks', 25, 12], ['Wolves', 9, 8]],),
   [['Suns', '1.000', '-'],
    ['Bucks', '.676', '-5.5'],
    ['Cats', '.625', '-4.0'],
    ['Wolves', '.529', '0.5'],
    ['Jets', '.200', '7.0']]),
  ('variant scenario 1',
   ([['Suns', 14, 1], ['Jets', 7, 23], ['Cats', 2, 3], ['Wolves', 1, 9]],),
   [['Suns', '.933', '-'],
    ['Cats', '.400', '7.0'],
    ['Jets', '.233', '14.5'],
    ['Wolves', '.100', '10.5']]),
  ('variant scenario 2',
   ([['Wolves', 4, 0], ['Suns', 3, 14], ['Cats', 18, 1], ['Bucks', 0, 11]],),
   [['Wolves', '1.000', '-'],
    ['Cats', '.947', '-6.5'],
    ['Suns', '.176', '7.5'],
    ['Bucks', '.000', '7.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Bucks', 1, 8], ['Wolves', 39, 1]],),
   [['Wolves', '.975', '-'], ['Bucks', '.111', '22.5']]),
  ('regression: leader selection',
   ([['Cats', 9, 1], ['Suns', 8, 2], ['Jets', 4, 4], ['Wolves', 15, 18]],),
   [['Cats', '.900', '-'],
    ['Suns', '.800', '1.0'],
    ['Jets', '.500', '4.0'],
    ['Wolves', '.455', '5.5']]),
  ('variant scenario 1',
   ([['Wolves', 29, 11], ['Jets', 9, 10], ['Bucks', 4, 2]],),
   [['Wolves', '.725', '-'], ['Bucks', '.667', '8.0'], ['Jets', '.474', '9.5']]),
  ('variant scenario 2',
   ([['Bucks', 7, 9], ['Wolves', 15, 16], ['Jets', 5, 8]],),
   [['Wolves', '.484', '-'], ['Bucks', '.438', '0.5'], ['Jets', '.385', '1.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Wolves', 7, 25], ['Jets', 6, 20], ['Bucks', 0, 15]],),
   [['Jets', '.231', '-'], ['Wolves', '.219', '2.0'], ['Bucks', '.000', '0.5']]),
  ('variant scenario 1',
   ([['Wolves', 0, 1], ['Cats', 0, 0], ['Suns', 19, 20], ['Jets', 5, 10], ['Bucks', 14, 23]],),
   [['Suns', '.487', '-'],
    ['Bucks', '.378', '4.0'],
    ['Jets', '.333', '2.0'],
    ['Cats', '.000', '-0.5'],
    ['Wolves', '.000', '-']]),
  ('variant scenario 2',
   ([['Jets', 4, 15], ['Cats', 4, 18], ['Suns', 7, 27], ['Wolves', 13, 7], ['Bucks', 1, 6]],),
   [['Wolves', '.650', '-'],
    ['Jets', '.211', '8.5'],
    ['Suns', '.206', '13.0'],
    ['Cats', '.182', '10.0'],
    ['Bucks', '.143', '5.5']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Jets', 17, 11], ['Bucks', 34, 22]],),
   [['Bucks', '.607', '-'], ['Jets', '.607', '3.0']]),
  ('regression: leader selection',
   ([['Cats', 14, 9], ['Jets', 10, 3], ['Wolves', 1, 15], ['Bucks', 2, 18], ['Suns', 7, 32]],),
   [['Jets', '.769', '-'],
    ['Cats', '.609', '1.0'],
    ['Suns', '.179', '16.0'],
    ['Bucks', '.100', '11.5'],
    ['Wolves', '.062', '10.5']]),
  ('variant scenario 1',
   ([['Cats', 8, 15], ['Jets', 16, 30], ['Wolves', 0, 7], ['Bucks', 22, 4], ['Suns', 4, 8]],),
   [['Bucks', '.846', '-'],
    ['Jets', '.348', '16.0'],
    ['Cats', '.348', '12.5'],
    ['Suns', '.333', '11.0'],
    ['Wolves', '.000', '12.5']]),
  ('variant scenario 2',
   ([['Bucks', 32, 2], ['Suns', 64, 4], ['Wolves', 8, 12], ['Cats', 7, 13], ['Jets', 13, 15]],),
   [['Suns', '.941', '-'],
    ['Bucks', '.941', '15.0'],
    ['Jets', '.464', '31.0'],
    ['Wolves', '.400', '32.0'],
    ['Cats', '.350', '33.0']])],
 [('control two teams',
   ([['Cats', 10, 5], ['Jets', 8, 7]],),
   [['Cats', '.667', '-'], ['Jets', '.533', '2.0']]),
  ('boundary half game',
   ([['Cats', 10, 5], ['Jets', 9, 5]],),
   [['Cats', '.667', '-'], ['Jets', '.643', '0.5']]),
  ('boundary perfect record',
   ([['Suns', 3, 0], ['Jets', 1, 1]],),
   [['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]),
  ('boundary no games played',
   ([['Suns', 0, 0], ['Bucks', 0, 2]],),
   [['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]),
  ('control equal pct more wins first',
   ([['Cats', 2, 2], ['Bucks', 4, 4]],),
   [['Bucks', '.500', '-'], ['Cats', '.500', '-']]),
  ('regression: leader selection',
   ([['Cats', 9, 3], ['Jets', 12, 4]],),
   [['Jets', '.750', '-'], ['Cats', '.750', '1.0']]),
  ('regression: leader selection',
   ([['Jets', 14, 7], ['Suns', 7, 12], ['Bucks', 23, 7], ['Cats', 8, 12], ['Wolves', 20, 0]],),
   [['Wolves', '1.000', '-'],
    ['Bucks', '.767', '2.0'],
    ['Jets', '.667', '6.5'],
    ['Cats', '.400', '12.0'],
    ['Suns', '.368', '12.5']]),
  ('variant scenario 1',
   ([['Suns', 20, 1], ['Wolves', 2, 2], ['Jets', 1, 4], ['Bucks', 1, 1], ['Cats', 0, 1]],),
   [['Suns', '.952', '-'],
    ['Wolves', '.500', '9.5'],
    ['Bucks', '.500', '9.5'],
    ['Jets', '.200', '11.0'],
    ['Cats', '.000', '10.0']]),
  ('variant scenario 2',
   ([['Wolves', 1, 0], ['Cats', 0, 4]],),
   [['Wolves', '1.000', '-'], ['Cats', '.000', '2.5']])]]
for label, args, expected in cases[N - 1]:
    check(label, run(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
control two teams[['Cats', '.667', '-'], ['Jets', '.533', '2.0']][['Cats', '.667', '-'], ['Jets', '.533', '2.0']]Passed
boundary half game[['Cats', '.667', '-'], ['Jets', '.643', '0.5']][['Cats', '.667', '-'], ['Jets', '.643', '0.5']]Passed
boundary perfect record[['Suns', '1.000', '-'], ['Jets', '.500', '1.5']][['Suns', '1.000', '-'], ['Jets', '.500', '1.5']]Passed
boundary no games played[['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']][['Bucks', '.000', '-'], ['Suns', '.000', '-1.0']]Passed
control equal pct more wins first[['Bucks', '.500', '-'], ['Cats', '.500', '-']][['Bucks', '.500', '-'], ['Cats', '.500', '-']]Passed
regression: leader selection[['Wolves', '.667', '-'], ['Bucks', '.143', '4.0'], ['Cats', '.000', '34.5'], ['Jets', '.000', '18.0']][['Wolves', '.667', '-'], ['Bucks', '.143', '4.0'], ['Cats', '.000', '34.5'], ['Jets', '.000', '18.0']]Passed
regression: leader selection[['Suns', '1.000', '-'], ['Bucks', '.676', '-5.5'], ['Cats', '.625', '-4.0'], ['Wolves', '.529', '0.5'], ['Jets', '.200', '7.0']][['Suns', '1.000', '-'], ['Bucks', '.676', '-5.5'], ['Cats', '.625', '-4.0'], ['Wolves', '.529', '0.5'], ['Jets', '.200', '7.0']]Passed
variant scenario 1[['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']][['Suns', '.933', '-'], ['Cats', '.400', '7.0'], ['Jets', '.233', '14.5'], ['Wolves', '.100', '10.5']]Passed
variant scenario 2[['Wolves', '1.000', '-'], ['Cats', '.947', '-6.5'], ['Suns', '.176', '7.5'], ['Bucks', '.000', '7.5']][['Wolves', '1.000', '-'], ['Cats', '.947', '-6.5'], ['Suns', '.176', '7.5'], ['Bucks', '.000', '7.5']]Passed

SHA-256 / 433c5565926952d8a06d1034a85fe0d292a8ef3a3e943af820d82476040e16dd

Verification & scope

Stipulated, bounded toy contract stated in the contract field; not a claim of conformance with any governing body rulebook or operator house rules. 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:27.753707+00:00.

Case digest / c74392e5f4344ba9214db4a0da52147594c36b9dbaa41ab9642e6c78c9a4c43a