{"abstract":"A stale physical column overwrites its partition value.","category":"Data systems","checks":7,"contract":"Read ordered file fragments [partition-values,physical-rows] under a projection of field names. Partition values override stale physical columns of the same name; unprojected fields disappear, missing fields become None, and physically empty fragments do not synthesize rows.","evaluation_group":"s3-data-systems-partition-column-injection","failed_approach":"Filling only absent columns leaves stale physical partition values authoritative.","family":"s3-data-systems-partition-column-injection-partition-precedence","id":"FA-45241","implementations":{"attempt":{"sha256":"c75cd3064de36ac1fde839abea4cb688ee734a3d9504197b923953808cd5cdc4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    try:\n        fragments,projection=d\n        out=[]\n        for partition,rows in fragments:\n            for row in rows:\n                merged=dict(row)\n                merged.update({k:v for k,v in partition.items() if k not in merged})\n                out.append([merged.get(name) for name in projection])\n        return out\n    except (IndexError, KeyError, ValueError, StopIteration) as exc:\n        return {\"representation_error\": type(exc).__name__}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nif N == 1:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 1}]]], ['v', 'p']]), [[1, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 1}]], [{'p': 'b'}, [{'v': 2}]]], ['p', 'v']]), [['a', 1], ['b', 2]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 1}]]], ['v', 'x']]), [[1, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 1}, {'v': 1}]]], ['v']]), [[1], [1]])\n    check('duplicate projection', solve([[[{}, [{'v': 1}]]], ['v', 'v']]), [[1, 1]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 2:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 2}]]], ['v', 'p']]), [[2, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 2}]], [{'p': 'b'}, [{'v': 3}]]], ['p', 'v']]), [['a', 2], ['b', 3]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 2}]]], ['v', 'x']]), [[2, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 2}, {'v': 2}]]], ['v']]), [[2], [2]])\n    check('duplicate projection', solve([[[{}, [{'v': 2}]]], ['v', 'v']]), [[2, 2]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 3:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 3}]]], ['v', 'p']]), [[3, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 3}]], [{'p': 'b'}, [{'v': 4}]]], ['p', 'v']]), [['a', 3], ['b', 4]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 3}]]], ['v', 'x']]), [[3, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 3}, {'v': 3}]]], ['v']]), [[3], [3]])\n    check('duplicate projection', solve([[[{}, [{'v': 3}]]], ['v', 'v']]), [[3, 3]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 4:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 4}]]], ['v', 'p']]), [[4, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 4}]], [{'p': 'b'}, [{'v': 5}]]], ['p', 'v']]), [['a', 4], ['b', 5]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 4}]]], ['v', 'x']]), [[4, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 4}, {'v': 4}]]], ['v']]), [[4], [4]])\n    check('duplicate projection', solve([[[{}, [{'v': 4}]]], ['v', 'v']]), [[4, 4]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 5:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 5}]]], ['v', 'p']]), [[5, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 5}]], [{'p': 'b'}, [{'v': 6}]]], ['p', 'v']]), [['a', 5], ['b', 6]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 5}]]], ['v', 'x']]), [[5, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 5}, {'v': 5}]]], ['v']]), [[5], [5]])\n    check('duplicate projection', solve([[[{}, [{'v': 5}]]], ['v', 'v']]), [[5, 5]])\n    check('no fragments', solve([[], ['v']]), [])\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":"d80ded8e5f3bfd7c1987ce55874126a5b1077a176b9aa3c7ccb5372c11e3306d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    try:\n        fragments,projection=d\n        out=[]\n        for partition,rows in fragments:\n            for row in rows:\n                merged=dict(row)\n                merged={**partition,**row}\n                out.append([merged.get(name) for name in projection])\n        return out\n    except (IndexError, KeyError, ValueError, StopIteration) as exc:\n        return {\"representation_error\": type(exc).__name__}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nif N == 1:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 1}]]], ['v', 'p']]), [[1, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 1}]], [{'p': 'b'}, [{'v': 2}]]], ['p', 'v']]), [['a', 1], ['b', 2]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 1}]]], ['v', 'x']]), [[1, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 1}, {'v': 1}]]], ['v']]), [[1], [1]])\n    check('duplicate projection', solve([[[{}, [{'v': 1}]]], ['v', 'v']]), [[1, 1]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 2:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 2}]]], ['v', 'p']]), [[2, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 2}]], [{'p': 'b'}, [{'v': 3}]]], ['p', 'v']]), [['a', 2], ['b', 3]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 2}]]], ['v', 'x']]), [[2, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 2}, {'v': 2}]]], ['v']]), [[2], [2]])\n    check('duplicate projection', solve([[[{}, [{'v': 2}]]], ['v', 'v']]), [[2, 2]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 3:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 3}]]], ['v', 'p']]), [[3, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 3}]], [{'p': 'b'}, [{'v': 4}]]], ['p', 'v']]), [['a', 3], ['b', 4]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 3}]]], ['v', 'x']]), [[3, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 3}, {'v': 3}]]], ['v']]), [[3], [3]])\n    check('duplicate projection', solve([[[{}, [{'v': 3}]]], ['v', 'v']]), [[3, 3]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 4:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 4}]]], ['v', 'p']]), [[4, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 4}]], [{'p': 'b'}, [{'v': 5}]]], ['p', 'v']]), [['a', 4], ['b', 5]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 4}]]], ['v', 'x']]), [[4, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 4}, {'v': 4}]]], ['v']]), [[4], [4]])\n    check('duplicate projection', solve([[[{}, [{'v': 4}]]], ['v', 'v']]), [[4, 4]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 5:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 5}]]], ['v', 'p']]), [[5, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 5}]], [{'p': 'b'}, [{'v': 6}]]], ['p', 'v']]), [['a', 5], ['b', 6]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 5}]]], ['v', 'x']]), [[5, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 5}, {'v': 5}]]], ['v']]), [[5], [5]])\n    check('duplicate projection', solve([[[{}, [{'v': 5}]]], ['v', 'v']]), [[5, 5]])\n    check('no fragments', solve([[], ['v']]), [])\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":"8773b6564c84ebcfbab64e61c1151d56863f1616de9bfd1e4574b43d2afae784","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    try:\n        fragments,projection=d\n        out=[]\n        for partition,rows in fragments:\n            for row in rows:\n                merged=dict(row)\n                merged.update(partition)\n                out.append([merged.get(name) for name in projection])\n        return out\n    except (IndexError, KeyError, ValueError, StopIteration) as exc:\n        return {\"representation_error\": type(exc).__name__}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nif N == 1:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 1}]]], ['v', 'p']]), [[1, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 1}]], [{'p': 'b'}, [{'v': 2}]]], ['p', 'v']]), [['a', 1], ['b', 2]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 1}]]], ['v', 'x']]), [[1, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 1}, {'v': 1}]]], ['v']]), [[1], [1]])\n    check('duplicate projection', solve([[[{}, [{'v': 1}]]], ['v', 'v']]), [[1, 1]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 2:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 2}]]], ['v', 'p']]), [[2, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 2}]], [{'p': 'b'}, [{'v': 3}]]], ['p', 'v']]), [['a', 2], ['b', 3]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 2}]]], ['v', 'x']]), [[2, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 2}, {'v': 2}]]], ['v']]), [[2], [2]])\n    check('duplicate projection', solve([[[{}, [{'v': 2}]]], ['v', 'v']]), [[2, 2]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 3:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 3}]]], ['v', 'p']]), [[3, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 3}]], [{'p': 'b'}, [{'v': 4}]]], ['p', 'v']]), [['a', 3], ['b', 4]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 3}]]], ['v', 'x']]), [[3, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 3}, {'v': 3}]]], ['v']]), [[3], [3]])\n    check('duplicate projection', solve([[[{}, [{'v': 3}]]], ['v', 'v']]), [[3, 3]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 4:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 4}]]], ['v', 'p']]), [[4, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 4}]], [{'p': 'b'}, [{'v': 5}]]], ['p', 'v']]), [['a', 4], ['b', 5]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 4}]]], ['v', 'x']]), [[4, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 4}, {'v': 4}]]], ['v']]), [[4], [4]])\n    check('duplicate projection', solve([[[{}, [{'v': 4}]]], ['v', 'v']]), [[4, 4]])\n    check('no fragments', solve([[], ['v']]), [])\nelif N == 5:\n    check('partition overrides', solve([[[{'p': 'new'}, [{'p': 'old', 'v': 5}]]], ['v', 'p']]), [[5, 'new']])\n    check('multiple fragments', solve([[[{'p': 'a'}, [{'v': 5}]], [{'p': 'b'}, [{'v': 6}]]], ['p', 'v']]), [['a', 5], ['b', 6]])\n    check('empty fragment', solve([[[{'p': 'a'}, []]], ['p']]), [])\n    check('missing projected', solve([[[{}, [{'v': 5}]]], ['v', 'x']]), [[5, None]])\n    check('duplicate rows', solve([[[{}, [{'v': 5}, {'v': 5}]]], ['v']]), [[5], [5]])\n    check('duplicate projection', solve([[[{}, [{'v': 5}]]], ['v', 'v']]), [[5, 5]])\n    check('no fragments', solve([[], ['v']]), [])\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":"Offline stipulated semantics over valid small inputs; no performance, concurrency, or production-engine conformance claim. 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":"s3-data-systems-partition-column-injection-partition-precedence","generated_at":"2026-09-29T14:44:20.167150+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A bounded deterministic data engine model makes representation and changelog faults reproducible.","repair":"Preserve the stated physical representation and operation order: Read ordered file fragments [partition-values,physical-rows] under a projection of field names. Partition values override stale physical columns of the same name; unprojected fields disappear, missing fields become None, and physically empty fragments do not synthesize rows.","root_cause":"partition-column-injection: A stale physical column overwrites its partition value.","sha256":"088e6c8566846a42608c1452a0321bc9f49157cdc0f852dd65d51daed77c205a","title":"A stale physical column overwrites its partition value · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":46.442,"exit_code":1,"observations":[{"actual":[[1,"old"]],"check":"partition overrides","expected":[[1,"new"]],"passed":false},{"actual":[["a",1],["b",2]],"check":"multiple fragments","expected":[["a",1],["b",2]],"passed":true},{"actual":[],"check":"empty fragment","expected":[],"passed":true},{"actual":[[1,null]],"check":"missing projected","expected":[[1,null]],"passed":true},{"actual":[[1],[1]],"check":"duplicate rows","expected":[[1],[1]],"passed":true},{"actual":[[1,1]],"check":"duplicate projection","expected":[[1,1]],"passed":true},{"actual":[],"check":"no fragments","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"partition overrides\", \"actual\": [[1, \"old\"]], \"expected\": [[1, \"new\"]], \"passed\": false}, {\"check\": \"multiple fragments\", \"actual\": [[\"a\", 1], [\"b\", 2]], \"expected\": [[\"a\", 1], [\"b\", 2]], \"passed\": true}, {\"check\": \"empty fragment\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"missing projected\", \"actual\": [[1, null]], \"expected\": [[1, null]], \"passed\": true}, {\"check\": \"duplicate rows\", \"actual\": [[1], [1]], \"expected\": [[1], [1]], \"passed\": true}, {\"check\": \"duplicate projection\", \"actual\": [[1, 1]], \"expected\": [[1, 1]], \"passed\": true}, {\"check\": \"no fragments\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":46.581,"exit_code":1,"observations":[{"actual":[[1,"old"]],"check":"partition overrides","expected":[[1,"new"]],"passed":false},{"actual":[["a",1],["b",2]],"check":"multiple fragments","expected":[["a",1],["b",2]],"passed":true},{"actual":[],"check":"empty fragment","expected":[],"passed":true},{"actual":[[1,null]],"check":"missing projected","expected":[[1,null]],"passed":true},{"actual":[[1],[1]],"check":"duplicate rows","expected":[[1],[1]],"passed":true},{"actual":[[1,1]],"check":"duplicate projection","expected":[[1,1]],"passed":true},{"actual":[],"check":"no fragments","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"partition overrides\", \"actual\": [[1, \"old\"]], \"expected\": [[1, \"new\"]], \"passed\": false}, {\"check\": \"multiple fragments\", \"actual\": [[\"a\", 1], [\"b\", 2]], \"expected\": [[\"a\", 1], [\"b\", 2]], \"passed\": true}, {\"check\": \"empty fragment\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"missing projected\", \"actual\": [[1, null]], \"expected\": [[1, null]], \"passed\": true}, {\"check\": \"duplicate rows\", \"actual\": [[1], [1]], \"expected\": [[1], [1]], \"passed\": true}, {\"check\": \"duplicate projection\", \"actual\": [[1, 1]], \"expected\": [[1, 1]], \"passed\": true}, {\"check\": \"no fragments\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":47.445,"exit_code":0,"observations":[{"actual":[[1,"new"]],"check":"partition overrides","expected":[[1,"new"]],"passed":true},{"actual":[["a",1],["b",2]],"check":"multiple fragments","expected":[["a",1],["b",2]],"passed":true},{"actual":[],"check":"empty fragment","expected":[],"passed":true},{"actual":[[1,null]],"check":"missing projected","expected":[[1,null]],"passed":true},{"actual":[[1],[1]],"check":"duplicate rows","expected":[[1],[1]],"passed":true},{"actual":[[1,1]],"check":"duplicate projection","expected":[[1,1]],"passed":true},{"actual":[],"check":"no fragments","expected":[],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"partition overrides\", \"actual\": [[1, \"new\"]], \"expected\": [[1, \"new\"]], \"passed\": true}, {\"check\": \"multiple fragments\", \"actual\": [[\"a\", 1], [\"b\", 2]], \"expected\": [[\"a\", 1], [\"b\", 2]], \"passed\": true}, {\"check\": \"empty fragment\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"missing projected\", \"actual\": [[1, null]], \"expected\": [[1, null]], \"passed\": true}, {\"check\": \"duplicate rows\", \"actual\": [[1], [1]], \"expected\": [[1], [1]], \"passed\": true}, {\"check\": \"duplicate projection\", \"actual\": [[1, 1]], \"expected\": [[1, 1]], \"passed\": true}, {\"check\": \"no fragments\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}