{"abstract":"A structured table violates the declared record or column contract.","category":"Delimited text","checks":7,"contract":"Import three-column comma rows with exact modes strict, skip, or collect. Width failures are 1-based source record positions. Strict returns {error:position}; skip omits bad rows; collect returns valid rows and errors containing position and original cells. Header is supplied separately and not counted.","contract_signature":"data","evaluation_group":"s3-delimited-text-row-quarantine","failed_approach":"Joining cells into one value loses the original field boundaries.","family":"s3-delimited-text-row-quarantine-quarantine-original","id":"FA-47981","implementations":{"attempt":{"sha256":"7ac7443f468ff693ae5f36a66d091933187681e86aae57f44a72d5c9f4be7741","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\ndef _vary(value):\n    if value == '@END': return 3 + 4*N\n    if isinstance(value, str): return value.replace('@', 'cell' * N)\n    if isinstance(value, list): return [_vary(x) for x in value]\n    if isinstance(value, dict): return {_vary(k): _vary(v) for k,v in value.items()}\n    return value\nN = 1\nobservations = []\ndef solve(data):\n    rows, errors = [], []\n    for position,line in enumerate(data['lines'], 1):\n        cells = line.split(',')\n        if len(cells) != 3:\n            if data['mode'] == 'strict': return {'error':position}\n            if data['mode'] == 'collect': errors.append([position, [','.join(cells)]])\n            continue\n        rows.append(cells)\n    return {'rows':rows, 'errors':errors}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('collect', solve(_vary({'mode': 'collect', 'lines': ['@,a,b', 'x,y', 'c,d,e', 'z']})), _vary({'rows': [['@', 'a', 'b'], ['c', 'd', 'e']], 'errors': [[2, ['x', 'y']], [4, ['z']]]}))\ncheck('strict', solve(_vary({'mode': 'strict', 'lines': ['@,a,b', 'x,y', 'c,d,e']})), _vary({'error': 2}))\ncheck('skip', solve(_vary({'mode': 'skip', 'lines': ['x,y', '@,a,b', 'z']})), _vary({'rows': [['@', 'a', 'b']], 'errors': []}))\ncheck('normal', solve(_vary({'mode': 'strict', 'lines': ['@,a,b']})), _vary({'rows': [['@', 'a', 'b']], 'errors': []}))\ncheck('empty', solve(_vary({'mode': 'collect', 'lines': []})), _vary({'rows': [], 'errors': []}))\ncheck('empty cells', solve(_vary({'mode': 'collect', 'lines': [',,']})), _vary({'rows': [['', '', '']], 'errors': []}))\ncheck('wide', solve(_vary({'mode': 'collect', 'lines': ['a,b,c,d']})), _vary({'rows': [], 'errors': [[1, ['a', 'b', 'c', 'd']]]}))\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":"0a4c0fe7f00285109bf6cf6fb3deee910a020d15b0142241ada534ee82832711","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\ndef _vary(value):\n    if value == '@END': return 3 + 4*N\n    if isinstance(value, str): return value.replace('@', 'cell' * N)\n    if isinstance(value, list): return [_vary(x) for x in value]\n    if isinstance(value, dict): return {_vary(k): _vary(v) for k,v in value.items()}\n    return value\nN = 1\nobservations = []\ndef solve(data):\n    rows, errors = [], []\n    for position,line in enumerate(data['lines'], 1):\n        cells = line.split(',')\n        if len(cells) != 3:\n            if data['mode'] == 'strict': return {'error':position}\n            if data['mode'] == 'collect': errors.append([position, cells[:3]])\n            continue\n        rows.append(cells)\n    return {'rows':rows, 'errors':errors}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('collect', solve(_vary({'mode': 'collect', 'lines': ['@,a,b', 'x,y', 'c,d,e', 'z']})), _vary({'rows': [['@', 'a', 'b'], ['c', 'd', 'e']], 'errors': [[2, ['x', 'y']], [4, ['z']]]}))\ncheck('strict', solve(_vary({'mode': 'strict', 'lines': ['@,a,b', 'x,y', 'c,d,e']})), _vary({'error': 2}))\ncheck('skip', solve(_vary({'mode': 'skip', 'lines': ['x,y', '@,a,b', 'z']})), _vary({'rows': [['@', 'a', 'b']], 'errors': []}))\ncheck('normal', solve(_vary({'mode': 'strict', 'lines': ['@,a,b']})), _vary({'rows': [['@', 'a', 'b']], 'errors': []}))\ncheck('empty', solve(_vary({'mode': 'collect', 'lines': []})), _vary({'rows': [], 'errors': []}))\ncheck('empty cells', solve(_vary({'mode': 'collect', 'lines': [',,']})), _vary({'rows': [['', '', '']], 'errors': []}))\ncheck('wide', solve(_vary({'mode': 'collect', 'lines': ['a,b,c,d']})), _vary({'rows': [], 'errors': [[1, ['a', 'b', 'c', 'd']]]}))\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":"Deterministic bounded in-memory model. No claim of complete CSV or external format conformance. 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-delimited-text-row-quarantine-quarantine-original","generated_at":"2026-09-29T14:44:46.693247+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Delimited interchange needs explicit framing, schema and field semantics at ingestion and emission boundaries.","root_cause":"Diagnostic storage truncates the original malformed row.","sha256":"a55774fe5a9f075940f0316fb1de91ec4c04c3fe1edeb1cc04a8abdc9e6b4a12","title":"Error records lose surplus cells before reporting · 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":43.897,"exit_code":1,"observations":[{"actual":{"errors":[[2,["x,y"]],[4,["z"]]],"rows":[["cell","a","b"],["c","d","e"]]},"check":"collect","expected":{"errors":[[2,["x","y"]],[4,["z"]]],"rows":[["cell","a","b"],["c","d","e"]]},"passed":false},{"actual":{"error":2},"check":"strict","expected":{"error":2},"passed":true},{"actual":{"errors":[],"rows":[["cell","a","b"]]},"check":"skip","expected":{"errors":[],"rows":[["cell","a","b"]]},"passed":true},{"actual":{"errors":[],"rows":[["cell","a","b"]]},"check":"normal","expected":{"errors":[],"rows":[["cell","a","b"]]},"passed":true},{"actual":{"errors":[],"rows":[]},"check":"empty","expected":{"errors":[],"rows":[]},"passed":true},{"actual":{"errors":[],"rows":[["","",""]]},"check":"empty cells","expected":{"errors":[],"rows":[["","",""]]},"passed":true},{"actual":{"errors":[[1,["a,b,c,d"]]],"rows":[]},"check":"wide","expected":{"errors":[[1,["a","b","c","d"]]],"rows":[]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"collect\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"], [\"c\", \"d\", \"e\"]], \"errors\": [[2, [\"x,y\"]], [4, [\"z\"]]]}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"], [\"c\", \"d\", \"e\"]], \"errors\": [[2, [\"x\", \"y\"]], [4, [\"z\"]]]}, \"passed\": false}, {\"check\": \"strict\", \"actual\": {\"error\": 2}, \"expected\": {\"error\": 2}, \"passed\": true}, {\"check\": \"skip\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"normal\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"empty\", \"actual\": {\"rows\": [], \"errors\": []}, \"expected\": {\"rows\": [], \"errors\": []}, \"passed\": true}, {\"check\": \"empty cells\", \"actual\": {\"rows\": [[\"\", \"\", \"\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"\", \"\", \"\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"wide\", \"actual\": {\"rows\": [], \"errors\": [[1, [\"a,b,c,d\"]]]}, \"expected\": {\"rows\": [], \"errors\": [[1, [\"a\", \"b\", \"c\", \"d\"]]]}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.213,"exit_code":1,"observations":[{"actual":{"errors":[[2,["x","y"]],[4,["z"]]],"rows":[["cell","a","b"],["c","d","e"]]},"check":"collect","expected":{"errors":[[2,["x","y"]],[4,["z"]]],"rows":[["cell","a","b"],["c","d","e"]]},"passed":true},{"actual":{"error":2},"check":"strict","expected":{"error":2},"passed":true},{"actual":{"errors":[],"rows":[["cell","a","b"]]},"check":"skip","expected":{"errors":[],"rows":[["cell","a","b"]]},"passed":true},{"actual":{"errors":[],"rows":[["cell","a","b"]]},"check":"normal","expected":{"errors":[],"rows":[["cell","a","b"]]},"passed":true},{"actual":{"errors":[],"rows":[]},"check":"empty","expected":{"errors":[],"rows":[]},"passed":true},{"actual":{"errors":[],"rows":[["","",""]]},"check":"empty cells","expected":{"errors":[],"rows":[["","",""]]},"passed":true},{"actual":{"errors":[[1,["a","b","c"]]],"rows":[]},"check":"wide","expected":{"errors":[[1,["a","b","c","d"]]],"rows":[]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"collect\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"], [\"c\", \"d\", \"e\"]], \"errors\": [[2, [\"x\", \"y\"]], [4, [\"z\"]]]}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"], [\"c\", \"d\", \"e\"]], \"errors\": [[2, [\"x\", \"y\"]], [4, [\"z\"]]]}, \"passed\": true}, {\"check\": \"strict\", \"actual\": {\"error\": 2}, \"expected\": {\"error\": 2}, \"passed\": true}, {\"check\": \"skip\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"normal\", \"actual\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"cell\", \"a\", \"b\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"empty\", \"actual\": {\"rows\": [], \"errors\": []}, \"expected\": {\"rows\": [], \"errors\": []}, \"passed\": true}, {\"check\": \"empty cells\", \"actual\": {\"rows\": [[\"\", \"\", \"\"]], \"errors\": []}, \"expected\": {\"rows\": [[\"\", \"\", \"\"]], \"errors\": []}, \"passed\": true}, {\"check\": \"wide\", \"actual\": {\"rows\": [], \"errors\": [[1, [\"a\", \"b\", \"c\"]]]}, \"expected\": {\"rows\": [], \"errors\": [[1, [\"a\", \"b\", \"c\", \"d\"]]]}, \"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."}}