FAILURE MAP
← Case archive

FA-48631 / Delimited text / Open access

Row labels are reordered independently from their data · case 01

A structured table violates the declared record or column contract.

Verified by executionVariant 1 · 8 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

Row labels are reordered independently from their data.

VERIFIED REPAIR

Preserve the named invariant at the faulty decision: return {'labels':labels,'values':values}

Unsuccessful approach: The alternate implementation still violates the same declared invariant: row labels are reordered independently from their data.

Case contract

Decode comma rows with header label followed by data cells. First field is a row label; labels must be unique, including empty label. Return labels and values separately. All data rows have the width specified in data.width; preserve label spelling and row order.

Why this case matters

Delimited interchange needs explicit framing, schema and field semantics at ingestion and emission boundaries.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
def _vary(value):
    if value == '@END': return 3 + 4*N
    if isinstance(value, str): return value.replace('@', 'cell' * N)
    if isinstance(value, list): return [_vary(x) for x in value]
    if isinstance(value, dict): return {_vary(k): _vary(v) for k,v in value.items()}
    return value
N = 1
observations = []
def solve(data):
    labels,values=[],[]
    for line in data['lines']:
        cells=line.split(',')
        label,row=cells[0],cells[1:]
        if len(row)!=data['width'] or label in labels: return None
        labels.append(label); values.append(row)
    return {'labels':sorted(labels),'values':values}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('rows', solve(_vary({'width': 2, 'lines': ['r,@,x', 'q,y,z']})), _vary({'labels': ['r', 'q'], 'values': [['@', 'x'], ['y', 'z']]}))
check('empty label', solve(_vary({'width': 1, 'lines': [',@']})), _vary({'labels': [''], 'values': [['@']]}))
check('duplicate', solve(_vary({'width': 1, 'lines': ['r,@', 'r,z']})), _vary(None))
check('bad width', solve(_vary({'width': 2, 'lines': ['r,@']})), _vary(None))
check('spaces', solve(_vary({'width': 1, 'lines': [' r ,@']})), _vary({'labels': [' r '], 'values': [['@']]}))
check('uppercase label', solve(_vary({'width': 1, 'lines': ['ROW,@']})), _vary({'labels': ['ROW'], 'values': [['@']]}))
check('zero width', solve(_vary({'width': 0, 'lines': ['@']})), _vary({'labels': ['@'], 'values': [[]]}))
check('empty table', solve(_vary({'width': 2, 'lines': []})), _vary({'labels': [], 'values': []}))
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
rows{'labels': ['q', 'r'], 'values': [['cell', 'x'], ['y', 'z']]}{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}Failed
empty label{'labels': [''], 'values': [['cell']]}{'labels': [''], 'values': [['cell']]}Passed
duplicateNoneNonePassed
bad widthNoneNonePassed
spaces{'labels': [' r '], 'values': [['cell']]}{'labels': [' r '], 'values': [['cell']]}Passed
uppercase label{'labels': ['ROW'], 'values': [['cell']]}{'labels': ['ROW'], 'values': [['cell']]}Passed
zero width{'labels': ['cell'], 'values': [[]]}{'labels': ['cell'], 'values': [[]]}Passed
empty table{'labels': [], 'values': []}{'labels': [], 'values': []}Passed

SHA-256 / 8232a38e9f9a8d7b11b082b44a10e00a259b50794eb0416d52507cfd956bb972

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
def _vary(value):
    if value == '@END': return 3 + 4*N
    if isinstance(value, str): return value.replace('@', 'cell' * N)
    if isinstance(value, list): return [_vary(x) for x in value]
    if isinstance(value, dict): return {_vary(k): _vary(v) for k,v in value.items()}
    return value
N = 1
observations = []
def solve(data):
    labels,values=[],[]
    for line in data['lines']:
        cells=line.split(',')
        label,row=cells[0],cells[1:]
        if len(row)!=data['width'] or label in labels: return None
        labels.append(label); values.append(row)
    return {'labels':list(reversed(labels)),'values':values}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('rows', solve(_vary({'width': 2, 'lines': ['r,@,x', 'q,y,z']})), _vary({'labels': ['r', 'q'], 'values': [['@', 'x'], ['y', 'z']]}))
