{"abstract":"Retirees cross the inclusion thresholds with far less other income.","category":"Tax bracket computation","checks":7,"contract":"solve(agi, exempt_interest, benefits, status): stipulated benefit inclusion. Provisional income PI = agi + exempt_interest + benefits/2. Base amounts (b1, b2): single (25000, 34000), mfj (32000, 44000), mfs (0, 0). If PI <= b1 nothing is included; if PI <= b2, include min(benefits/2, (PI - b1)/2); otherwise include min(0.85*benefits, 0.85*(PI - b2) + min(benefits/2, (b2 - b1)/2)). Return the included amount rounded down to whole dollars.","contract_signature":"agi, exempt_interest, benefits, status","evaluation_group":"w2-tax_bracket_computation-benefit-inclusion-tiers","failed_approach":"Adding half the benefits but omitting tax-exempt interest understates provisional income.","family":"w2-tax_bracket_computation-benefit-inclusion-tiers-provisional-income","id":"FA-62746","implementations":{"attempt":{"sha256":"914baabfc939a3a55fdd846205da872942bb3389de062b8d8061d9c73c44f905","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(agi, exempt_interest, benefits, status):\n    b1, b2 = {'single': (25000, 34000), 'mfj': (32000, 44000), 'mfs': (0, 0)}[status]\n    B = Fraction(benefits)\n    pi = agi + B / 2\n    if pi <= b1: t = Fraction(0)\n    elif pi <= b2: t = min(B / 2, (pi - b1) / 2)\n    else: t = min(B * 85 / 100, (pi - b2) * 85 / 100 + min(B / 2, Fraction(b2 - b1, 2)))\n    return int(t)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[('regression provisional-income 1', (20000, 0, 12000, 'single'), 500),\n  ('regression provisional-income 2', (30000, 1000, 20000, 'mfj'), 4500),\n  ('partial repair guard 2', (10000, 1000, 40000, 'single'), 3000),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000), ('control: below base', (10000, 0, 10000, 'single'), 0),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000)],\n [('regression provisional-income 1', (10000, 1000, 40000, 'single'), 3000),\n  ('regression provisional-income 2', (20000, 0, 20000, 'mfj'), 0),\n  ('partial repair guard 1', (30000, 1000, 8000, 'single'), 4850),\n  ('partial repair guard 2', (20000, 1000, 45562, 'single'), 12813),\n  ('control: joint with exempt interest', (30000, 1000, 20000, 'mfj'), 4500),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000)],\n [('regression provisional-income 1', (0, 5000, 40000, 'mfj'), 0),\n  ('regression provisional-income 2', (45000, 0, 30934, 'mfj'), 19996),\n  ('partial repair guard 1', (30000, 1000, 42192, 'mfj'), 12881),\n  ('partial repair guard 2', (0, 1000, 20000, 'mfs'), 9350),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000),\n  ('control: first tier', (20000, 0, 12000, 'single'), 500),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000),\n  ('control: below base', (10000, 0, 10000, 'single'), 0)],\n [('regression provisional-income 1', (30000, 1000, 8000, 'single'), 4850),\n  ('regression provisional-income 2', (20000, 1000, 45562, 'single'), 12813),\n  ('partial repair guard 1', (45000, 1000, 40000, 'single'), 31700),\n  ('partial repair guard 2', (0, 5000, 20000, 'mfs'), 12750), ('control: below base', (10000, 0, 10000, 'single'), 0),\n  ('control: joint with exempt interest', (30000, 1000, 20000, 'mfj'), 4500),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000)],\n [('regression provisional-income 1', (30000, 1000, 42192, 'mfj'), 12881),\n  ('regression provisional-income 2', (20000, 0, 40000, 'mfj'), 4000),\n  ('partial repair guard 1', (20000, 5000, 20000, 'mfj'), 1500),\n  ('partial repair guard 2', (30000, 1000, 25710, 'single'), 12876),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000),\n  ('control: first tier', (20000, 0, 12000, 'single'), 500),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000)]]\nfor label, args, expected in cases[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":"ef8967b8a2d22f3fddb7b3438e747282e2565dfee42a05b19c174d5ea9b4f991","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(agi, exempt_interest, benefits, status):\n    b1, b2 = {'single': (25000, 34000), 'mfj': (32000, 44000), 'mfs': (0, 0)}[status]\n    B = Fraction(benefits)\n    pi = agi + exempt_interest + B\n    if pi <= b1: t = Fraction(0)\n    elif pi <= b2: t = min(B / 2, (pi - b1) / 2)\n    else: t = min(B * 85 / 100, (pi - b2) * 85 / 100 + min(B / 2, Fraction(b2 - b1, 2)))\n    return int(t)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[('regression provisional-income 1', (20000, 0, 12000, 'single'), 500),\n  ('regression provisional-income 2', (30000, 1000, 20000, 'mfj'), 4500),\n  ('partial repair guard 2', (10000, 1000, 40000, 'single'), 3000),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000), ('control: below base', (10000, 0, 10000, 'single'), 0),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000)],\n [('regression provisional-income 1', (10000, 1000, 40000, 'single'), 3000),\n  ('regression provisional-income 2', (20000, 0, 20000, 'mfj'), 0),\n  ('partial repair guard 1', (30000, 1000, 8000, 'single'), 4850),\n  ('partial repair guard 2', (20000, 1000, 45562, 'single'), 12813),\n  ('control: joint with exempt interest', (30000, 1000, 20000, 'mfj'), 4500),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000)],\n [('regression provisional-income 1', (0, 5000, 40000, 'mfj'), 0),\n  ('regression provisional-income 2', (45000, 0, 30934, 'mfj'), 19996),\n  ('partial repair guard 1', (30000, 1000, 42192, 'mfj'), 12881),\n  ('partial repair guard 2', (0, 1000, 20000, 'mfs'), 9350),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000),\n  ('control: first tier', (20000, 0, 12000, 'single'), 500),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000),\n  ('control: below base', (10000, 0, 10000, 'single'), 0)],\n [('regression provisional-income 1', (30000, 1000, 8000, 'single'), 4850),\n  ('regression provisional-income 2', (20000, 1000, 45562, 'single'), 12813),\n  ('partial repair guard 1', (45000, 1000, 40000, 'single'), 31700),\n  ('partial repair guard 2', (0, 5000, 20000, 'mfs'), 12750), ('control: below base', (10000, 0, 10000, 'single'), 0),\n  ('control: joint with exempt interest', (30000, 1000, 20000, 'mfj'), 4500),\n  ('control: separate filer', (5000, 0, 8000, 'mfs'), 6800),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000)],\n [('regression provisional-income 1', (30000, 1000, 42192, 'mfj'), 12881),\n  ('regression provisional-income 2', (20000, 0, 40000, 'mfj'), 4000),\n  ('partial repair guard 1', (20000, 5000, 20000, 'mfj'), 1500),\n  ('partial repair guard 2', (30000, 1000, 25710, 'single'), 12876),\n  ('control: small benefit first tier', (28000, 0, 2000, 'single'), 1000),\n  ('control: large income', (150000, 5000, 40000, 'mfj'), 34000),\n  ('control: first tier', (20000, 0, 12000, 'single'), 500),\n  ('control: second tier', (40000, 0, 20000, 'single'), 17000)]]\nfor label, args, expected in cases[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, bounded teaching model with a stipulated toy contract; it makes no claim of conformance to any real regulation, standard, or institution's 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-tax_bracket_computation-benefit-inclusion-tiers-provisional-income","generated_at":"2026-09-29T14:47:07.555615+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Tax computations hinge on which slice, threshold, ordering and rounding rule applies at each step; a misplaced boundary silently misstates liabilities.","root_cause":"PI adds benefits rather than benefits/2.","sha256":"cf040789ece47ecd76bc9558bb27f09c907d946bb7c19d84c1459c7375e3af0d","title":"Provisional income counts the full benefit instead of half · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":42.843,"exit_code":1,"observations":[{"actual":500,"check":"regression provisional-income 1","expected":500,"passed":true},{"actual":4000,"check":"regression provisional-income 2","expected":4500,"passed":false},{"actual":2500,"check":"partial repair guard 2","expected":3000,"passed":false},{"actual":17000,"check":"control: second tier","expected":17000,"passed":true},{"actual":0,"check":"control: below base","expected":0,"passed":true},{"actual":6800,"check":"control: separate filer","expected":6800,"passed":true},{"actual":1000,"check":"control: small benefit first tier","expected":1000,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression provisional-income 1\", \"actual\": 500, \"expected\": 500, \"passed\": true}, {\"check\": \"regression provisional-income 2\", \"actual\": 4000, \"expected\": 4500, \"passed\": false}, {\"check\": \"partial repair guard 2\", \"actual\": 2500, \"expected\": 3000, \"passed\": false}, {\"check\": \"control: second tier\", \"actual\": 17000, \"expected\": 17000, \"passed\": true}, {\"check\": \"control: below base\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"control: separate filer\", \"actual\": 6800, \"expected\": 6800, \"passed\": true}, {\"check\": \"control: small benefit first tier\", \"actual\": 1000, \"expected\": 1000, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.68,"exit_code":1,"observations":[{"actual":3500,"check":"regression provisional-income 1","expected":500,"passed":false},{"actual":11950,"check":"regression provisional-income 2","expected":4500,"passed":false},{"actual":18950,"check":"partial repair guard 2","expected":3000,"passed":false},{"actual":17000,"check":"control: second tier","expected":17000,"passed":true},{"actual":0,"check":"control: below base","expected":0,"passed":true},{"actual":6800,"check":"control: separate filer","expected":6800,"passed":true},{"actual":1000,"check":"control: small benefit first tier","expected":1000,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression provisional-income 1\", \"actual\": 3500, \"expected\": 500, \"passed\": false}, {\"check\": \"regression provisional-income 2\", \"actual\": 11950, \"expected\": 4500, \"passed\": false}, {\"check\": \"partial repair guard 2\", \"actual\": 18950, \"expected\": 3000, \"passed\": false}, {\"check\": \"control: second tier\", \"actual\": 17000, \"expected\": 17000, \"passed\": true}, {\"check\": \"control: below base\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"control: separate filer\", \"actual\": 6800, \"expected\": 6800, \"passed\": true}, {\"check\": \"control: small benefit first tier\", \"actual\": 1000, \"expected\": 1000, \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}