FAILURE MAP
← Case archive

FA-47456 / Delimited text / Open access

A default directive emits its field name instead of value · case 01

A structured table violates the declared record or column contract.

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

ROOT CAUSE

Default expansion returns metadata identity instead of its value.

VERIFIED REPAIR

Preserve the named invariant at the faulty decision: out.append(data['default'])

Unsuccessful approach: String conversion changes a typed default rather than preserving it.

Case contract

Read already lexed cells represented as [text, was_quoted]. Only unquoted NULL is null. An unquoted empty cell is absent, encoded as {missing:True}; quoted empties are empty strings. Unquoted !DEFAULT expands to supplied default. Ordinary whitespace is significant.

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):
    out = []
    for text, quoted in data['cells']:
        if not quoted and text == 'NULL': out.append(None)
        elif not quoted and text == '': out.append({'missing': True})
        elif not quoted and text == '!DEFAULT': out.append('default')
        else: out.append(text)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('null origin', solve(_vary({'cells': [['NULL', False], ['NULL', True]], 'default': '@'})), _vary([None, 'NULL']))
check('empty origin', solve(_vary({'cells': [['', False], ['', True]], 'default': '@'})), _vary([{'missing': True}, '']))
check('default origin', solve(_vary({'cells': [['!DEFAULT', False], ['!DEFAULT', True]], 'default': '@'})), _vary(['@', '!DEFAULT']))
check('spaces', solve(_vary({'cells': [[' NULL ', False], [' ', True]], 'default': '@'})), _vary([' NULL ', ' ']))
check('case', solve(_vary({'cells': [['null', False]], 'default': '@'})), _vary(['null']))
check('normal', solve(_vary({'cells': [['@', False]], 'default': 'z'})), _vary(['@']))
check('no columns', solve(_vary({'cells': [], 'default': '@'})), _vary([]))
check('bare space', solve(_vary({'cells': [[' ', False]], 'default': '@'})), _vary([' ']))
check('unknown directive', solve(_vary({'cells': [['!hello', False]], 'default': '@'})), _vary(['!hello']))
check('typed default', solve(_vary({'cells': [['!DEFAULT', False]], 'default': 7})), _vary([7]))
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
null origin[None, 'NULL'][None, 'NULL']Passed
empty origin[{'missing': True}, ''][{'missing': True}, '']Passed
default origin['default', '!DEFAULT']['cell', '!DEFAULT']Failed
spaces[' NULL ', ' '][' NULL ', ' ']Passed
case['null']['null']Passed
normal['cell']['cell']Passed
no columns[][]Passed
bare space[' '][' ']Passed
unknown directive['!hello']['!hello']Passed
typed default['default'][7]Failed

SHA-256 / 33eec6f51802e506cbfefce08b48f1e9e33369714cf22544bbd14fb1bdf30b26

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):
    out = []
    for text, quoted in data['cells']:
        if not quoted and text == 'NULL': out.append(None)
        elif not quoted and text == '': out.append({'missing': True})
        elif not quoted and text == '!DEFAULT': out.append(str(data['default']))
        else: out.append(text)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('null origin', solve(_vary({'cells': [['NULL', False], ['NULL', True]], 'default': '@'})), _vary([None, 'NULL']))
check('empty origin', solve(_vary({'cells': [['', False], ['', True]], 'default': '@'})), _vary([{'missing': True}, '']))
check('default origin', solve(_vary({'cells': [['!DEFAULT', False], ['!DEFAULT', True]], 'default': '@'})), _vary(['@', '!DEFAULT']))
check('spaces', solve(_vary({'cells': [[' NULL ', False], [' ', True]], 'default': '@'})), _vary([' NULL ', ' ']))
check('case', solve(_vary({'cells': [['null', False]], 'default': '@'})), _vary(['null']))
check('normal', solve(_vary({'cells': [['@', False]], 'default': 'z'})), _vary(['@']))
check('no columns', solve(_vary({'cells': [], 'default': '@'})), _vary([]))
check('bare space', solve(_vary({'cells': [[' ', False]], 'default': '@'})), _vary([' ']))
check('unknown directive', solve(_vary({'cells': [['!hello', False]], 'default': '@'})), _vary(['!hello']))
check('typed default', solve(_vary({'cells': [['!DEFAULT', False]], 'default': 7})), _vary([7]))
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
null origin[None, 'NULL'][None, 'NULL']Passed
empty origin[{'missing': True}, ''][{'missing': True}, '']Passed
default origin['cell', '!DEFAULT']['cell', '!DEFAULT']Passed
spaces[' NULL ', ' '][' NULL ', ' ']Passed
case['null']['null']Passed
normal['cell']['cell']Passed
no columns[][]Passed
bare space[' '][' ']Passed
unknown directive['!hello']['!hello']Passed
typed default['7'][7]Failed

SHA-256 / 4fa4a594e672084f193795bcfb64ec7c307c13c2a1d812893ac91f0c281d6c13

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):
    out = []
    for text, quoted in data['cells']:
        if not quoted and text == 'NULL': out.append(None)
        elif not quoted and text == '': out.append({'missing': True})
        elif not quoted and text == '!DEFAULT': out.append(data['default'])
        else: out.append(text)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('null origin', solve(_vary({'cells': [['NULL', False], ['NULL', True]], 'default': '@'})), _vary([None, 'NULL']))
check('empty origin', solve(_vary({'cells': [['', False], ['', True]], 'default': '@'})), _vary([{'missing': True}, '']))
check('default origin', solve(_vary({'cells': [['!DEFAULT', False], ['!DEFAULT', True]], 'default': '@'})), _vary(['@', '!DEFAULT']))
check('spaces', solve(_vary({'cells': [[' NULL ', False], [' ', True]], 'default': '@'})), _vary([' NULL ', ' ']))
check('case', solve(_vary({'cells': [['null', False]], 'default': '@'})), _vary(['null']))
check('normal', solve(_vary({'cells': [['@', False]], 'default': 'z'})), _vary(['@']))
check('no columns', solve(_vary({'cells': [], 'default': '@'})), _vary([]))
check('bare space', solve(_vary({'cells': [[' ', False]], 'default': '@'})), _vary([' ']))
check('unknown directive', solve(_vary({'cells': [['!hello', False]], 'default': '@'})), _vary(['!hello']))
check('typed default', solve(_vary({'cells': [['!DEFAULT', False]], 'default': 7})), _vary([7]))
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
null origin[None, 'NULL'][None, 'NULL']Passed
empty origin[{'missing': True}, ''][{'missing': True}, '']Passed
default origin['cell', '!DEFAULT']['cell', '!DEFAULT']Passed
spaces[' NULL ', ' '][' NULL ', ' ']Passed
case['null']['null']Passed
normal['cell']['cell']Passed
no columns[][]Passed
bare space[' '][' ']Passed
unknown directive['!hello']['!hello']Passed
typed default[7][7]Passed

SHA-256 / b98970a593fb05d078fcc9fdc54c8292a657af691f44a73438939e286aaba864

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

Case digest / 184ac16c38ab8b143bf151194e7582d8b0f2006f88845295a894e55068d11b23