{"abstract":"Kickers lose a point for missing a 55-yard attempt that the league exempts.","category":"Fantasy sports scoring","checks":7,"contract":"Score a kicker. Kick distance is the line-of-scrimmage yardline plus 17 (10 yards of end zone and a 7-yard hold). Made FG: <=39 yards 3, 40-49 4, 50+ 5. Missed FG: <=39 -2, 40-49 -1, 50+ 0. Blocked FG and blocked PAT score 0. PAT made +1, missed -1. Return [points, longest made FG distance or 0].","evaluation_group":"w2-fantasy-sports-scoring-kicker-distance","failed_approach":"Putting the exemption edge at 50 still penalizes exactly 50-yard misses.","family":"w2-fantasy-sports-scoring-kicker-distance-long-miss-exemption","id":"FA-84926","implementations":{"attempt":{"sha256":"a35e2c2093951a6c783fdb0c7bbfd4b57e45cf1356802d8d76b866796edbe4ce","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(kicks):\n    pts = 0\n    longest = 0\n    for k in kicks:\n        if k['type'] == 'pat':\n            if k['result'] == 'made':\n                pts += 1\n            elif k['result'] == 'missed':\n                pts -= 1\n            continue\n        dist = k['yardline'] + 17\n        if k['result'] == 'made':\n            pts += 3 if dist <= 39 else 4 if dist <= 49 else 5\n            longest = max(longest, dist)\n        elif k['result'] == 'missed':\n            pts += -2 if dist <= 39 else -1 if dist <= 50 else 0\n    return [pts, longest]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [4, 51]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [5, 39]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'fg', 'yardline': 45},\n     {'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [8, 51]),\n  ('normal control 1',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 3}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [8, 50]),\n  ('normal control 2', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'fg', 'yardline': 4}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [16, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'made', 'type': 'fg', 'yardline': 21},\n     {'result': 'made', 'type': 'fg', 'yardline': 9}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [16, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [0, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 22}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [1, 39]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [14, 51]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [4, 39]),\n  ('normal control 2',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}]],\n   [8, 49]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 31},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 33}]],\n   [5, 50])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [9, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [5, 40]),\n  ('normal control 2',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 13},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 7}]],\n   [4, 40]),\n  ('normal control 3',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [10, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [11, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [6, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 30}]],\n   [-1, 0]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 2', [[{'result': 'blocked', 'type': 'fg', 'yardline': 22}]], [0, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-2, 0]),\n  ('normal control 4', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0])],\n [('regression: long miss exemption',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 43}]],\n   [-2, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [13, 51]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [12, 50]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32}]],\n   [3, 49]),\n  ('normal control 2',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 3',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0])]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"0f10732ef3d4f37529ee0065eedf0f5e8cc3c793c1b906ca59f66a055c06b750","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(kicks):\n    pts = 0\n    longest = 0\n    for k in kicks:\n        if k['type'] == 'pat':\n            if k['result'] == 'made':\n                pts += 1\n            elif k['result'] == 'missed':\n                pts -= 1\n            continue\n        dist = k['yardline'] + 17\n        if k['result'] == 'made':\n            pts += 3 if dist <= 39 else 4 if dist <= 49 else 5\n            longest = max(longest, dist)\n        elif k['result'] == 'missed':\n            pts += -2 if dist <= 39 else -1\n    return [pts, longest]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [4, 51]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [5, 39]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'fg', 'yardline': 45},\n     {'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [8, 51]),\n  ('normal control 1',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 3}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [8, 50]),\n  ('normal control 2', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'fg', 'yardline': 4}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [16, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'made', 'type': 'fg', 'yardline': 21},\n     {'result': 'made', 'type': 'fg', 'yardline': 9}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [16, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [0, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 22}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [1, 39]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [14, 51]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [4, 39]),\n  ('normal control 2',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}]],\n   [8, 49]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 31},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 33}]],\n   [5, 50])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [9, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [5, 40]),\n  ('normal control 2',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 13},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 7}]],\n   [4, 40]),\n  ('normal control 3',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [10, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [11, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [6, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 30}]],\n   [-1, 0]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 2', [[{'result': 'blocked', 'type': 'fg', 'yardline': 22}]], [0, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-2, 0]),\n  ('normal control 4', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0])],\n [('regression: long miss exemption',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 43}]],\n   [-2, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [13, 51]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [12, 50]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32}]],\n   [3, 49]),\n  ('normal control 2',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 3',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0])]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"d12cd92520b6c4ad539c7fddca2391620653e968a3ded2829ec72404427ea4f2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(kicks):\n    pts = 0\n    longest = 0\n    for k in kicks:\n        if k['type'] == 'pat':\n            if k['result'] == 'made':\n                pts += 1\n            elif k['result'] == 'missed':\n                pts -= 1\n            continue\n        dist = k['yardline'] + 17\n        if k['result'] == 'made':\n            pts += 3 if dist <= 39 else 4 if dist <= 49 else 5\n            longest = max(longest, dist)\n        elif k['result'] == 'missed':\n            pts += -2 if dist <= 39 else -1 if dist <= 49 else 0\n    return [pts, longest]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [4, 51]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [5, 39]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'fg', 'yardline': 45},\n     {'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [8, 51]),\n  ('normal control 1',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 3}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [8, 50]),\n  ('normal control 2', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'fg', 'yardline': 4}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [16, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'made', 'type': 'fg', 'yardline': 21},\n     {'result': 'made', 'type': 'fg', 'yardline': 9}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [16, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [0, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 22}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [1, 39]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [14, 51]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [4, 39]),\n  ('normal control 2',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 23}]],\n   [8, 49]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 31},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 33}]],\n   [5, 50])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33}]],\n   [9, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34}]],\n   [0, 0]),\n  ('normal control 1',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23}]],\n   [5, 40]),\n  ('normal control 2',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 13},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 7}]],\n   [4, 40]),\n  ('normal control 3',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [10, 50]),\n  ('normal control 4',\n   [[{'result': 'made', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}, {'result': 'blocked', 'type': 'fg', 'yardline': 23},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [11, 51])],\n [('regression: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'fg', 'yardline': 33}, {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [6, 50]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0]),\n  ('second regression',\n   [[{'result': 'made', 'type': 'pat', 'yardline': 15}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'fg', 'yardline': 30}]],\n   [-1, 0]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 2', [[{'result': 'blocked', 'type': 'fg', 'yardline': 22}]], [0, 0]),\n  ('normal control 3',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 34}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-2, 0]),\n  ('normal control 4', [[{'result': 'made', 'type': 'pat', 'yardline': 15}]], [1, 0])],\n [('regression: long miss exemption',\n   [[{'result': 'blocked', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'missed', 'type': 'fg', 'yardline': 43}]],\n   [-2, 0]),\n  ('partial repair probe: long miss exemption',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 33}, {'result': 'made', 'type': 'fg', 'yardline': 22},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 34}]],\n   [13, 51]),\n  ('second regression',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15}, {'result': 'made', 'type': 'fg', 'yardline': 33},\n     {'result': 'made', 'type': 'fg', 'yardline': 22}, {'result': 'made', 'type': 'fg', 'yardline': 23},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 32},\n     {'result': 'missed', 'type': 'fg', 'yardline': 33}]],\n   [12, 50]),\n  ('normal control 1',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 32}, {'result': 'made', 'type': 'fg', 'yardline': 32}]],\n   [3, 49]),\n  ('normal control 2',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'missed', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 3',\n   [[{'result': 'missed', 'type': 'fg', 'yardline': 23}, {'result': 'made', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'fg', 'yardline': 34},\n     {'result': 'missed', 'type': 'pat', 'yardline': 15}]],\n   [-1, 0]),\n  ('normal control 4',\n   [[{'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'blocked', 'type': 'pat', 'yardline': 15},\n     {'result': 'made', 'type': 'pat', 'yardline': 15}]],\n   [1, 0])]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-fantasy-sports-scoring-kicker-distance-long-miss-exemption","generated_at":"2026-09-29T14:50:35.703536+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Kicker distance bands and miss penalties are a classic source of scoring disputes.","repair":"Penalize misses of 50+ yards with 0.","root_cause":"The miss penalty has no zero branch for 50+ yard attempts.","sha256":"8adf0fa7383b2632927f7daec89063e29b7796f53a4f993041d30d01a9c410a5","title":"Missed 50+ yard attempts penalized · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":44.217,"exit_code":1,"observations":[{"actual":[3,51],"check":"regression: long miss exemption","expected":[4,51],"passed":false},{"actual":[4,39],"check":"partial repair probe: long miss exemption","expected":[5,39],"passed":false},{"actual":[8,51],"check":"second regression","expected":[8,51],"passed":true},{"actual":[8,50],"check":"normal control 1","expected":[8,50],"passed":true},{"actual":[1,0],"check":"normal control 2","expected":[1,0],"passed":true},{"actual":[16,50],"check":"normal control 3","expected":[16,50],"passed":true},{"actual":[16,51],"check":"normal control 4","expected":[16,51],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: long miss exemption\", \"actual\": [3, 51], \"expected\": [4, 51], \"passed\": false}, {\"check\": \"partial repair probe: long miss exemption\", \"actual\": [4, 39], \"expected\": [5, 39], \"passed\": false}, {\"check\": \"second regression\", \"actual\": [8, 51], \"expected\": [8, 51], \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": [8, 50], \"expected\": [8, 50], \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": [1, 0], \"expected\": [1, 0], \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": [16, 50], \"expected\": [16, 50], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [16, 51], \"expected\": [16, 51], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.101,"exit_code":1,"observations":[{"actual":[3,51],"check":"regression: long miss exemption","expected":[4,51],"passed":false},{"actual":[4,39],"check":"partial repair probe: long miss exemption","expected":[5,39],"passed":false},{"actual":[7,51],"check":"second regression","expected":[8,51],"passed":false},{"actual":[8,50],"check":"normal control 1","expected":[8,50],"passed":true},{"actual":[1,0],"check":"normal control 2","expected":[1,0],"passed":true},{"actual":[16,50],"check":"normal control 3","expected":[16,50],"passed":true},{"actual":[16,51],"check":"normal control 4","expected":[16,51],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: long miss exemption\", \"actual\": [3, 51], \"expected\": [4, 51], \"passed\": false}, {\"check\": \"partial repair probe: long miss exemption\", \"actual\": [4, 39], \"expected\": [5, 39], \"passed\": false}, {\"check\": \"second regression\", \"actual\": [7, 51], \"expected\": [8, 51], \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": [8, 50], \"expected\": [8, 50], \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": [1, 0], \"expected\": [1, 0], \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": [16, 50], \"expected\": [16, 50], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [16, 51], \"expected\": [16, 51], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":45.167,"exit_code":0,"observations":[{"actual":[4,51],"check":"regression: long miss exemption","expected":[4,51],"passed":true},{"actual":[5,39],"check":"partial repair probe: long miss exemption","expected":[5,39],"passed":true},{"actual":[8,51],"check":"second regression","expected":[8,51],"passed":true},{"actual":[8,50],"check":"normal control 1","expected":[8,50],"passed":true},{"actual":[1,0],"check":"normal control 2","expected":[1,0],"passed":true},{"actual":[16,50],"check":"normal control 3","expected":[16,50],"passed":true},{"actual":[16,51],"check":"normal control 4","expected":[16,51],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: long miss exemption\", \"actual\": [4, 51], \"expected\": [4, 51], \"passed\": true}, {\"check\": \"partial repair probe: long miss exemption\", \"actual\": [5, 39], \"expected\": [5, 39], \"passed\": true}, {\"check\": \"second regression\", \"actual\": [8, 51], \"expected\": [8, 51], \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": [8, 50], \"expected\": [8, 50], \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": [1, 0], \"expected\": [1, 0], \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": [16, 50], \"expected\": [16, 50], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [16, 51], \"expected\": [16, 51], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}