{"abstract":"Top-tier accounts are discounted at the entry tier rate.","category":"Shipping rate zone lookup","checks":8,"contract":"Cents. Weekly spend (dollars, may have cents) selects the discount: >= 5000 -> 25%, >= 2000 -> 18%, >= 500 -> 12%, else 0. Discount = list * pct / 100 rounded half up. Net is floored at the minimum charge, but never above the list rate. Return [pct, net].","evaluation_group":"w2-shipping-zone-contract-discount","failed_approach":"Sorting tiers ascending and stopping early picks the lowest matching tier.","family":"w2-shipping-zone-contract-discount-tier-scan","id":"FA-95676","implementations":{"attempt":{"sha256":"1e15e9f4d614c5b09e4a2a63f297d2712462bf3a5d1ac3df6e3b01aac8059b13","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(list_rate, spend, min_charge):\n    pct = 0\n    for limit, p in sorted(((5000, 25), (2000, 18), (500, 12))):\n        if spend >= limit:\n            pct = p\n            break\n    disc = (list_rate * pct + 50) // 100\n    net = list_rate - disc\n    floor_amt = min(min_charge, list_rate)\n    return [pct, max(net, floor_amt)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 8', [1025, 4999.5, 900], [18, 900]]], [['generated mix 8', [1025, 4999.5, 900], [18, 900]], ['generated mix 6', [2000, 4999.5, 500], [18, 1640]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['generated mix 11', [1000, 5000, 900], [25, 900]], ['generated mix 19', [1000, 2000, 900], [18, 900]]], [['generated mix 22', [700, 5000, 500], [25, 525]], ['generated mix 18', [700, 8000, 0], [25, 525]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 21', [1000, 500, 900], [12, 900]], ['generated mix 30', [1250, 8000, 500], [25, 937]]], [['generated mix 31', [700, 4999.5, 900], [18, 700]], ['generated mix 25', [700, 4999.5, 1200], [18, 700]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['generated mix 33', [1025, 1999.6, 500], [12, 902]], ['generated mix 41', [1025, 499.99, 0], [0, 1025]]], [['generated mix 49', [1000, 5000, 0], [25, 750]], ['generated mix 31', [700, 4999.5, 900], [18, 700]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['generated mix 43', [1333, 499.99, 500], [0, 1333]], ['generated mix 52', [1333, 1999.6, 500], [12, 1173]]]]\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":"0ba916b1379186581d4f3affb9b44f9927ce83088ecc6c57993b64497098ea49","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(list_rate, spend, min_charge):\n    pct = 0\n    for limit, p in ((5000, 25), (2000, 18), (500, 12)):\n        if spend >= limit:\n            pct = p\n    disc = (list_rate * pct + 50) // 100\n    net = list_rate - disc\n    floor_amt = min(min_charge, list_rate)\n    return [pct, max(net, floor_amt)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 8', [1025, 4999.5, 900], [18, 900]]], [['generated mix 8', [1025, 4999.5, 900], [18, 900]], ['generated mix 6', [2000, 4999.5, 500], [18, 1640]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['generated mix 11', [1000, 5000, 900], [25, 900]], ['generated mix 19', [1000, 2000, 900], [18, 900]]], [['generated mix 22', [700, 5000, 500], [25, 525]], ['generated mix 18', [700, 8000, 0], [25, 525]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 21', [1000, 500, 900], [12, 900]], ['generated mix 30', [1250, 8000, 500], [25, 937]]], [['generated mix 31', [700, 4999.5, 900], [18, 700]], ['generated mix 25', [700, 4999.5, 1200], [18, 700]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['generated mix 33', [1025, 1999.6, 500], [12, 902]], ['generated mix 41', [1025, 499.99, 0], [0, 1025]]], [['generated mix 49', [1000, 5000, 0], [25, 750]], ['generated mix 31', [700, 4999.5, 900], [18, 700]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['generated mix 43', [1333, 499.99, 500], [0, 1333]], ['generated mix 52', [1333, 1999.6, 500], [12, 1173]]]]\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":"40de88cc789c873fb1a1cb1b8be0386a11d9c2cb9dd5fc961c83817947fd1097","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(list_rate, spend, min_charge):\n    pct = 0\n    for limit, p in ((5000, 25), (2000, 18), (500, 12)):\n        if spend >= limit:\n            pct = p\n            break\n    disc = (list_rate * pct + 50) // 100\n    net = list_rate - disc\n    floor_amt = min(min_charge, list_rate)\n    return [pct, max(net, floor_amt)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 8', [1025, 4999.5, 900], [18, 900]]], [['generated mix 8', [1025, 4999.5, 900], [18, 900]], ['generated mix 6', [2000, 4999.5, 500], [18, 1640]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['generated mix 11', [1000, 5000, 900], [25, 900]], ['generated mix 19', [1000, 2000, 900], [18, 900]]], [['generated mix 22', [700, 5000, 500], [25, 525]], ['generated mix 18', [700, 8000, 0], [25, 525]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['half cent discount', [1025, 2000, 500], [18, 840]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['generated mix 21', [1000, 500, 900], [12, 900]], ['generated mix 30', [1250, 8000, 500], [25, 937]]], [['generated mix 31', [700, 4999.5, 900], [18, 700]], ['generated mix 25', [700, 4999.5, 1200], [18, 700]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['no discount', [1000, 100, 500], [0, 1000]], ['just under tier', [1000, 1999.6, 500], [12, 880]], ['generated mix 33', [1025, 1999.6, 500], [12, 902]], ['generated mix 41', [1025, 499.99, 0], [0, 1025]]], [['generated mix 49', [1000, 5000, 0], [25, 750]], ['generated mix 31', [700, 4999.5, 900], [18, 700]], ['minimum capped by list', [700, 6000, 900], [25, 700]], ['tier edge', [1000, 2000, 500], [18, 820]], ['top tier', [1000, 6000, 500], [25, 750]], ['minimum applies', [1000, 6000, 900], [25, 900]], ['generated mix 43', [1333, 499.99, 500], [0, 1333]], ['generated mix 52', [1333, 1999.6, 500], [12, 1173]]]]\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 tiers; no earned incentive periods. 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-contract-discount-tier-scan","generated_at":"2026-09-29T14:52:15.844270+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Contract pricing discounts list rates by volume tier subject to a minimum.","repair":"Scan tiers from highest threshold down and stop at the first match.","root_cause":"The tier scan does not stop at the first (highest) matching tier, so lower tiers overwrite it.","sha256":"478330c5349913f9a887343b4837e13fb597ce8e9309f6b4003f4422398f9238","title":"Contract discount: largest accounts get the smallest discount · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":37.823,"exit_code":1,"observations":[{"actual":[12,880],"check":"tier edge","expected":[18,820],"passed":false},{"actual":[12,880],"check":"top tier","expected":[25,750],"passed":false},{"actual":[12,880],"check":"just under tier","expected":[12,880],"passed":true},{"actual":[12,900],"check":"minimum applies","expected":[25,900],"passed":false},{"actual":[0,1000],"check":"no discount","expected":[0,1000],"passed":true},{"actual":[12,902],"check":"half cent discount","expected":[18,840],"passed":false},{"actual":[12,700],"check":"minimum capped by list","expected":[25,700],"passed":false},{"actual":[12,902],"check":"generated mix 8","expected":[18,900],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tier edge\", \"actual\": [12, 880], \"expected\": [18, 820], \"passed\": false}, {\"check\": \"top tier\", \"actual\": [12, 880], \"expected\": [25, 750], \"passed\": false}, {\"check\": \"just under tier\", \"actual\": [12, 880], \"expected\": [12, 880], \"passed\": true}, {\"check\": \"minimum applies\", \"actual\": [12, 900], \"expected\": [25, 900], \"passed\": false}, {\"check\": \"no discount\", \"actual\": [0, 1000], \"expected\": [0, 1000], \"passed\": true}, {\"check\": \"half cent discount\", \"actual\": [12, 902], \"expected\": [18, 840], \"passed\": false}, {\"check\": \"minimum capped by list\", \"actual\": [12, 700], \"expected\": [25, 700], \"passed\": false}, {\"check\": \"generated mix 8\", \"actual\": [12, 902], \"expected\": [18, 900], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.984,"exit_code":1,"observations":[{"actual":[12,880],"check":"tier edge","expected":[18,820],"passed":false},{"actual":[12,880],"check":"top tier","expected":[25,750],"passed":false},{"actual":[12,880],"check":"just under tier","expected":[12,880],"passed":true},{"actual":[12,900],"check":"minimum applies","expected":[25,900],"passed":false},{"actual":[0,1000],"check":"no discount","expected":[0,1000],"passed":true},{"actual":[12,902],"check":"half cent discount","expected":[18,840],"passed":false},{"actual":[12,700],"check":"minimum capped by list","expected":[25,700],"passed":false},{"actual":[12,902],"check":"generated mix 8","expected":[18,900],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tier edge\", \"actual\": [12, 880], \"expected\": [18, 820], \"passed\": false}, {\"check\": \"top tier\", \"actual\": [12, 880], \"expected\": [25, 750], \"passed\": false}, {\"check\": \"just under tier\", \"actual\": [12, 880], \"expected\": [12, 880], \"passed\": true}, {\"check\": \"minimum applies\", \"actual\": [12, 900], \"expected\": [25, 900], \"passed\": false}, {\"check\": \"no discount\", \"actual\": [0, 1000], \"expected\": [0, 1000], \"passed\": true}, {\"check\": \"half cent discount\", \"actual\": [12, 902], \"expected\": [18, 840], \"passed\": false}, {\"check\": \"minimum capped by list\", \"actual\": [12, 700], \"expected\": [25, 700], \"passed\": false}, {\"check\": \"generated mix 8\", \"actual\": [12, 902], \"expected\": [18, 900], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":36.894,"exit_code":0,"observations":[{"actual":[18,820],"check":"tier edge","expected":[18,820],"passed":true},{"actual":[25,750],"check":"top tier","expected":[25,750],"passed":true},{"actual":[12,880],"check":"just under tier","expected":[12,880],"passed":true},{"actual":[25,900],"check":"minimum applies","expected":[25,900],"passed":true},{"actual":[0,1000],"check":"no discount","expected":[0,1000],"passed":true},{"actual":[18,840],"check":"half cent discount","expected":[18,840],"passed":true},{"actual":[25,700],"check":"minimum capped by list","expected":[25,700],"passed":true},{"actual":[18,900],"check":"generated mix 8","expected":[18,900],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tier edge\", \"actual\": [18, 820], \"expected\": [18, 820], \"passed\": true}, {\"check\": \"top tier\", \"actual\": [25, 750], \"expected\": [25, 750], \"passed\": true}, {\"check\": \"just under tier\", \"actual\": [12, 880], \"expected\": [12, 880], \"passed\": true}, {\"check\": \"minimum applies\", \"actual\": [25, 900], \"expected\": [25, 900], \"passed\": true}, {\"check\": \"no discount\", \"actual\": [0, 1000], \"expected\": [0, 1000], \"passed\": true}, {\"check\": \"half cent discount\", \"actual\": [18, 840], \"expected\": [18, 840], \"passed\": true}, {\"check\": \"minimum capped by list\", \"actual\": [25, 700], \"expected\": [25, 700], \"passed\": true}, {\"check\": \"generated mix 8\", \"actual\": [18, 900], \"expected\": [18, 900], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}