check('empty label', solve(_vary({'width': 1, 'lines': [',@']})), _vary({'labels': [''], 'values': [['@']]}))
check('duplicate', solve(_vary({'width': 1, 'lines': ['r,@', 'r,z']})), _vary(None))
check('bad width', solve(_vary({'width': 2, 'lines': ['r,@']})), _vary(None))
check('spaces', solve(_vary({'width': 1, 'lines': [' r ,@']})), _vary({'labels': [' r '], 'values': [['@']]}))
check('uppercase label', solve(_vary({'width': 1, 'lines': ['ROW,@']})), _vary({'labels': ['ROW'], 'values': [['@']]}))
check('zero width', solve(_vary({'width': 0, 'lines': ['@']})), _vary({'labels': ['@'], 'values': [[]]}))
check('empty table', solve(_vary({'width': 2, 'lines': []})), _vary({'labels': [], 'values': []}))
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
rows{'labels': ['q', 'r'], 'values': [['cell', 'x'], ['y', 'z']]}{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}Failed
empty label{'labels': [''], 'values': [['cell']]}{'labels': [''], 'values': [['cell']]}Passed
duplicateNoneNonePassed
bad widthNoneNonePassed
spaces{'labels': [' r '], 'values': [['cell']]}{'labels': [' r '], 'values': [['cell']]}Passed
uppercase label{'labels': ['ROW'], 'values': [['cell']]}{'labels': ['ROW'], 'values': [['cell']]}Passed
zero width{'labels': ['cell'], 'values': [[]]}{'labels': ['cell'], 'values': [[]]}Passed
empty table{'labels': [], 'values': []}{'labels': [], 'values': []}Passed

SHA-256 / 496209850a9bc451bc579feea520b5e6f79418a5c740b3cbef3053fd12f5a14b

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
def _vary(value):
    if value == '@END': return 3 + 4*N
    if isinstance(value, str): return value.replace('@', 'cell' * N)
    if isinstance(value, list): return [_vary(x) for x in value]
    if isinstance(value, dict): return {_vary(k): _vary(v) for k,v in value.items()}
    return value
N = 1
observations = []
def solve(data):
    labels,values=[],[]
    for line in data['lines']:
        cells=line.split(',')
        label,row=cells[0],cells[1:]
        if len(row)!=data['width'] or label in labels: return None
        labels.append(label); values.append(row)
    return {'labels':labels,'values':values}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('rows', solve(_vary({'width': 2, 'lines': ['r,@,x', 'q,y,z']})), _vary({'labels': ['r', 'q'], 'values': [['@', 'x'], ['y', 'z']]}))
check('empty label', solve(_vary({'width': 1, 'lines': [',@']})), _vary({'labels': [''], 'values': [['@']]}))
check('duplicate', solve(_vary({'width': 1, 'lines': ['r,@', 'r,z']})), _vary(None))
check('bad width', solve(_vary({'width': 2, 'lines': ['r,@']})), _vary(None))
check('spaces', solve(_vary({'width': 1, 'lines': [' r ,@']})), _vary({'labels': [' r '], 'values': [['@']]}))
check('uppercase label', solve(_vary({'width': 1, 'lines': ['ROW,@']})), _vary({'labels': ['ROW'], 'values': [['@']]}))
check('zero width', solve(_vary({'width': 0, 'lines': ['@']})), _vary({'labels': ['@'], 'values': [[]]}))
check('empty table', solve(_vary({'width': 2, 'lines': []})), _vary({'labels': [], 'values': []}))
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
rows{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}Passed
empty label{'labels': [''], 'values': [['cell']]}{'labels': [''], 'values': [['cell']]}Passed
duplicateNoneNonePassed
bad widthNoneNonePassed
spaces{'labels': [' r '], 'values': [['cell']]}{'labels': [' r '], 'values': [['cell']]}Passed
uppercase label{'labels': ['ROW'], 'values': [['cell']]}{'labels': ['ROW'], 'values': [['cell']]}Passed
zero width{'labels': ['cell'], 'values': [[]]}{'labels': ['cell'], 'values': [[]]}Passed
empty table{'labels': [], 'values': []}{'labels': [], 'values': []}Passed

SHA-256 / d4d64c60355cb6d645931883a24f21bf18b7c69886a583849427e352f3679919

Verification & scope

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.

Observations recorded using Python 3.12.14 at 2026-09-29T14:44:52.536579+00:00.

Case digest / ded592d54f8a9bf4cd605f409e569247d4d00e3f458e5a7d4b1b085e10d3f543