{"abstract":"Among equally narrow zones the one with fewest free positions is chosen.","category":"Warehouse slotting and bin packing","checks":8,"contract":"zones [[zone, min_c, max_c, free_positions]], product [min_c, max_c]. A zone is eligible when its whole range lies inside the product range (inclusive) and it has free positions. Prefer the narrowest zone range, then most free positions, then zone id. None -> \"REJECT\".","contract_signature":"zones, product","evaluation_group":"w2-warehouse-slotting-temp-zone","failed_approach":"Dropping the free-position tie-break falls back to zone id only.","family":"w2-warehouse-slotting-temp-zone-free-tiebreak","id":"FA-95221","implementations":{"attempt":{"sha256":"3cc1a8e6189981cc6d00160f7f51a5096526ec7ef4e01395c72c70d9e173e1e2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(zones, product):\n    pmin, pmax = product\n    best = None\n    for zid, zmin, zmax, free in zones:\n        if zmin < pmin or zmax > pmax:\n            continue\n        if free <= 0:\n            continue\n        key = (zmax - zmin, 0, zid)\n        if best is None or key < best:\n            best = key\n    return best[2] if best else 'REJECT'\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['generated mix 8', [[['Z0', -25, -18, 5]], [0, 4]], 'REJECT']], [['generated mix 27', [[['Z0', 2, 8, 1], ['Z1', 0, 8, 0], ['Z2', 0, 4, 1], ['Z3', 15, 25, 5], ['Z4', 15, 25, 1]], [15, 25]], 'Z3'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['generated mix 19', [[['Z0', -25, -18, 12]], [0, 8]], 'REJECT']], [['generated mix 63', [[['Z0', 0, 8, 0], ['Z1', 10, 30, 5], ['Z2', 0, 8, 1], ['Z3', 2, 8, 0], ['Z4', 10, 30, 12]], [10, 30]], 'Z4'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['generated mix 20', [[['Z0', 15, 25, 5], ['Z1', 10, 30, 1], ['Z2', 0, 4, 12], ['Z3', 15, 25, 0], ['Z4', 0, 4, 12]], [-30, -18]], 'REJECT'], ['generated mix 28', [[['Z0', 2, 8, 0]], [15, 25]], 'REJECT'], ['generated mix 36', [[['Z0', -30, -15, 0], ['Z1', 0, 4, 1], ['Z2', -25, -18, 12], ['Z3', 15, 25, 0]], [-5, 10]], 'Z1'], ['generated mix 44', [[['Z0', 0, 8, 12], ['Z1', 0, 4, 12]], [-25, -15]], 'REJECT']], [['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['generated mix 32', [[['Z0', 0, 4, 5]], [-5, 10]], 'Z0'], ['generated mix 40', [[['Z0', -25, -18, 0], ['Z1', 10, 30, 12], ['Z2', -25, -18, 12]], [0, 8]], 'REJECT'], ['generated mix 48', [[['Z0', -25, -18, 0], ['Z1', 15, 25, 0]], [0, 4]], 'REJECT'], ['generated mix 56', [[['Z0', -25, -18, 5]], [10, 30]], 'REJECT']], [['generated mix 43', [[['Z0', -25, -18, 0], ['Z1', -30, -15, 5], ['Z2', 0, 8, 12], ['Z3', 0, 8, 1]], [-5, 10]], 'Z2'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['generated mix 45', [[['Z0', 15, 25, 5], ['Z1', -30, -15, 5], ['Z2', 10, 30, 5], ['Z3', 0, 4, 5], ['Z4', 0, 8, 0]], [0, 8]], 'Z3'], ['generated mix 53', [[['Z0', 15, 25, 1], ['Z1', -30, -15, 12], ['Z2', 10, 30, 12], ['Z3', -30, -15, 1], ['Z4', 0, 4, 0]], [15, 25]], 'Z0']]]\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":"e4e55a1e3e7c7bdbfcff5bb657d3c4f40d40ffb0ff6a28a0affdac1dbd6220fd","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(zones, product):\n    pmin, pmax = product\n    best = None\n    for zid, zmin, zmax, free in zones:\n        if zmin < pmin or zmax > pmax:\n            continue\n        if free <= 0:\n            continue\n        key = (zmax - zmin, free, zid)\n        if best is None or key < best:\n            best = key\n    return best[2] if best else 'REJECT'\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['generated mix 8', [[['Z0', -25, -18, 5]], [0, 4]], 'REJECT']], [['generated mix 27', [[['Z0', 2, 8, 1], ['Z1', 0, 8, 0], ['Z2', 0, 4, 1], ['Z3', 15, 25, 5], ['Z4', 15, 25, 1]], [15, 25]], 'Z3'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['generated mix 19', [[['Z0', -25, -18, 12]], [0, 8]], 'REJECT']], [['generated mix 63', [[['Z0', 0, 8, 0], ['Z1', 10, 30, 5], ['Z2', 0, 8, 1], ['Z3', 2, 8, 0], ['Z4', 10, 30, 12]], [10, 30]], 'Z4'], ['exact match', [[['C', 2, 8, 3]], [2, 8]], 'C'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['generated mix 20', [[['Z0', 15, 25, 5], ['Z1', 10, 30, 1], ['Z2', 0, 4, 12], ['Z3', 15, 25, 0], ['Z4', 0, 4, 12]], [-30, -18]], 'REJECT'], ['generated mix 28', [[['Z0', 2, 8, 0]], [15, 25]], 'REJECT'], ['generated mix 36', [[['Z0', -30, -15, 0], ['Z1', 0, 4, 1], ['Z2', -25, -18, 12], ['Z3', 15, 25, 0]], [-5, 10]], 'Z1'], ['generated mix 44', [[['Z0', 0, 8, 12], ['Z1', 0, 4, 12]], [-25, -15]], 'REJECT']], [['generated mix 11', [[['Z0', 15, 25, 1], ['Z1', -25, -18, 5], ['Z2', 15, 25, 5]], [10, 30]], 'Z2'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['generated mix 32', [[['Z0', 0, 4, 5]], [-5, 10]], 'Z0'], ['generated mix 40', [[['Z0', -25, -18, 0], ['Z1', 10, 30, 12], ['Z2', -25, -18, 12]], [0, 8]], 'REJECT'], ['generated mix 48', [[['Z0', -25, -18, 0], ['Z1', 15, 25, 0]], [0, 4]], 'REJECT'], ['generated mix 56', [[['Z0', -25, -18, 5]], [10, 30]], 'REJECT']], [['generated mix 43', [[['Z0', -25, -18, 0], ['Z1', -30, -15, 5], ['Z2', 0, 8, 12], ['Z3', 0, 8, 1]], [-5, 10]], 'Z2'], ['tie most free', [[['A', 2, 8, 1], ['B', 2, 8, 4]], [0, 10]], 'B'], ['narrowest', [[['A', 0, 8, 5], ['B', 2, 6, 1]], [0, 8]], 'B'], ['frozen', [[['F', -25, -18, 2], ['C', 0, 4, 9]], [-30, -15]], 'F'], ['zone too wide', [[['C', 0, 8, 3]], [2, 8]], 'REJECT'], ['full zone', [[['A', 2, 8, 0], ['B', 0, 8, 1]], [0, 8]], 'B'], ['generated mix 45', [[['Z0', 15, 25, 5], ['Z1', -30, -15, 5], ['Z2', 10, 30, 5], ['Z3', 0, 4, 5], ['Z4', 0, 8, 0]], [0, 8]], 'Z3'], ['generated mix 53', [[['Z0', 15, 25, 1], ['Z1', -30, -15, 12], ['Z2', 10, 30, 12], ['Z3', -30, -15, 1], ['Z4', 0, 4, 0]], [15, 25]], 'Z0']]]\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 integer temperature ranges; no excursion or dwell time logic. 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-warehouse-slotting-temp-zone-free-tiebreak","generated_at":"2026-09-29T14:52:11.722625+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Cold chain putaway must keep product within its storage temperature range.","root_cause":"The free-position tie-break sorts ascending.","sha256":"44308f417f7700badb4c64fe427df7a31ed17d8c34546ef5575e74da35539fe5","title":"Temperature putaway: tie goes to fullest zone · 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":41.294,"exit_code":1,"observations":[{"actual":"A","check":"tie most free","expected":"B","passed":false},{"actual":"Z0","check":"generated mix 11","expected":"Z2","passed":false},{"actual":"C","check":"exact match","expected":"C","passed":true},{"actual":"B","check":"narrowest","expected":"B","passed":true},{"actual":"F","check":"frozen","expected":"F","passed":true},{"actual":"REJECT","check":"zone too wide","expected":"REJECT","passed":true},{"actual":"B","check":"full zone","expected":"B","passed":true},{"actual":"REJECT","check":"generated mix 8","expected":"REJECT","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tie most free\", \"actual\": \"A\", \"expected\": \"B\", \"passed\": false}, {\"check\": \"generated mix 11\", \"actual\": \"Z0\", \"expected\": \"Z2\", \"passed\": false}, {\"check\": \"exact match\", \"actual\": \"C\", \"expected\": \"C\", \"passed\": true}, {\"check\": \"narrowest\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"frozen\", \"actual\": \"F\", \"expected\": \"F\", \"passed\": true}, {\"check\": \"zone too wide\", \"actual\": \"REJECT\", \"expected\": \"REJECT\", \"passed\": true}, {\"check\": \"full zone\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"generated mix 8\", \"actual\": \"REJECT\", \"expected\": \"REJECT\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.653,"exit_code":1,"observations":[{"actual":"A","check":"tie most free","expected":"B","passed":false},{"actual":"Z0","check":"generated mix 11","expected":"Z2","passed":false},{"actual":"C","check":"exact match","expected":"C","passed":true},{"actual":"B","check":"narrowest","expected":"B","passed":true},{"actual":"F","check":"frozen","expected":"F","passed":true},{"actual":"REJECT","check":"zone too wide","expected":"REJECT","passed":true},{"actual":"B","check":"full zone","expected":"B","passed":true},{"actual":"REJECT","check":"generated mix 8","expected":"REJECT","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tie most free\", \"actual\": \"A\", \"expected\": \"B\", \"passed\": false}, {\"check\": \"generated mix 11\", \"actual\": \"Z0\", \"expected\": \"Z2\", \"passed\": false}, {\"check\": \"exact match\", \"actual\": \"C\", \"expected\": \"C\", \"passed\": true}, {\"check\": \"narrowest\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"frozen\", \"actual\": \"F\", \"expected\": \"F\", \"passed\": true}, {\"check\": \"zone too wide\", \"actual\": \"REJECT\", \"expected\": \"REJECT\", \"passed\": true}, {\"check\": \"full zone\", \"actual\": \"B\", \"expected\": \"B\", \"passed\": true}, {\"check\": \"generated mix 8\", \"actual\": \"REJECT\", \"expected\": \"REJECT\", \"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."}}