{"abstract":"Local zone 1 shipments are charged the zone 8 rate.","category":"Shipping rate zone lookup","checks":8,"contract":"rows [[max_lb, [cents for zones 2..8]]] ascending; weight is rounded up to whole lb (minimum 1) and uses the first row with max_lb >= weight. Zone 1 is billed as zone 2; zones outside 1-8 -> \"NO_RATE\"; a None cell -> \"NO_RATE\". Above the last row: last row rate + (lb over last max) * over[zone].","contract_signature":"weight, zone, rows, over","evaluation_group":"w2-shipping-zone-rate-table","failed_approach":"Shifting all columns by one rates every zone one zone higher.","family":"w2-shipping-zone-rate-table-zone-one-column","id":"FA-95406","implementations":{"attempt":{"sha256":"438ac89ad3f9eed4c0a6ff1e0aa155317c06aa69dcb60c594a279512949771af","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(weight, zone, rows, over):\n    if zone < 1 or zone > 8:\n        return 'NO_RATE'\n    w = max(1, math.ceil(weight))\n    col = zone - 1\n    for max_lb, rates in rows:\n        if w <= max_lb:\n            r = rates[col]\n            return r if r is not None else 'NO_RATE'\n    last_lb, last_rates = rows[-1]\n    return last_rates[col] + (w - last_lb) * over[col]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['generated mix 8', [10, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2000], ['generated mix 18', [10.2, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2630], ['generated mix 30', [9, 0, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE']], [['generated mix 43', [0.3, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['generated mix 6', [10, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2000], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['bad zone', [4, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 13', [1, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 850], ['generated mix 21', [1.5, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1250], ['generated mix 33', [11, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2630]], [['generated mix 66', [5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1100], ['generated mix 14', [1, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1100], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['generated mix 25', [10, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['generated mix 36', [10, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['generated mix 44', [9, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500]], [['generated mix 27', [0.3, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['generated mix 20', [11, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1760], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['bad zone', [4, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 40', [1.5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 48', [5.5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500], ['generated mix 56', [9, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500]], [['generated mix 53', [2, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 35', [10, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2450], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['generated mix 50', [2.01, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1650], ['generated mix 59', [2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 67', [2, 0, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE']]]\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":"e5e9f9f7a5cdce38e593d7b96b1030d55980d2d8339b31396bf70a6ecbd2a1d3","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(weight, zone, rows, over):\n    if zone < 1 or zone > 8:\n        return 'NO_RATE'\n    w = max(1, math.ceil(weight))\n    col = zone - 2\n    for max_lb, rates in rows:\n        if w <= max_lb:\n            r = rates[col]\n            return r if r is not None else 'NO_RATE'\n    last_lb, last_rates = rows[-1]\n    return last_rates[col] + (w - last_lb) * over[col]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['generated mix 8', [10, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2000], ['generated mix 18', [10.2, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2630], ['generated mix 30', [9, 0, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE']], [['generated mix 43', [0.3, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['generated mix 6', [10, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2000], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['bad zone', [4, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 13', [1, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 850], ['generated mix 21', [1.5, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1250], ['generated mix 33', [11, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2630]], [['generated mix 66', [5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1100], ['generated mix 14', [1, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1100], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['generated mix 25', [10, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['generated mix 36', [10, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['generated mix 44', [9, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500]], [['generated mix 27', [0.3, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['generated mix 20', [11, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1760], ['over table', [12, 5, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2280], ['bad zone', [4, 9, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE'], ['fraction up', [1.5, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 40', [1.5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 48', [5.5, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500], ['generated mix 56', [9, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1500]], [['generated mix 53', [2, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 35', [10, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 2450], ['bracket edge', [2, 3, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 960], ['zone 1 as 2', [1, 1, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 800], ['fraction over table', [10.2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1600], ['generated mix 50', [2.01, 7, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 1650], ['generated mix 59', [2, 2, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 900], ['generated mix 67', [2, 0, [[1, [800, 850, 900, 950, 1000, 1100, 1200]], [2, [900, 960, 1020, 1080, 1140, 1250, 1400]], [5, [1100, 1200, 1300, 1400, 1500, 1650, None]], [10, [1500, 1650, 1800, 2000, 2200, 2450, 2800]]], [100, 110, 120, 140, 160, 180, 210]], 'NO_RATE']]]\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":"Stipulated table layout and increments. 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-shipping-zone-rate-table-zone-one-column","generated_at":"2026-09-29T14:52:13.338470+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Zone rate tables convert billable weight and zone into a base charge.","root_cause":"Zone 1 is not folded into zone 2, so its column index becomes -1.","sha256":"d4f2d0a2b0fefd6fda9c418116e8d289bcb922c87959e2348e5d407a6d51f42d","title":"Rate table: zone 1 indexes the last column · 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":44.258,"exit_code":1,"observations":[{"actual":800,"check":"zone 1 as 2","expected":800,"passed":true},{"actual":960,"check":"fraction up","expected":900,"passed":false},{"actual":1020,"check":"bracket edge","expected":960,"passed":false},{"actual":1760,"check":"fraction over table","expected":1600,"passed":false},{"actual":2520,"check":"over table","expected":2280,"passed":false},{"actual":2200,"check":"generated mix 8","expected":2000,"passed":false},{"actual":3010,"check":"generated mix 18","expected":2630,"passed":false},{"actual":"NO_RATE","check":"generated mix 30","expected":"NO_RATE","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"zone 1 as 2\", \"actual\": 800, \"expected\": 800, \"passed\": true}, {\"check\": \"fraction up\", \"actual\": 960, \"expected\": 900, \"passed\": false}, {\"check\": \"bracket edge\", \"actual\": 1020, \"expected\": 960, \"passed\": false}, {\"check\": \"fraction over table\", \"actual\": 1760, \"expected\": 1600, \"passed\": false}, {\"check\": \"over table\", \"actual\": 2520, \"expected\": 2280, \"passed\": false}, {\"check\": \"generated mix 8\", \"actual\": 2200, \"expected\": 2000, \"passed\": false}, {\"check\": \"generated mix 18\", \"actual\": 3010, \"expected\": 2630, \"passed\": false}, {\"check\": \"generated mix 30\", \"actual\": \"NO_RATE\", \"expected\": \"NO_RATE\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.779,"exit_code":1,"observations":[{"actual":1200,"check":"zone 1 as 2","expected":800,"passed":false},{"actual":900,"check":"fraction up","expected":900,"passed":true},{"actual":960,"check":"bracket edge","expected":960,"passed":true},{"actual":1600,"check":"fraction over table","expected":1600,"passed":true},{"actual":2280,"check":"over table","expected":2280,"passed":true},{"actual":2000,"check":"generated mix 8","expected":2000,"passed":true},{"actual":2630,"check":"generated mix 18","expected":2630,"passed":true},{"actual":"NO_RATE","check":"generated mix 30","expected":"NO_RATE","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"zone 1 as 2\", \"actual\": 1200, \"expected\": 800, \"passed\": false}, {\"check\": \"fraction up\", \"actual\": 900, \"expected\": 900, \"passed\": true}, {\"check\": \"bracket edge\", \"actual\": 960, \"expected\": 960, \"passed\": true}, {\"check\": \"fraction over table\", \"actual\": 1600, \"expected\": 1600, \"passed\": true}, {\"check\": \"over table\", \"actual\": 2280, \"expected\": 2280, \"passed\": true}, {\"check\": \"generated mix 8\", \"actual\": 2000, \"expected\": 2000, \"passed\": true}, {\"check\": \"generated mix 18\", \"actual\": 2630, \"expected\": 2630, \"passed\": true}, {\"check\": \"generated mix 30\", \"actual\": \"NO_RATE\", \"expected\": \"NO_RATE\", \"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."}}