FAILURE MAP
← Case archive

FA-48616 / Delimited text / Open access

Row-label extraction uses the last data cell · 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-label extraction uses the last data cell.

VERIFIED REPAIR

Preserve the named invariant at the faulty decision: label,row=cells[0],cells[1:]

Unsuccessful approach: The alternate implementation still violates the same declared invariant: row-label extraction uses the last data cell.

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[-1],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': ['x', 'z'], 'values': [['r', 'cell'], ['q', 'y']]}{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}Failed
empty label{'labels': ['cell'], 'values': [['']]}{'labels': [''], 'values': [['cell']]}Failed
duplicate{'labels': ['cell', 'z'], 'values': [['r'], ['r']]}NoneFailed
bad widthNoneNonePassed
spaces{'labels': ['cell'], 'values': [[' r ']]}{'labels': [' r '], 'values': [['cell']]}Failed
uppercase label{'labels': ['cell'], 'values': [['ROW']]}{'labels': ['ROW'], 'values': [['cell']]}Failed
zero width{'labels': ['cell'], 'values': [[]]}{'labels': ['cell'], 'values': [[]]}Passed
empty table{'labels': [], 'values': []}{'labels': [], 'values': []}Passed

SHA-256 / abe6cd2e659a33e30ae818d1123e33041d22303075ab8c1f6d956c89da9f22c7

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
        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
rowsNone{'labels': ['r', 'q'], 'values': [['cell', 'x'], ['y', 'z']]}Failed
empty labelNone{'labels': [''], 'values': [['cell']]}Failed
duplicateNoneNonePassed
bad width{'labels': ['r'], 'values': [['r', 'cell']]}NoneFailed
spacesNone{'labels': [' r '], 'values': [['cell']]}Failed
uppercase labelNone{'labels': ['ROW'], 'values': [['cell']]}Failed
zero widthNone{'labels': ['cell'], 'values': [[]]}Failed
empty table{'labels': [], 'values': []}{'labels': [], 'values': []}Passed

SHA-256 / 5636345660f98880fd03440aff2f27612b2aec2050e8c36bc65dc811b6ef6756

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.438543+00:00.

Case digest / ab5359e6693206a908f9b12495beed5c64858242a686ad38aab0e20b8e372133