FA-37806 / Table interactions / Open access
Table export projection: nonexportable column · case 01
The table nonexportable column result violates the stipulated table export projection contract.
ROOT CAUSE
The nonexportable column decision uses 'True' instead of "c.get('export',True)".
VERIFIED REPAIR
Apply the complete nonexportable column rule: c.get('export',True).
Unsuccessful approach: The attempted repair "c.get('export',False)" still loses a required part of the table contract.
Case contract
Exports distinguish all source rows from current view rows and selected view rows; preserve view/schema order, omit forbidden columns, optionally include hidden columns, distinguish raw/display values with fallback, and disambiguate duplicate human labels in encounter order.
Why this case matters
An offline table UI model isolates table export projection, including adversarial row/column relationships.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(rows, columns, view_ids, scope, hidden, include_hidden, selected, values):
by={r['id']:r for r in rows}
ids=[r['id'] for r in rows] if scope=='all' else [k for k in view_ids if k in by]
if scope=='selected': ids=[k for k in ids if k in selected]
cols=[c for c in columns if True and (include_hidden or c['id'] not in hidden)]
labels=[]; counts={}
for c in cols:
label=c['label']; counts[label]=counts.get(label,0)+1
labels.append(label if counts[label]==1 else label+' ('+str(counts[label])+')')
records=[]
for key in ids:
r=by[key]
records.append([r.get('_formatted',{}).get(c['id'],r.get(c['id'])) if values=='display' else r.get(c['id']) for c in cols])
return {'columns':[c['id'] for c in cols],'labels':labels,'records':records,'row_ids':ids,'scope':scope}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
check('filtered view display', solve([{'id':'a','z':1,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 2:
check('filtered view display', solve([{'id':'a','z':2,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 3:
check('filtered view display', solve([{'id':'a','z':3,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 4:
check('filtered view display', solve([{'id':'a','z':4,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 5:
check('filtered view display', solve([{'id':'a','z':5,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
check('variant formatted export value', solve([{'id':'r','x':N,'_formatted':{'x':'value'+str(N)}}], [{'id':'x','label':'X'}], ['r'], 'view', [], False, [], 'display'), {'columns':['x'], 'labels':['X'], 'records':[['value'+str(N)]], 'row_ids':['r'], 'scope':'view'})
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| filtered view display | {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'} | Passed |
| selected on view | {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'} | Passed |
| all records | {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'} | Passed |
| hidden requested | {'columns': ['z', 'b', 'p'], 'labels': ['Z', 'B', 'Private'], 'records': [[1, 2, 3]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'} | Failed |
| hidden omitted raw | {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'} | Passed |
| no rows | {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'} | Passed |
| variant formatted export value | {'columns': ['x'], 'labels': ['X'], 'records': [['value1']], 'row_ids': ['r'], 'scope': 'view'} | {'columns': ['x'], 'labels': ['X'], 'records': [['value1']], 'row_ids': ['r'], 'scope': 'view'} | Passed |
SHA-256 / 2929156fab00f7faea829be55a0debe144c48e45b30a767bdb07148081948224
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(rows, columns, view_ids, scope, hidden, include_hidden, selected, values):
by={r['id']:r for r in rows}
ids=[r['id'] for r in rows] if scope=='all' else [k for k in view_ids if k in by]
if scope=='selected': ids=[k for k in ids if k in selected]
cols=[c for c in columns if c.get('export',False) and (include_hidden or c['id'] not in hidden)]
labels=[]; counts={}
for c in cols:
label=c['label']; counts[label]=counts.get(label,0)+1
labels.append(label if counts[label]==1 else label+' ('+str(counts[label])+')')
records=[]
for key in ids:
r=by[key]
records.append([r.get('_formatted',{}).get(c['id'],r.get(c['id'])) if values=='display' else r.get(c['id']) for c in cols])
return {'columns':[c['id'] for c in cols],'labels':labels,'records':records,'row_ids':ids,'scope':scope}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
check('filtered view display', solve([{'id':'a','z':1,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 2:
check('filtered view display', solve([{'id':'a','z':2,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 3:
check('filtered view display', solve([{'id':'a','z':3,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 4:
check('filtered view display', solve([{'id':'a','z':4,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 5:
check('filtered view display', solve([{'id':'a','z':5,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
check('variant formatted export value', solve([{'id':'r','x':N,'_formatted':{'x':'value'+str(N)}}], [{'id':'x','label':'X'}], ['r'], 'view', [], False, [], 'display'), {'columns':['x'], 'labels':['X'], 'records':[['value'+str(N)]], 'row_ids':['r'], 'scope':'view'})
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| filtered view display | {'columns': [], 'labels': [], 'records': [[], []], 'row_ids': ['b', 'a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'} | Failed |
| selected on view | {'columns': [], 'labels': [], 'records': [[]], 'row_ids': ['a'], 'scope': 'selected'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'} | Failed |
| all records | {'columns': [], 'labels': [], 'records': [[], []], 'row_ids': ['a', 'b'], 'scope': 'all'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'} | Failed |
| hidden requested | {'columns': [], 'labels': [], 'records': [[]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'} | Failed |
| hidden omitted raw | {'columns': [], 'labels': [], 'records': [[]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'} | Failed |
| no rows | {'columns': [], 'labels': [], 'records': [], 'row_ids': [], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'} | Failed |
| variant formatted export value | {'columns': [], 'labels': [], 'records': [[]], 'row_ids': ['r'], 'scope': 'view'} | {'columns': ['x'], 'labels': ['X'], 'records': [['value1']], 'row_ids': ['r'], 'scope': 'view'} | Failed |
SHA-256 / 6eb4534748c3c6f31769eef84d9a12b4c6dab7ba0be55a0fa6c1767bd04cd7d3
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(rows, columns, view_ids, scope, hidden, include_hidden, selected, values):
by={r['id']:r for r in rows}
ids=[r['id'] for r in rows] if scope=='all' else [k for k in view_ids if k in by]
if scope=='selected': ids=[k for k in ids if k in selected]
cols=[c for c in columns if c.get('export',True) and (include_hidden or c['id'] not in hidden)]
labels=[]; counts={}
for c in cols:
label=c['label']; counts[label]=counts.get(label,0)+1
labels.append(label if counts[label]==1 else label+' ('+str(counts[label])+')')
records=[]
for key in ids:
r=by[key]
records.append([r.get('_formatted',{}).get(c['id'],r.get(c['id'])) if values=='display' else r.get(c['id']) for c in cols])
return {'columns':[c['id'] for c in cols],'labels':labels,'records':records,'row_ids':ids,'scope':scope}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
if N == 1:
check('filtered view display', solve([{'id':'a','z':1,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 2:
check('filtered view display', solve([{'id':'a','z':2,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 3:
check('filtered view display', solve([{'id':'a','z':3,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 4:
check('filtered view display', solve([{'id':'a','z':4,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
if N == 5:
check('filtered view display', solve([{'id':'a','z':5,'b':2,'_formatted':{'z':'one'}},{'id':'b','z':3,'b':4},{'id':'c','z':5,'b':6}], [{'id':'z','label':'Value'},{'id':'b','label':'Value'}], ['b','a','gone'], 'view', [], False, [], 'display'), {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'})
check('selected on view', solve([{'id':'a','z':1},{'id':'b','z':2},{'id':'c','z':3}], [{'id':'z','label':'Z'}], ['b','a'], 'selected', [], False, ['a','c'], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'})
check('all records', solve([{'id':'a','z':1},{'id':'b','z':2}], [{'id':'z','label':'Z'}], ['b'], 'all', [], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'})
check('hidden requested', solve([{'id':'a','z':1,'b':2,'p':3}], [{'id':'z','label':'Z'},{'id':'b','label':'B'},{'id':'p','label':'Private','export':False}], ['a'], 'view', ['b'], True, [], 'raw'), {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'})
check('hidden omitted raw', solve([{'id':'a','z':0,'b':2,'_formatted':{'z':'zero'}}], [{'id':'z','label':'Z'},{'id':'b','label':'B'}], ['a'], 'view', ['b'], False, [], 'raw'), {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'})
check('no rows', solve([], [{'id':'z','label':'Z'}], [], 'view', [], False, [], 'display'), {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'})
check('variant formatted export value', solve([{'id':'r','x':N,'_formatted':{'x':'value'+str(N)}}], [{'id':'x','label':'X'}], ['r'], 'view', [], False, [], 'display'), {'columns':['x'], 'labels':['X'], 'records':[['value'+str(N)]], 'row_ids':['r'], 'scope':'view'})
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| filtered view display | {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Value', 'Value (2)'], 'records': [[3, 4], ['one', 2]], 'row_ids': ['b', 'a'], 'scope': 'view'} | Passed |
| selected on view | {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1]], 'row_ids': ['a'], 'scope': 'selected'} | Passed |
| all records | {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[1], [2]], 'row_ids': ['a', 'b'], 'scope': 'all'} | Passed |
| hidden requested | {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z', 'b'], 'labels': ['Z', 'B'], 'records': [[1, 2]], 'row_ids': ['a'], 'scope': 'view'} | Passed |
| hidden omitted raw | {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [[0]], 'row_ids': ['a'], 'scope': 'view'} | Passed |
| no rows | {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'} | {'columns': ['z'], 'labels': ['Z'], 'records': [], 'row_ids': [], 'scope': 'view'} | Passed |
| variant formatted export value | {'columns': ['x'], 'labels': ['X'], 'records': [['value1']], 'row_ids': ['r'], 'scope': 'view'} | {'columns': ['x'], 'labels': ['X'], 'records': [['value1']], 'row_ids': ['r'], 'scope': 'view'} | Passed |
SHA-256 / 8e6b22ecd0acc764321d4d71788606d34c3904fc2fd18f65ffb5dc78642e369b
Verification & scope
Source row and schema IDs are unique; this models export projection, not an actual CSV/XLSX writer. Deterministic offline table UI model; no browser, DOM, framework, or standards conformance is claimed. 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:43:04.796318+00:00.
Case digest / 83a389b8b2e49328314b51482f33395fc40e7af1a9e0beba848b6fd8dd215127