{"abstract":"Running events score zero or slow times still earn points.","category":"Sports scoring and tiebreakers","checks":10,"contract":"Combined-events points. Coefficients (A, B, C, kind): 100m (25.4347, 18, 1.81, track), 400m (1.53775, 82, 1.81, track), 1500m (0.03768, 480, 1.85, track), long_jump (0.14354, 220, 1.4, jump), high_jump (0.8465, 75, 1.42, jump), shot_put (51.39, 1.5, 1.05, throw). Track performances are seconds, 1500m as \"m:ss.hh\"; jumps are given in metres but scored in whole centimetres (rounded); throws in metres. Track points = floor(A * (B - P) ** C), field points = floor(A * (P - B) ** C); a non-positive base scores 0.","evaluation_group":"w2-sports-scoring-decathlon-points-table","failed_approach":"Taking the absolute difference awards points to times slower than the base.","family":"w2-sports-scoring-decathlon-points-table-track-orientation","id":"FA-84321","implementations":{"attempt":{"sha256":"fb670ac64e98af2cb5e8f4051a923621860b719c853f87feae022c4b675c81d2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(event, perf):\n    TABLE = {'100m': (25.4347, 18, 1.81, 'track'), '400m': (1.53775, 82, 1.81, 'track'),\n             '1500m': (0.03768, 480, 1.85, 'track'), 'long_jump': (0.14354, 220, 1.4, 'jump'),\n             'high_jump': (0.8465, 75, 1.42, 'jump'), 'shot_put': (51.39, 1.5, 1.05, 'throw')}\n    A, B, C, kind = TABLE[event]\n    if kind == 'track':\n        if ':' in perf:\n            m, s = perf.split(':')\n            p = int(m) * 60 + float(s)\n        else:\n            p = float(perf)\n        base = abs(B - p)\n    else:\n        p = float(perf)\n        if kind == 'jump':\n            p = round(p * 100)\n        base = p - B\n    if base <= 0:\n        return 0\n    return int(math.floor(A * base ** C))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '50.19'), 806),\n  ('regression: track orientation', ('100m', '19.20'), 0),\n  ('variant scenario 1', ('shot_put', '7.58'), 341),\n  ('variant scenario 2', ('1500m', '5:05.73'), 527)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '46.65'), 976),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('long_jump', '6.88'), 785),\n  ('variant scenario 2', ('high_jump', '2.01'), 813)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('1500m', '5:00.81'), 555),\n  ('regression: track orientation', ('100m', '18.77'), 0),\n  ('variant scenario 1', ('shot_put', '9.22'), 439),\n  ('variant scenario 2', ('100m', '12.25'), 603)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '57.81'), 491),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('400m', '53.57'), 657),\n  ('variant scenario 2', ('1500m', '4:52.19'), 606)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('100m', '12.17'), 618),\n  ('regression: track orientation', ('100m', '18.95'), 0),\n  ('variant scenario 1', ('400m', '50.41'), 796),\n  ('variant scenario 2', ('1500m', '4:45.49'), 646)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"254a75208d33008cf743868adffb563a4b13e4770d1f3ec732940ff54b3ffb65","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(event, perf):\n    TABLE = {'100m': (25.4347, 18, 1.81, 'track'), '400m': (1.53775, 82, 1.81, 'track'),\n             '1500m': (0.03768, 480, 1.85, 'track'), 'long_jump': (0.14354, 220, 1.4, 'jump'),\n             'high_jump': (0.8465, 75, 1.42, 'jump'), 'shot_put': (51.39, 1.5, 1.05, 'throw')}\n    A, B, C, kind = TABLE[event]\n    if kind == 'track':\n        if ':' in perf:\n            m, s = perf.split(':')\n            p = int(m) * 60 + float(s)\n        else:\n            p = float(perf)\n        base = p - B\n    else:\n        p = float(perf)\n        if kind == 'jump':\n            p = round(p * 100)\n        base = p - B\n    if base <= 0:\n        return 0\n    return int(math.floor(A * base ** C))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '50.19'), 806),\n  ('regression: track orientation', ('100m', '19.20'), 0),\n  ('variant scenario 1', ('shot_put', '7.58'), 341),\n  ('variant scenario 2', ('1500m', '5:05.73'), 527)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '46.65'), 976),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('long_jump', '6.88'), 785),\n  ('variant scenario 2', ('high_jump', '2.01'), 813)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('1500m', '5:00.81'), 555),\n  ('regression: track orientation', ('100m', '18.77'), 0),\n  ('variant scenario 1', ('shot_put', '9.22'), 439),\n  ('variant scenario 2', ('100m', '12.25'), 603)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '57.81'), 491),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('400m', '53.57'), 657),\n  ('variant scenario 2', ('1500m', '4:52.19'), 606)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('100m', '12.17'), 618),\n  ('regression: track orientation', ('100m', '18.95'), 0),\n  ('variant scenario 1', ('400m', '50.41'), 796),\n  ('variant scenario 2', ('1500m', '4:45.49'), 646)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"a907dbc68aa0a80110c24e69d450f507d11aa58a5878f3813f19eea2bb6a4e02","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(event, perf):\n    TABLE = {'100m': (25.4347, 18, 1.81, 'track'), '400m': (1.53775, 82, 1.81, 'track'),\n             '1500m': (0.03768, 480, 1.85, 'track'), 'long_jump': (0.14354, 220, 1.4, 'jump'),\n             'high_jump': (0.8465, 75, 1.42, 'jump'), 'shot_put': (51.39, 1.5, 1.05, 'throw')}\n    A, B, C, kind = TABLE[event]\n    if kind == 'track':\n        if ':' in perf:\n            m, s = perf.split(':')\n            p = int(m) * 60 + float(s)\n        else:\n            p = float(perf)\n        base = B - p\n    else:\n        p = float(perf)\n        if kind == 'jump':\n            p = round(p * 100)\n        base = p - B\n    if base <= 0:\n        return 0\n    return int(math.floor(A * base ** C))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '50.19'), 806),\n  ('regression: track orientation', ('100m', '19.20'), 0),\n  ('variant scenario 1', ('shot_put', '7.58'), 341),\n  ('variant scenario 2', ('1500m', '5:05.73'), 527)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '46.65'), 976),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('long_jump', '6.88'), 785),\n  ('variant scenario 2', ('high_jump', '2.01'), 813)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('1500m', '5:00.81'), 555),\n  ('regression: track orientation', ('100m', '18.77'), 0),\n  ('variant scenario 1', ('shot_put', '9.22'), 439),\n  ('variant scenario 2', ('100m', '12.25'), 603)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('400m', '57.81'), 491),\n  ('regression: track orientation', ('100m', '18.50'), 0),\n  ('variant scenario 1', ('400m', '53.57'), 657),\n  ('variant scenario 2', ('1500m', '4:52.19'), 606)],\n [('control 100m', ('100m', '10.50'), 975),\n  ('control long jump', ('long_jump', '7.50'), 935),\n  ('control shot put', ('shot_put', '15.00'), 790),\n  ('control 1500m', ('1500m', '4:30.00'), 745),\n  ('boundary slower than base', ('100m', '18.50'), 0),\n  ('control high jump', ('high_jump', '2.01'), 813),\n  ('regression: track orientation', ('100m', '12.17'), 618),\n  ('regression: track orientation', ('100m', '18.95'), 0),\n  ('variant scenario 1', ('400m', '50.41'), 796),\n  ('variant scenario 2', ('1500m', '4:45.49'), 646)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-sports-scoring-decathlon-points-table-track-orientation","generated_at":"2026-09-29T14:50:29.795297+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Combined-event scoring tables are implemented from formulas with mixed units and orientations.","repair":"Use B - P for track events.","root_cause":"The track base is computed as P - B, like a field event.","sha256":"c634f2c0997c65d8da04ea85bbfd4a4f3a15da66feaa6fc2222f311d62336efe","title":"Track base computed in the field orientation · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.495,"exit_code":1,"observations":[{"actual":975,"check":"control 100m","expected":975,"passed":true},{"actual":935,"check":"control long jump","expected":935,"passed":true},{"actual":790,"check":"control shot put","expected":790,"passed":true},{"actual":745,"check":"control 1500m","expected":745,"passed":true},{"actual":7,"check":"boundary slower than base","expected":0,"passed":false},{"actual":813,"check":"control high jump","expected":813,"passed":true},{"actual":806,"check":"regression: track orientation","expected":806,"passed":true},{"actual":35,"check":"regression: track orientation","expected":0,"passed":false},{"actual":341,"check":"variant scenario 1","expected":341,"passed":true},{"actual":527,"check":"variant scenario 2","expected":527,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control 100m\", \"actual\": 975, \"expected\": 975, \"passed\": true}, {\"check\": \"control long jump\", \"actual\": 935, \"expected\": 935, \"passed\": true}, {\"check\": \"control shot put\", \"actual\": 790, \"expected\": 790, \"passed\": true}, {\"check\": \"control 1500m\", \"actual\": 745, \"expected\": 745, \"passed\": true}, {\"check\": \"boundary slower than base\", \"actual\": 7, \"expected\": 0, \"passed\": false}, {\"check\": \"control high jump\", \"actual\": 813, \"expected\": 813, \"passed\": true}, {\"check\": \"regression: track orientation\", \"actual\": 806, \"expected\": 806, \"passed\": true}, {\"check\": \"regression: track orientation\", \"actual\": 35, \"expected\": 0, \"passed\": false}, {\"check\": \"variant scenario 1\", \"actual\": 341, \"expected\": 341, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 527, \"expected\": 527, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.998,"exit_code":1,"observations":[{"actual":0,"check":"control 100m","expected":975,"passed":false},{"actual":935,"check":"control long jump","expected":935,"passed":true},{"actual":790,"check":"control shot put","expected":790,"passed":true},{"actual":0,"check":"control 1500m","expected":745,"passed":false},{"actual":7,"check":"boundary slower than base","expected":0,"passed":false},{"actual":813,"check":"control high jump","expected":813,"passed":true},{"actual":0,"check":"regression: track orientation","expected":806,"passed":false},{"actual":35,"check":"regression: track orientation","expected":0,"passed":false},{"actual":341,"check":"variant scenario 1","expected":341,"passed":true},{"actual":0,"check":"variant scenario 2","expected":527,"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control 100m\", \"actual\": 0, \"expected\": 975, \"passed\": false}, {\"check\": \"control long jump\", \"actual\": 935, \"expected\": 935, \"passed\": true}, {\"check\": \"control shot put\", \"actual\": 790, \"expected\": 790, \"passed\": true}, {\"check\": \"control 1500m\", \"actual\": 0, \"expected\": 745, \"passed\": false}, {\"check\": \"boundary slower than base\", \"actual\": 7, \"expected\": 0, \"passed\": false}, {\"check\": \"control high jump\", \"actual\": 813, \"expected\": 813, \"passed\": true}, {\"check\": \"regression: track orientation\", \"actual\": 0, \"expected\": 806, \"passed\": false}, {\"check\": \"regression: track orientation\", \"actual\": 35, \"expected\": 0, \"passed\": false}, {\"check\": \"variant scenario 1\", \"actual\": 341, \"expected\": 341, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 0, \"expected\": 527, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":39.068,"exit_code":0,"observations":[{"actual":975,"check":"control 100m","expected":975,"passed":true},{"actual":935,"check":"control long jump","expected":935,"passed":true},{"actual":790,"check":"control shot put","expected":790,"passed":true},{"actual":745,"check":"control 1500m","expected":745,"passed":true},{"actual":0,"check":"boundary slower than base","expected":0,"passed":true},{"actual":813,"check":"control high jump","expected":813,"passed":true},{"actual":806,"check":"regression: track orientation","expected":806,"passed":true},{"actual":0,"check":"regression: track orientation","expected":0,"passed":true},{"actual":341,"check":"variant scenario 1","expected":341,"passed":true},{"actual":527,"check":"variant scenario 2","expected":527,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control 100m\", \"actual\": 975, \"expected\": 975, \"passed\": true}, {\"check\": \"control long jump\", \"actual\": 935, \"expected\": 935, \"passed\": true}, {\"check\": \"control shot put\", \"actual\": 790, \"expected\": 790, \"passed\": true}, {\"check\": \"control 1500m\", \"actual\": 745, \"expected\": 745, \"passed\": true}, {\"check\": \"boundary slower than base\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"control high jump\", \"actual\": 813, \"expected\": 813, \"passed\": true}, {\"check\": \"regression: track orientation\", \"actual\": 806, \"expected\": 806, \"passed\": true}, {\"check\": \"regression: track orientation\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"variant scenario 1\", \"actual\": 341, \"expected\": 341, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 527, \"expected\": 527, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}