{"abstract":"A rare quadruple-double scores no bonus at all.","category":"Fantasy sports scoring","checks":7,"contract":"Score a basketball line in tenths: points 1.0, rebounds (offensive + defensive) 1.2, assists 1.5, steals 3, blocks 3, turnovers -1, threes made 0.5 extra. Count double-digit categories among points, rebounds, assists, steals and blocks; three or more earns only the triple-double bonus, exactly two earns the double-double bonus.","evaluation_group":"w2-fantasy-sports-scoring-basketball-double-bonus","failed_approach":"Widening the double-double branch instead pays a quadruple-double the smaller bonus.","family":"w2-fantasy-sports-scoring-basketball-double-bonus-quadruple-double-tier","id":"FA-85126","implementations":{"attempt":{"sha256":"776ed47285cbeb63d5de8a5f02440a76f349423348b7a157fe92517d32059a39","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(line, bonus):\n    line = dict(line, reb=line['oreb'] + line['dreb'])\n    w = {'pts': 10, 'reb': 12, 'ast': 15, 'stl': 30, 'blk': 30, 'tov': -10, 'fg3m': 5}\n    score = sum(w[k] * line[k] for k in w)\n    doubles = sum(1 for k in ('pts', 'reb', 'ast', 'stl', 'blk') if line[k] >= 10)\n    if doubles == 3:\n        score += bonus['td']\n    elif doubles >= 2:\n        score += bonus['dd']\n    return score\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 5, 'pts': 35, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   1345),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   798),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 9, 'fg3m': 4, 'oreb': 3, 'pts': 21, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   904),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 2, 'dreb': 0, 'fg3m': 0, 'oreb': 6, 'pts': 10, 'stl': 0, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   387),\n  ('normal control 2',\n   [{'ast': 11, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 3, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   432),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 3, 'oreb': 2, 'pts': 1, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   392),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 2, 'dreb': 7, 'fg3m': 5, 'oreb': 1, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   441)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 0, 'dreb': 10, 'fg3m': 3, 'oreb': 5, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 10, 'dreb': 4, 'fg3m': 6, 'oreb': 0, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   953),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 9, 'fg3m': 1, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   816),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 5, 'oreb': 1, 'pts': 9, 'stl': 0, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   697),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 1, 'dreb': 9, 'fg3m': 4, 'oreb': 5, 'pts': 9, 'stl': 2, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   503),\n  ('normal control 3',\n   [{'ast': 6, 'blk': 2, 'dreb': 10, 'fg3m': 4, 'oreb': 5, 'pts': 39, 'stl': 1, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('normal control 4',\n   [{'ast': 9, 'blk': 10, 'dreb': 4, 'fg3m': 0, 'oreb': 3, 'pts': 10, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   654)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 9, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   752),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 2, 'dreb': 5, 'fg3m': 5, 'oreb': 5, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('second regression',\n   [{'ast': 11, 'blk': 11, 'dreb': 4, 'fg3m': 6, 'oreb': 1, 'pts': 29, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   1155),\n  ('normal control 1',\n   [{'ast': 11, 'blk': 0, 'dreb': 4, 'fg3m': 6, 'oreb': 3, 'pts': 9, 'stl': 0, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   319),\n  ('normal control 2',\n   [{'ast': 6, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 2, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   584),\n  ('normal control 3',\n   [{'ast': 11, 'blk': 10, 'dreb': 5, 'fg3m': 0, 'oreb': 0, 'pts': 9, 'stl': 2, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   660),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 3, 'pts': 34, 'stl': 0, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   682)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 10, 'fg3m': 1, 'oreb': 3, 'pts': 10, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   801),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 4, 'oreb': 6, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   830),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 2, 'pts': 9, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   999),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   433),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 10, 'dreb': 10, 'fg3m': 1, 'oreb': 0, 'pts': 11, 'stl': 2, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   750),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 4, 'pts': 26, 'stl': 2, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   669),\n  ('normal control 4',\n   [{'ast': 10, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 4, 'pts': 10, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   653)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 0, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 8, 'fg3m': 3, 'oreb': 6, 'pts': 11, 'stl': 2, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   803),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 10, 'fg3m': 5, 'oreb': 0, 'pts': 24, 'stl': 1, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   850),\n  ('normal control 1',\n   [{'ast': 9, 'blk': 2, 'dreb': 5, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 1, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   413),\n  ('normal control 2',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 2, 'oreb': 4, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   486),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 5, 'oreb': 3, 'pts': 10, 'stl': 0, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   427),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 0, 'dreb': 10, 'fg3m': 5, 'oreb': 4, 'pts': 10, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   498)]]\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":"373dbc16210d68abf192fbe7796cba3de921bd7153c78dceed1d8f5322a8cffd","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(line, bonus):\n    line = dict(line, reb=line['oreb'] + line['dreb'])\n    w = {'pts': 10, 'reb': 12, 'ast': 15, 'stl': 30, 'blk': 30, 'tov': -10, 'fg3m': 5}\n    score = sum(w[k] * line[k] for k in w)\n    doubles = sum(1 for k in ('pts', 'reb', 'ast', 'stl', 'blk') if line[k] >= 10)\n    if doubles == 3:\n        score += bonus['td']\n    elif doubles == 2:\n        score += bonus['dd']\n    return score\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 5, 'pts': 35, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   1345),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   798),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 9, 'fg3m': 4, 'oreb': 3, 'pts': 21, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   904),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 2, 'dreb': 0, 'fg3m': 0, 'oreb': 6, 'pts': 10, 'stl': 0, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   387),\n  ('normal control 2',\n   [{'ast': 11, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 3, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   432),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 3, 'oreb': 2, 'pts': 1, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   392),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 2, 'dreb': 7, 'fg3m': 5, 'oreb': 1, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   441)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 0, 'dreb': 10, 'fg3m': 3, 'oreb': 5, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 10, 'dreb': 4, 'fg3m': 6, 'oreb': 0, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   953),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 9, 'fg3m': 1, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   816),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 5, 'oreb': 1, 'pts': 9, 'stl': 0, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   697),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 1, 'dreb': 9, 'fg3m': 4, 'oreb': 5, 'pts': 9, 'stl': 2, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   503),\n  ('normal control 3',\n   [{'ast': 6, 'blk': 2, 'dreb': 10, 'fg3m': 4, 'oreb': 5, 'pts': 39, 'stl': 1, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('normal control 4',\n   [{'ast': 9, 'blk': 10, 'dreb': 4, 'fg3m': 0, 'oreb': 3, 'pts': 10, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   654)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 9, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   752),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 2, 'dreb': 5, 'fg3m': 5, 'oreb': 5, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('second regression',\n   [{'ast': 11, 'blk': 11, 'dreb': 4, 'fg3m': 6, 'oreb': 1, 'pts': 29, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   1155),\n  ('normal control 1',\n   [{'ast': 11, 'blk': 0, 'dreb': 4, 'fg3m': 6, 'oreb': 3, 'pts': 9, 'stl': 0, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   319),\n  ('normal control 2',\n   [{'ast': 6, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 2, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   584),\n  ('normal control 3',\n   [{'ast': 11, 'blk': 10, 'dreb': 5, 'fg3m': 0, 'oreb': 0, 'pts': 9, 'stl': 2, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   660),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 3, 'pts': 34, 'stl': 0, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   682)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 10, 'fg3m': 1, 'oreb': 3, 'pts': 10, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   801),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 4, 'oreb': 6, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   830),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 2, 'pts': 9, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   999),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   433),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 10, 'dreb': 10, 'fg3m': 1, 'oreb': 0, 'pts': 11, 'stl': 2, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   750),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 4, 'pts': 26, 'stl': 2, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   669),\n  ('normal control 4',\n   [{'ast': 10, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 4, 'pts': 10, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   653)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 0, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 8, 'fg3m': 3, 'oreb': 6, 'pts': 11, 'stl': 2, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   803),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 10, 'fg3m': 5, 'oreb': 0, 'pts': 24, 'stl': 1, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   850),\n  ('normal control 1',\n   [{'ast': 9, 'blk': 2, 'dreb': 5, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 1, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   413),\n  ('normal control 2',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 2, 'oreb': 4, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   486),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 5, 'oreb': 3, 'pts': 10, 'stl': 0, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   427),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 0, 'dreb': 10, 'fg3m': 5, 'oreb': 4, 'pts': 10, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   498)]]\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":"657c3f00aa7692cdb8f2c1bfb1d1272c9729d2b8656278642338480bef6f971e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(line, bonus):\n    line = dict(line, reb=line['oreb'] + line['dreb'])\n    w = {'pts': 10, 'reb': 12, 'ast': 15, 'stl': 30, 'blk': 30, 'tov': -10, 'fg3m': 5}\n    score = sum(w[k] * line[k] for k in w)\n    doubles = sum(1 for k in ('pts', 'reb', 'ast', 'stl', 'blk') if line[k] >= 10)\n    if doubles >= 3:\n        score += bonus['td']\n    elif doubles == 2:\n        score += bonus['dd']\n    return score\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 5, 'pts': 35, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   1345),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   798),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 9, 'fg3m': 4, 'oreb': 3, 'pts': 21, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   904),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 2, 'dreb': 0, 'fg3m': 0, 'oreb': 6, 'pts': 10, 'stl': 0, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   387),\n  ('normal control 2',\n   [{'ast': 11, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 3, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   432),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 3, 'oreb': 2, 'pts': 1, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   392),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 2, 'dreb': 7, 'fg3m': 5, 'oreb': 1, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   441)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 0, 'dreb': 10, 'fg3m': 3, 'oreb': 5, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 10, 'dreb': 4, 'fg3m': 6, 'oreb': 0, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   953),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 9, 'fg3m': 1, 'oreb': 4, 'pts': 11, 'stl': 3, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   816),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 5, 'oreb': 1, 'pts': 9, 'stl': 0, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   697),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 1, 'dreb': 9, 'fg3m': 4, 'oreb': 5, 'pts': 9, 'stl': 2, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   503),\n  ('normal control 3',\n   [{'ast': 6, 'blk': 2, 'dreb': 10, 'fg3m': 4, 'oreb': 5, 'pts': 39, 'stl': 1, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   755),\n  ('normal control 4',\n   [{'ast': 9, 'blk': 10, 'dreb': 4, 'fg3m': 0, 'oreb': 3, 'pts': 10, 'stl': 2, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   654)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 9, 'fg3m': 2, 'oreb': 2, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   752),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 11, 'blk': 2, 'dreb': 5, 'fg3m': 5, 'oreb': 5, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('second regression',\n   [{'ast': 11, 'blk': 11, 'dreb': 4, 'fg3m': 6, 'oreb': 1, 'pts': 29, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   1155),\n  ('normal control 1',\n   [{'ast': 11, 'blk': 0, 'dreb': 4, 'fg3m': 6, 'oreb': 3, 'pts': 9, 'stl': 0, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   319),\n  ('normal control 2',\n   [{'ast': 6, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 2, 'pts': 10, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   584),\n  ('normal control 3',\n   [{'ast': 11, 'blk': 10, 'dreb': 5, 'fg3m': 0, 'oreb': 0, 'pts': 9, 'stl': 2, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   660),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 3, 'pts': 34, 'stl': 0, 'tov': 3},\n    {'dd': 15, 'td': 30}],\n   682)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 10, 'fg3m': 1, 'oreb': 3, 'pts': 10, 'stl': 10, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   801),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 4, 'oreb': 6, 'pts': 11, 'stl': 10, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   830),\n  ('second regression',\n   [{'ast': 10, 'blk': 11, 'dreb': 10, 'fg3m': 1, 'oreb': 2, 'pts': 9, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   999),\n  ('normal control 1',\n   [{'ast': 10, 'blk': 1, 'dreb': 4, 'fg3m': 2, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   433),\n  ('normal control 2',\n   [{'ast': 9, 'blk': 10, 'dreb': 10, 'fg3m': 1, 'oreb': 0, 'pts': 11, 'stl': 2, 'tov': 1},\n    {'dd': 15, 'td': 30}],\n   750),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 3, 'oreb': 4, 'pts': 26, 'stl': 2, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   669),\n  ('normal control 4',\n   [{'ast': 10, 'blk': 0, 'dreb': 5, 'fg3m': 3, 'oreb': 4, 'pts': 10, 'stl': 10, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   653)],\n [('regression: quadruple-double tier',\n   [{'ast': 10, 'blk': 10, 'dreb': 10, 'fg3m': 0, 'oreb': 5, 'pts': 10, 'stl': 1, 'tov': 0},\n    {'dd': 15, 'td': 30}],\n   790),\n  ('partial repair probe: quadruple-double tier',\n   [{'ast': 10, 'blk': 11, 'dreb': 8, 'fg3m': 3, 'oreb': 6, 'pts': 11, 'stl': 2, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   803),\n  ('second regression',\n   [{'ast': 11, 'blk': 10, 'dreb': 10, 'fg3m': 5, 'oreb': 0, 'pts': 24, 'stl': 1, 'tov': 6},\n    {'dd': 15, 'td': 30}],\n   850),\n  ('normal control 1',\n   [{'ast': 9, 'blk': 2, 'dreb': 5, 'fg3m': 2, 'oreb': 4, 'pts': 11, 'stl': 1, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   413),\n  ('normal control 2',\n   [{'ast': 10, 'blk': 2, 'dreb': 9, 'fg3m': 2, 'oreb': 4, 'pts': 10, 'stl': 0, 'tov': 2},\n    {'dd': 15, 'td': 30}],\n   486),\n  ('normal control 3',\n   [{'ast': 10, 'blk': 1, 'dreb': 8, 'fg3m': 5, 'oreb': 3, 'pts': 10, 'stl': 0, 'tov': 4},\n    {'dd': 15, 'td': 30}],\n   427),\n  ('normal control 4',\n   [{'ast': 11, 'blk': 0, 'dreb': 10, 'fg3m': 5, 'oreb': 4, 'pts': 10, 'stl': 2, 'tov': 5},\n    {'dd': 15, 'td': 30}],\n   498)]]\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-basketball-double-bonus-quadruple-double-tier","generated_at":"2026-09-29T14:50:37.483186+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Double-double and triple-double bonuses are exclusive tiers in points leagues and are frequently double-awarded.","repair":"Award the triple-double bonus for three or more categories.","root_cause":"The triple-double tier matches only exactly three categories.","sha256":"d0f4b7113fb78849c20d4407f93e9365638696f90d04fa21a83b5d675b980635","title":"Four double-digit categories earn no bonus · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":38.88,"exit_code":1,"observations":[{"actual":1330,"check":"regression: quadruple-double tier","expected":1345,"passed":false},{"actual":783,"check":"partial repair probe: quadruple-double tier","expected":798,"passed":false},{"actual":889,"check":"second regression","expected":904,"passed":false},{"actual":387,"check":"normal control 1","expected":387,"passed":true},{"actual":432,"check":"normal control 2","expected":432,"passed":true},{"actual":392,"check":"normal control 3","expected":392,"passed":true},{"actual":441,"check":"normal control 4","expected":441,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: quadruple-double tier\", \"actual\": 1330, \"expected\": 1345, \"passed\": false}, {\"check\": \"partial repair probe: quadruple-double tier\", \"actual\": 783, \"expected\": 798, \"passed\": false}, {\"check\": \"second regression\", \"actual\": 889, \"expected\": 904, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": 387, \"expected\": 387, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 432, \"expected\": 432, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 392, \"expected\": 392, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": 441, \"expected\": 441, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.378,"exit_code":1,"observations":[{"actual":1315,"check":"regression: quadruple-double tier","expected":1345,"passed":false},{"actual":768,"check":"partial repair probe: quadruple-double tier","expected":798,"passed":false},{"actual":874,"check":"second regression","expected":904,"passed":false},{"actual":387,"check":"normal control 1","expected":387,"passed":true},{"actual":432,"check":"normal control 2","expected":432,"passed":true},{"actual":392,"check":"normal control 3","expected":392,"passed":true},{"actual":441,"check":"normal control 4","expected":441,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: quadruple-double tier\", \"actual\": 1315, \"expected\": 1345, \"passed\": false}, {\"check\": \"partial repair probe: quadruple-double tier\", \"actual\": 768, \"expected\": 798, \"passed\": false}, {\"check\": \"second regression\", \"actual\": 874, \"expected\": 904, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": 387, \"expected\": 387, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 432, \"expected\": 432, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 392, \"expected\": 392, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": 441, \"expected\": 441, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.262,"exit_code":0,"observations":[{"actual":1345,"check":"regression: quadruple-double tier","expected":1345,"passed":true},{"actual":798,"check":"partial repair probe: quadruple-double tier","expected":798,"passed":true},{"actual":904,"check":"second regression","expected":904,"passed":true},{"actual":387,"check":"normal control 1","expected":387,"passed":true},{"actual":432,"check":"normal control 2","expected":432,"passed":true},{"actual":392,"check":"normal control 3","expected":392,"passed":true},{"actual":441,"check":"normal control 4","expected":441,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: quadruple-double tier\", \"actual\": 1345, \"expected\": 1345, \"passed\": true}, {\"check\": \"partial repair probe: quadruple-double tier\", \"actual\": 798, \"expected\": 798, \"passed\": true}, {\"check\": \"second regression\", \"actual\": 904, \"expected\": 904, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": 387, \"expected\": 387, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 432, \"expected\": 432, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 392, \"expected\": 392, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": 441, \"expected\": 441, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}