{"abstract":"October cards are treated as older than February cards when months are not zero padded.","category":"Shipping rate zone lookup","checks":8,"contract":"cards [[card_id, effective_from, expires or None, version]] with dates \"Y-M-D\" that may lack zero padding. A card applies when effective_from <= ship date < expires. Choose the latest effective_from, then highest version, then smallest card_id. None -> \"NO_CARD\".","contract_signature":"cards, ship_date","evaluation_group":"w2-shipping-zone-card-dating","failed_approach":"Removing hyphens still compares unpadded digit strings lexically.","family":"w2-shipping-zone-card-dating-date-parsing","id":"FA-95486","implementations":{"attempt":{"sha256":"fc1ebf50343803a7477545d383989431a27329863163b3ade81663b053deaefc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(cards, ship_date):\n    def d(s):\n        return s.replace('-', '')\n    ship = d(ship_date)\n    best = None\n    for cid, frm, exp, ver in cards:\n        if d(frm) > ship:\n            continue\n        if exp is not None and ship >= d(exp):\n            continue\n        key = (d(frm), ver)\n        if best is None or key > best[0] or (key == best[0] and cid < best[1]):\n            best = (key, cid)\n    return best[1] if best else 'NO_CARD'\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['generated mix 5', [[['R0', '2026-11-1', None, 1], ['R1', '2025-12-31', '2026-11-1', 2]], '2026-3-15'], 'R1'], ['generated mix 10', [[['R0', '2025-12-31', '2026-2-1', 1], ['R1', '2026-10-1', '2026-11-1', 3], ['R2', '2026-11-1', None, 1], ['R3', '2026-01-15', None, 3], ['R4', '2026-1-5', '2026-10-1', 3]], '2026-2-1'], 'R3'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 7', [[['R0', '2026-10-1', None, 2]], '2025-12-31'], 'NO_CARD'], ['generated mix 16', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-9-30', '2026-10-1', 3]], '2026-10-15'], 'R0']], [['generated mix 30', [[['R0', '2026-1-5', '2026-2-1', 1], ['R1', '2026-11-1', '2026-2-1', 1], ['R2', '2025-12-31', '2026-2-1', 2], ['R3', '2026-10-1', '2026-11-1', 3]], '2026-01-15'], 'R0'], ['generated mix 22', [[['R0', '2026-2-1', '2026-2-1', 2], ['R1', '2026-9-30', '2026-2-1', 1], ['R2', '2026-9-30', '2026-11-1', 2], ['R3', '2026-2-1', '2026-2-1', 1], ['R4', '2026-2-1', '2026-10-1', 3]], '2026-3-15'], 'R4'], ['version tie', [[['A', '2026-1-1', None, 1], ['B', '2026-1-1', None, 2]], '2026-5-1'], 'B'], ['future only', [[['A', '2027-1-1', None, 1]], '2026-5-1'], 'NO_CARD'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 9', [[['R0', '2026-01-15', '2026-2-1', 1], ['R1', '2025-12-31', '2026-2-1', 3], ['R2', '2026-9-30', '2026-10-1', 3], ['R3', '2026-10-1', '2026-2-1', 1]], '2025-12-31'], 'R1'], ['generated mix 17', [[['R0', '2026-2-1', '2026-11-1', 2], ['R1', '2026-01-15', '2026-10-1', 3], ['R2', '2026-10-1', None, 2]], '2026-11-1'], 'R2'], ['generated mix 26', [[['R0', '2026-2-1', None, 2], ['R1', '2025-12-31', '2026-11-1', 3], ['R2', '2025-12-31', None, 2], ['R3', '2026-9-30', None, 2]], '2026-3-15'], 'R0']], [['generated mix 41', [[['R0', '2026-01-15', '2026-11-1', 2], ['R1', '2026-10-1', '2026-10-1', 3], ['R2', '2026-2-1', None, 3]], '2026-11-1'], 'R2'], ['generated mix 36', [[['R0', '2026-01-15', '2026-2-1', 3], ['R1', '2026-11-1', '2026-2-1', 3], ['R2', '2026-01-15', '2026-10-1', 3], ['R3', '2026-9-30', '2026-2-1', 2], ['R4', '2026-2-1', '2026-11-1', 3]], '2026-3-15'], 'R4'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['generated mix 20', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-11-1', None, 3], ['R2', '2026-9-30', None, 3], ['R3', '2025-12-31', None, 1]], '2026-2-1'], 'R3'], ['generated mix 28', [[['R0', '2026-2-1', '2026-10-1', 1]], '2026-2-1'], 'R0'], ['generated mix 37', [[['R0', '2026-9-30', '2026-10-1', 2], ['R1', '2026-2-1', None, 1], ['R2', '2026-1-5', None, 2], ['R3', '2026-11-1', '2026-11-1', 1], ['R4', '2026-1-5', '2026-2-1', 3]], '2026-11-1'], 'R1']], [['generated mix 53', [[['R0', '2026-11-1', '2026-2-1', 3], ['R1', '2026-10-1', None, 3], ['R2', '2026-2-1', None, 1], ['R3', '2026-1-5', '2026-2-1', 3], ['R4', '2026-9-30', None, 1]], '2026-11-1'], 'R1'], ['generated mix 47', [[['R0', '2026-2-1', '2026-11-1', 3], ['R1', '2025-12-31', '2026-10-1', 1], ['R2', '2026-10-1', '2026-11-1', 1], ['R3', '2026-10-1', '2026-10-1', 2]], '2026-2-1'], 'R0'], ['version tie', [[['A', '2026-1-1', None, 1], ['B', '2026-1-1', None, 2]], '2026-5-1'], 'B'], ['future only', [[['A', '2027-1-1', None, 1]], '2026-5-1'], 'NO_CARD'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 31', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-01-15', None, 3], ['R2', '2026-10-1', None, 3], ['R3', '2026-10-1', '2026-2-1', 2], ['R4', '2026-11-1', '2026-11-1', 2]], '2026-10-15'], 'R2'], ['generated mix 39', [[['R0', '2025-12-31', '2026-10-1', 1], ['R1', '2026-01-15', None, 2], ['R2', '2026-1-5', '2026-2-1', 1], ['R3', '2026-1-5', None, 2]], '2026-11-1'], 'R1'], ['generated mix 48', [[['R0', '2026-10-1', None, 1], ['R1', '2026-9-30', '2026-2-1', 3], ['R2', '2026-2-1', None, 3], ['R3', '2025-12-31', '2026-2-1', 3]], '2026-3-15'], 'R2']], [['generated mix 78', [[['R0', '2026-9-30', '2026-10-1', 2], ['R1', '2025-12-31', None, 1], ['R2', '2026-9-30', '2026-2-1', 2], ['R3', '2026-10-1', None, 2], ['R4', '2026-01-15', '2026-10-1', 1]], '2026-2-1'], 'R4'], ['generated mix 54', [[['R0', '2026-1-5', None, 3], ['R1', '2026-2-1', None, 3], ['R2', '2026-1-5', None, 3]], '2026-10-15'], 'R1'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['generated mix 42', [[['R0', '2026-2-1', '2026-2-1', 2]], '2026-2-1'], 'NO_CARD'], ['generated mix 50', [[['R0', '2026-1-5', None, 2], ['R1', '2026-9-30', '2026-2-1', 1], ['R2', '2026-11-1', None, 2], ['R3', '2026-01-15', '2026-2-1', 2]], '2026-9-30'], 'R0'], ['generated mix 59', [[['R0', '2025-12-31', None, 2]], '2026-11-1'], 'R0']]]\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":"96642a50b1122b2de748e46d3684e7cebff72a082fd1d07388d4c13a0ff3276c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(cards, ship_date):\n    def d(s):\n        return s\n    ship = d(ship_date)\n    best = None\n    for cid, frm, exp, ver in cards:\n        if d(frm) > ship:\n            continue\n        if exp is not None and ship >= d(exp):\n            continue\n        key = (d(frm), ver)\n        if best is None or key > best[0] or (key == best[0] and cid < best[1]):\n            best = (key, cid)\n    return best[1] if best else 'NO_CARD'\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['generated mix 5', [[['R0', '2026-11-1', None, 1], ['R1', '2025-12-31', '2026-11-1', 2]], '2026-3-15'], 'R1'], ['generated mix 10', [[['R0', '2025-12-31', '2026-2-1', 1], ['R1', '2026-10-1', '2026-11-1', 3], ['R2', '2026-11-1', None, 1], ['R3', '2026-01-15', None, 3], ['R4', '2026-1-5', '2026-10-1', 3]], '2026-2-1'], 'R3'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 7', [[['R0', '2026-10-1', None, 2]], '2025-12-31'], 'NO_CARD'], ['generated mix 16', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-9-30', '2026-10-1', 3]], '2026-10-15'], 'R0']], [['generated mix 30', [[['R0', '2026-1-5', '2026-2-1', 1], ['R1', '2026-11-1', '2026-2-1', 1], ['R2', '2025-12-31', '2026-2-1', 2], ['R3', '2026-10-1', '2026-11-1', 3]], '2026-01-15'], 'R0'], ['generated mix 22', [[['R0', '2026-2-1', '2026-2-1', 2], ['R1', '2026-9-30', '2026-2-1', 1], ['R2', '2026-9-30', '2026-11-1', 2], ['R3', '2026-2-1', '2026-2-1', 1], ['R4', '2026-2-1', '2026-10-1', 3]], '2026-3-15'], 'R4'], ['version tie', [[['A', '2026-1-1', None, 1], ['B', '2026-1-1', None, 2]], '2026-5-1'], 'B'], ['future only', [[['A', '2027-1-1', None, 1]], '2026-5-1'], 'NO_CARD'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 9', [[['R0', '2026-01-15', '2026-2-1', 1], ['R1', '2025-12-31', '2026-2-1', 3], ['R2', '2026-9-30', '2026-10-1', 3], ['R3', '2026-10-1', '2026-2-1', 1]], '2025-12-31'], 'R1'], ['generated mix 17', [[['R0', '2026-2-1', '2026-11-1', 2], ['R1', '2026-01-15', '2026-10-1', 3], ['R2', '2026-10-1', None, 2]], '2026-11-1'], 'R2'], ['generated mix 26', [[['R0', '2026-2-1', None, 2], ['R1', '2025-12-31', '2026-11-1', 3], ['R2', '2025-12-31', None, 2], ['R3', '2026-9-30', None, 2]], '2026-3-15'], 'R0']], [['generated mix 41', [[['R0', '2026-01-15', '2026-11-1', 2], ['R1', '2026-10-1', '2026-10-1', 3], ['R2', '2026-2-1', None, 3]], '2026-11-1'], 'R2'], ['generated mix 36', [[['R0', '2026-01-15', '2026-2-1', 3], ['R1', '2026-11-1', '2026-2-1', 3], ['R2', '2026-01-15', '2026-10-1', 3], ['R3', '2026-9-30', '2026-2-1', 2], ['R4', '2026-2-1', '2026-11-1', 3]], '2026-3-15'], 'R4'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['generated mix 20', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-11-1', None, 3], ['R2', '2026-9-30', None, 3], ['R3', '2025-12-31', None, 1]], '2026-2-1'], 'R3'], ['generated mix 28', [[['R0', '2026-2-1', '2026-10-1', 1]], '2026-2-1'], 'R0'], ['generated mix 37', [[['R0', '2026-9-30', '2026-10-1', 2], ['R1', '2026-2-1', None, 1], ['R2', '2026-1-5', None, 2], ['R3', '2026-11-1', '2026-11-1', 1], ['R4', '2026-1-5', '2026-2-1', 3]], '2026-11-1'], 'R1']], [['generated mix 53', [[['R0', '2026-11-1', '2026-2-1', 3], ['R1', '2026-10-1', None, 3], ['R2', '2026-2-1', None, 1], ['R3', '2026-1-5', '2026-2-1', 3], ['R4', '2026-9-30', None, 1]], '2026-11-1'], 'R1'], ['generated mix 47', [[['R0', '2026-2-1', '2026-11-1', 3], ['R1', '2025-12-31', '2026-10-1', 1], ['R2', '2026-10-1', '2026-11-1', 1], ['R3', '2026-10-1', '2026-10-1', 2]], '2026-2-1'], 'R0'], ['version tie', [[['A', '2026-1-1', None, 1], ['B', '2026-1-1', None, 2]], '2026-5-1'], 'B'], ['future only', [[['A', '2027-1-1', None, 1]], '2026-5-1'], 'NO_CARD'], ['expiry exclusive', [[['A', '2026-1-1', '2026-3-1', 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'B'], ['generated mix 31', [[['R0', '2026-9-30', '2026-11-1', 1], ['R1', '2026-01-15', None, 3], ['R2', '2026-10-1', None, 3], ['R3', '2026-10-1', '2026-2-1', 2], ['R4', '2026-11-1', '2026-11-1', 2]], '2026-10-15'], 'R2'], ['generated mix 39', [[['R0', '2025-12-31', '2026-10-1', 1], ['R1', '2026-01-15', None, 2], ['R2', '2026-1-5', '2026-2-1', 1], ['R3', '2026-1-5', None, 2]], '2026-11-1'], 'R1'], ['generated mix 48', [[['R0', '2026-10-1', None, 1], ['R1', '2026-9-30', '2026-2-1', 3], ['R2', '2026-2-1', None, 3], ['R3', '2025-12-31', '2026-2-1', 3]], '2026-3-15'], 'R2']], [['generated mix 78', [[['R0', '2026-9-30', '2026-10-1', 2], ['R1', '2025-12-31', None, 1], ['R2', '2026-9-30', '2026-2-1', 2], ['R3', '2026-10-1', None, 2], ['R4', '2026-01-15', '2026-10-1', 1]], '2026-2-1'], 'R4'], ['generated mix 54', [[['R0', '2026-1-5', None, 3], ['R1', '2026-2-1', None, 3], ['R2', '2026-1-5', None, 3]], '2026-10-15'], 'R1'], ['unpadded month', [[['A', '2026-2-1', None, 1], ['B', '2026-10-1', None, 1]], '2026-10-15'], 'B'], ['effective same day', [[['A', '2026-3-1', None, 1], ['B', '2025-1-1', None, 1]], '2026-3-1'], 'A'], ['id tie', [[['Z', '2026-1-1', None, 2], ['M', '2026-1-1', None, 2]], '2026-5-1'], 'M'], ['generated mix 42', [[['R0', '2026-2-1', '2026-2-1', 2]], '2026-2-1'], 'NO_CARD'], ['generated mix 50', [[['R0', '2026-1-5', None, 2], ['R1', '2026-9-30', '2026-2-1', 1], ['R2', '2026-11-1', None, 2], ['R3', '2026-01-15', '2026-2-1', 2]], '2026-9-30'], 'R0'], ['generated mix 59', [[['R0', '2025-12-31', None, 2]], '2026-11-1'], 'R0']]]\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 date format and selection policy. 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-card-dating-date-parsing","generated_at":"2026-09-29T14:52:14.136986+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Carriers publish dated rate cards; each shipment must use the card in force on its ship date.","root_cause":"Effective and expiry dates are compared as strings.","sha256":"ea4477856563697c57ac82a68937b9f0925a01b052a28dfe4cf260b11a5830e6","title":"Rate card: dates compared as text · 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":39.593,"exit_code":1,"observations":[{"actual":"R0","check":"generated mix 5","expected":"R1","passed":false},{"actual":"R2","check":"generated mix 10","expected":"R3","passed":false},{"actual":"B","check":"unpadded month","expected":"B","passed":true},{"actual":"A","check":"effective same day","expected":"A","passed":true},{"actual":"M","check":"id tie","expected":"M","passed":true},{"actual":"B","check":"expiry exclusive","expected":"B","passed":true},{"actual":"NO_CARD","check":"generated mix 7","expected":"NO_CARD","passed":true},{"actual":"NO_CARD","check":"generated mix 16","expected":"R0","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"generated mix 5\", \"actual\": \"R0\", \"expected\": \"R1\", \"passed\": false}, {\"check\": \"generated mix 10\", \"actual\": \"R2\", \"expected\": \"R3\", \"passed\": false}, {\"check\": \"unpadded month\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"effective same day\", \"actual\": \"A\", \"expected\": \"A\", \"passed\": true}, {\"check\": \"id tie\", \"actual\": \"M\", \"expected\": \"M\", \"passed\": true}, {\"check\": \"expiry exclusive\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"generated mix 7\", \"actual\": \"NO_CARD\", \"expected\": \"NO_CARD\", \"passed\": true}, {\"check\": \"generated mix 16\", \"actual\": \"NO_CARD\", \"expected\": \"R0\", \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":42.492,"exit_code":1,"observations":[{"actual":"R0","check":"generated mix 5","expected":"R1","passed":false},{"actual":"R2","check":"generated mix 10","expected":"R3","passed":false},{"actual":"B","check":"unpadded month","expected":"B","passed":true},{"actual":"A","check":"effective same day","expected":"A","passed":true},{"actual":"M","check":"id tie","expected":"M","passed":true},{"actual":"B","check":"expiry exclusive","expected":"B","passed":true},{"actual":"NO_CARD","check":"generated mix 7","expected":"NO_CARD","passed":true},{"actual":"NO_CARD","check":"generated mix 16","expected":"R0","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"generated mix 5\", \"actual\": \"R0\", \"expected\": \"R1\", \"passed\": false}, {\"check\": \"generated mix 10\", \"actual\": \"R2\", \"expected\": \"R3\", \"passed\": false}, {\"check\": \"unpadded month\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"effective same day\", \"actual\": \"A\", \"expected\": \"A\", \"passed\": true}, {\"check\": \"id tie\", \"actual\": \"M\", \"expected\": \"M\", \"passed\": true}, {\"check\": \"expiry exclusive\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"generated mix 7\", \"actual\": \"NO_CARD\", \"expected\": \"NO_CARD\", \"passed\": true}, {\"check\": \"generated mix 16\", \"actual\": \"NO_CARD\", \"expected\": \"R0\", \"passed\": false}], \"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."}}