FA-24681 / Client state / Open access
Client preference layer resolution: Layer precedence · case 01
Layer precedence.
ROOT CAUSE
The layer-precedence client decision evaluates `{**session,**workspace,**device,**defaults}` instead of `{**defaults,**device,**workspace,**session}`.
THE FAILURE
The layer-precedence client decision evaluates `{**session,**workspace,**device,**defaults}` instead of `{**defaults,**device,**workspace,**session}`.
Unsuccessful approach: The partial repair `{**defaults,**device,**session,**workspace}` still violates the explicit fixture contract.
Case contract
Client preferences overlay defaults, device, workspace and session in that order. Workspace locks exclude session writes. Removing an override reveals the lower layer; serialization preserves its own layer and explicit null/falsy values. Operation layer-precedence has the six explicit input/output oracles below.
Why this case matters
An offline client lifecycle model that isolates a state-management defect without DOM rendering or network services.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(operation, s):
defaults, device, workspace, session, locked, removed = s
if operation == 'layer-precedence':
return {**session,**workspace,**device,**defaults}
if operation == 'locked-workspace-values':
return {**defaults,**device,**workspace,**{k:v for k,v in session.items() if k not in locked}}
if operation == 'session-only-reset':
return {**defaults,**device,**workspace}
if operation == 'device-layer-serialization':
return dict(device)
if operation == 'explicit-session-keys':
return list(session)
if operation == 'session-key-removal-falls-through':
return {**defaults,**device,**workspace,**{k:v for k,v in session.items() if k not in removed}}
if operation == 'writable-preference-projection':
return {k:v for k,v in session.items() if k not in locked}
if operation == 'preference-source-attribution':
return {k:next(layer for layer,values in [('session',session),('workspace',workspace),('device',device),('default',defaults)] if k in values) for k in sorted(set(defaults)|set(device)|set(workspace)|set(session))}
if operation == 'redundant-device-override-pruning':
return {k:v for k,v in device.items() if k not in defaults or defaults[k]!=v}
if operation == 'workspace-lock-report':
return [k for k in locked if k in workspace]
raise ValueError('unknown modeled operation')
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('layer-precedence scenario 1', solve('layer-precedence', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('layer-precedence scenario 2', solve('layer-precedence', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('layer-precedence scenario 3', solve('layer-precedence', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':4})
check('layer-precedence scenario 4', solve('layer-precedence', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('layer-precedence scenario 5', solve('layer-precedence', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('layer-precedence scenario 6', solve('layer-precedence', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('locked-workspace-values scenario 1', solve('locked-workspace-values', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('locked-workspace-values scenario 2', solve('locked-workspace-values', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('locked-workspace-values scenario 3', solve('locked-workspace-values', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('locked-workspace-values scenario 4', solve('locked-workspace-values', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('locked-workspace-values scenario 5', solve('locked-workspace-values', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('locked-workspace-values scenario 6', solve('locked-workspace-values', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('session-only-reset scenario 1', solve('session-only-reset', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark','size':N})
check('session-only-reset scenario 2', solve('session-only-reset', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('session-only-reset scenario 3', solve('session-only-reset', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('session-only-reset scenario 4', solve('session-only-reset', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('session-only-reset scenario 5', solve('session-only-reset', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'light'})
check('session-only-reset scenario 6', solve('session-only-reset', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':3})
check('device-layer-serialization scenario 1', solve('device-layer-serialization', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark'})
check('device-layer-serialization scenario 2', solve('device-layer-serialization', ({'theme':'light'}, {},{}, {},[],[])), {})
check('device-layer-serialization scenario 3', solve('device-layer-serialization', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':0})
check('device-layer-serialization scenario 4', solve('device-layer-serialization', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('device-layer-serialization scenario 5', solve('device-layer-serialization', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'dark'})
check('device-layer-serialization scenario 6', solve('device-layer-serialization', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':2})
check('explicit-session-keys scenario 1', solve('explicit-session-keys', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), ['theme'])
check('explicit-session-keys scenario 2', solve('explicit-session-keys', ({'theme':'light'}, {},{}, {},[],[])), [])
check('explicit-session-keys scenario 3', solve('explicit-session-keys', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), ['size'])
check('explicit-session-keys scenario 4', solve('explicit-session-keys', ({'theme':'light'},{'theme':None},{},{},[],[])), [])
check('explicit-session-keys scenario 5', solve('explicit-session-keys', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), ['theme'])
check('explicit-session-keys scenario 6', solve('explicit-session-keys', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), ['size'])
check('session-key-removal-falls-through scenario 1', solve('session-key-removal-falls-through', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('session-key-removal-falls-through scenario 2', solve('session-key-removal-falls-through', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('session-key-removal-falls-through scenario 3', solve('session-key-removal-falls-through', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('session-key-removal-falls-through scenario 4', solve('session-key-removal-falls-through', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('session-key-removal-falls-through scenario 5', solve('session-key-removal-falls-through', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'light'})
check('session-key-removal-falls-through scenario 6', solve('session-key-removal-falls-through', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('writable-preference-projection scenario 1', solve('writable-preference-projection', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':''})
check('writable-preference-projection scenario 2', solve('writable-preference-projection', ({'theme':'light'}, {},{}, {},[],[])), {})
check('writable-preference-projection scenario 3', solve('writable-preference-projection', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {})
check('writable-preference-projection scenario 4', solve('writable-preference-projection', ({'theme':'light'},{'theme':None},{},{},[],[])), {})
check('writable-preference-projection scenario 5', solve('writable-preference-projection', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('writable-preference-projection scenario 6', solve('writable-preference-projection', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('preference-source-attribution scenario 1', solve('preference-source-attribution', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'size':'workspace','theme':'session'})
check('preference-source-attribution scenario 2', solve('preference-source-attribution', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'default'})
check('preference-source-attribution scenario 3', solve('preference-source-attribution', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':'session'})
check('preference-source-attribution scenario 4', solve('preference-source-attribution', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':'device'})
check('preference-source-attribution scenario 5', solve('preference-source-attribution', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'session'})
check('preference-source-attribution scenario 6', solve('preference-source-attribution', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':'session'})
check('redundant-device-override-pruning scenario 1', solve('redundant-device-override-pruning', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark'})
check('redundant-device-override-pruning scenario 2', solve('redundant-device-override-pruning', ({'theme':'light'}, {},{}, {},[],[])), {})
check('redundant-device-override-pruning scenario 3', solve('redundant-device-override-pruning', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':0})
check('redundant-device-override-pruning scenario 4', solve('redundant-device-override-pruning', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('redundant-device-override-pruning scenario 5', solve('redundant-device-override-pruning', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'dark'})
check('redundant-device-override-pruning scenario 6', solve('redundant-device-override-pruning', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':2})
check('workspace-lock-report scenario 1', solve('workspace-lock-report', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), ['size'])
check('workspace-lock-report scenario 2', solve('workspace-lock-report', ({'theme':'light'}, {},{}, {},[],[])), [])
check('workspace-lock-report scenario 3', solve('workspace-lock-report', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), ['size'])
check('workspace-lock-report scenario 4', solve('workspace-lock-report', ({'theme':'light'},{'theme':None},{},{},[],[])), [])
check('workspace-lock-report scenario 5', solve('workspace-lock-report', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), [])
check('workspace-lock-report scenario 6', solve('workspace-lock-report', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), [])
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 |
|---|---|---|---|
| layer-precedence scenario 1 | {'size': 1, 'theme': 'light'} | {'size': 1, 'theme': ''} | Failed |
| layer-precedence scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| layer-precedence scenario 3 | {'size': 2} | {'size': 4} | Failed |
| layer-precedence scenario 4 | {'theme': 'light'} | {'theme': None} | Failed |
| layer-precedence scenario 5 | {'theme': 'dark'} | {'theme': 'blue'} | Failed |
| layer-precedence scenario 6 | {'size': 1} | {'size': 0} | Failed |
| locked-workspace-values scenario 1 | {'size': 1, 'theme': ''} | {'size': 1, 'theme': ''} | Passed |
| locked-workspace-values scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| locked-workspace-values scenario 3 | {'size': 3} | {'size': 3} | Passed |
| locked-workspace-values scenario 4 | {'theme': None} | {'theme': None} | Passed |
| locked-workspace-values scenario 5 | {'theme': 'blue'} | {'theme': 'blue'} | Passed |
| locked-workspace-values scenario 6 | {'size': 0} | {'size': 0} | Passed |
| session-only-reset scenario 1 | {'size': 1, 'theme': 'dark'} | {'size': 1, 'theme': 'dark'} | Passed |
| session-only-reset scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-only-reset scenario 3 | {'size': 3} | {'size': 3} | Passed |
| session-only-reset scenario 4 | {'theme': None} | {'theme': None} | Passed |
| session-only-reset scenario 5 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-only-reset scenario 6 | {'size': 3} | {'size': 3} | Passed |
| device-layer-serialization scenario 1 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| device-layer-serialization scenario 2 | {} | {} | Passed |
| device-layer-serialization scenario 3 | {'size': 0} | {'size': 0} | Passed |
| device-layer-serialization scenario 4 | {'theme': None} | {'theme': None} | Passed |
| device-layer-serialization scenario 5 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| device-layer-serialization scenario 6 | {'size': 2} | {'size': 2} | Passed |
| explicit-session-keys scenario 1 | ['theme'] | ['theme'] | Passed |
| explicit-session-keys scenario 2 | [] | [] | Passed |
| explicit-session-keys scenario 3 | ['size'] | ['size'] | Passed |
| explicit-session-keys scenario 4 | [] | [] | Passed |
| explicit-session-keys scenario 5 | ['theme'] | ['theme'] | Passed |
| explicit-session-keys scenario 6 | ['size'] | ['size'] | Passed |
| session-key-removal-falls-through scenario 1 | {'size': 1, 'theme': ''} | {'size': 1, 'theme': ''} | Passed |
| session-key-removal-falls-through scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-key-removal-falls-through scenario 3 | {'size': 3} | {'size': 3} | Passed |
| session-key-removal-falls-through scenario 4 | {'theme': None} | {'theme': None} | Passed |
| session-key-removal-falls-through scenario 5 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-key-removal-falls-through scenario 6 | {'size': 0} | {'size': 0} | Passed |
| writable-preference-projection scenario 1 | {'theme': ''} | {'theme': ''} | Passed |
| writable-preference-projection scenario 2 | {} | {} | Passed |
| writable-preference-projection scenario 3 | {} | {} | Passed |
| writable-preference-projection scenario 4 | {} | {} | Passed |
| writable-preference-projection scenario 5 | {'theme': 'blue'} | {'theme': 'blue'} | Passed |
| writable-preference-projection scenario 6 | {'size': 0} | {'size': 0} | Passed |
| preference-source-attribution scenario 1 | {'size': 'workspace', 'theme': 'session'} | {'size': 'workspace', 'theme': 'session'} | Passed |
| preference-source-attribution scenario 2 | {'theme': 'default'} | {'theme': 'default'} | Passed |
| preference-source-attribution scenario 3 | {'size': 'session'} | {'size': 'session'} | Passed |
| preference-source-attribution scenario 4 | {'theme': 'device'} | {'theme': 'device'} | Passed |
| preference-source-attribution scenario 5 | {'theme': 'session'} | {'theme': 'session'} | Passed |
| preference-source-attribution scenario 6 | {'size': 'session'} | {'size': 'session'} | Passed |
| redundant-device-override-pruning scenario 1 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| redundant-device-override-pruning scenario 2 | {} | {} | Passed |
| redundant-device-override-pruning scenario 3 | {'size': 0} | {'size': 0} | Passed |
| redundant-device-override-pruning scenario 4 | {'theme': None} | {'theme': None} | Passed |
| redundant-device-override-pruning scenario 5 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| redundant-device-override-pruning scenario 6 | {'size': 2} | {'size': 2} | Passed |
| workspace-lock-report scenario 1 | ['size'] | ['size'] | Passed |
| workspace-lock-report scenario 2 | [] | [] | Passed |
| workspace-lock-report scenario 3 | ['size'] | ['size'] | Passed |
| workspace-lock-report scenario 4 | [] | [] | Passed |
| workspace-lock-report scenario 5 | [] | [] | Passed |
| workspace-lock-report scenario 6 | [] | [] | Passed |
SHA-256 / cde04d2bc4cd49d2956d22e1b7d1f60777e5f0e614507a6b9c52ab6cce95bdee
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(operation, s):
defaults, device, workspace, session, locked, removed = s
if operation == 'layer-precedence':
return {**defaults,**device,**session,**workspace}
if operation == 'locked-workspace-values':
return {**defaults,**device,**workspace,**{k:v for k,v in session.items() if k not in locked}}
if operation == 'session-only-reset':
return {**defaults,**device,**workspace}
if operation == 'device-layer-serialization':
return dict(device)
if operation == 'explicit-session-keys':
return list(session)
if operation == 'session-key-removal-falls-through':
return {**defaults,**device,**workspace,**{k:v for k,v in session.items() if k not in removed}}
if operation == 'writable-preference-projection':
return {k:v for k,v in session.items() if k not in locked}
if operation == 'preference-source-attribution':
return {k:next(layer for layer,values in [('session',session),('workspace',workspace),('device',device),('default',defaults)] if k in values) for k in sorted(set(defaults)|set(device)|set(workspace)|set(session))}
if operation == 'redundant-device-override-pruning':
return {k:v for k,v in device.items() if k not in defaults or defaults[k]!=v}
if operation == 'workspace-lock-report':
return [k for k in locked if k in workspace]
raise ValueError('unknown modeled operation')
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('layer-precedence scenario 1', solve('layer-precedence', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('layer-precedence scenario 2', solve('layer-precedence', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('layer-precedence scenario 3', solve('layer-precedence', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':4})
check('layer-precedence scenario 4', solve('layer-precedence', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('layer-precedence scenario 5', solve('layer-precedence', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('layer-precedence scenario 6', solve('layer-precedence', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('locked-workspace-values scenario 1', solve('locked-workspace-values', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('locked-workspace-values scenario 2', solve('locked-workspace-values', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('locked-workspace-values scenario 3', solve('locked-workspace-values', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('locked-workspace-values scenario 4', solve('locked-workspace-values', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('locked-workspace-values scenario 5', solve('locked-workspace-values', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('locked-workspace-values scenario 6', solve('locked-workspace-values', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('session-only-reset scenario 1', solve('session-only-reset', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark','size':N})
check('session-only-reset scenario 2', solve('session-only-reset', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('session-only-reset scenario 3', solve('session-only-reset', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('session-only-reset scenario 4', solve('session-only-reset', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('session-only-reset scenario 5', solve('session-only-reset', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'light'})
check('session-only-reset scenario 6', solve('session-only-reset', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':3})
check('device-layer-serialization scenario 1', solve('device-layer-serialization', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark'})
check('device-layer-serialization scenario 2', solve('device-layer-serialization', ({'theme':'light'}, {},{}, {},[],[])), {})
check('device-layer-serialization scenario 3', solve('device-layer-serialization', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':0})
check('device-layer-serialization scenario 4', solve('device-layer-serialization', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('device-layer-serialization scenario 5', solve('device-layer-serialization', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'dark'})
check('device-layer-serialization scenario 6', solve('device-layer-serialization', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':2})
check('explicit-session-keys scenario 1', solve('explicit-session-keys', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), ['theme'])
check('explicit-session-keys scenario 2', solve('explicit-session-keys', ({'theme':'light'}, {},{}, {},[],[])), [])
check('explicit-session-keys scenario 3', solve('explicit-session-keys', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), ['size'])
check('explicit-session-keys scenario 4', solve('explicit-session-keys', ({'theme':'light'},{'theme':None},{},{},[],[])), [])
check('explicit-session-keys scenario 5', solve('explicit-session-keys', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), ['theme'])
check('explicit-session-keys scenario 6', solve('explicit-session-keys', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), ['size'])
check('session-key-removal-falls-through scenario 1', solve('session-key-removal-falls-through', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'','size':N})
check('session-key-removal-falls-through scenario 2', solve('session-key-removal-falls-through', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'light'})
check('session-key-removal-falls-through scenario 3', solve('session-key-removal-falls-through', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':3})
check('session-key-removal-falls-through scenario 4', solve('session-key-removal-falls-through', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('session-key-removal-falls-through scenario 5', solve('session-key-removal-falls-through', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'light'})
check('session-key-removal-falls-through scenario 6', solve('session-key-removal-falls-through', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('writable-preference-projection scenario 1', solve('writable-preference-projection', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':''})
check('writable-preference-projection scenario 2', solve('writable-preference-projection', ({'theme':'light'}, {},{}, {},[],[])), {})
check('writable-preference-projection scenario 3', solve('writable-preference-projection', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {})
check('writable-preference-projection scenario 4', solve('writable-preference-projection', ({'theme':'light'},{'theme':None},{},{},[],[])), {})
check('writable-preference-projection scenario 5', solve('writable-preference-projection', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'blue'})
check('writable-preference-projection scenario 6', solve('writable-preference-projection', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':0})
check('preference-source-attribution scenario 1', solve('preference-source-attribution', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'size':'workspace','theme':'session'})
check('preference-source-attribution scenario 2', solve('preference-source-attribution', ({'theme':'light'}, {},{}, {},[],[])), {'theme':'default'})
check('preference-source-attribution scenario 3', solve('preference-source-attribution', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':'session'})
check('preference-source-attribution scenario 4', solve('preference-source-attribution', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':'device'})
check('preference-source-attribution scenario 5', solve('preference-source-attribution', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'session'})
check('preference-source-attribution scenario 6', solve('preference-source-attribution', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':'session'})
check('redundant-device-override-pruning scenario 1', solve('redundant-device-override-pruning', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), {'theme':'dark'})
check('redundant-device-override-pruning scenario 2', solve('redundant-device-override-pruning', ({'theme':'light'}, {},{}, {},[],[])), {})
check('redundant-device-override-pruning scenario 3', solve('redundant-device-override-pruning', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), {'size':0})
check('redundant-device-override-pruning scenario 4', solve('redundant-device-override-pruning', ({'theme':'light'},{'theme':None},{},{},[],[])), {'theme':None})
check('redundant-device-override-pruning scenario 5', solve('redundant-device-override-pruning', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), {'theme':'dark'})
check('redundant-device-override-pruning scenario 6', solve('redundant-device-override-pruning', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), {'size':2})
check('workspace-lock-report scenario 1', solve('workspace-lock-report', ({'theme':'light','size':1},{'theme':'dark'},{'size':N},{'theme':''},['size'],[])), ['size'])
check('workspace-lock-report scenario 2', solve('workspace-lock-report', ({'theme':'light'}, {},{}, {},[],[])), [])
check('workspace-lock-report scenario 3', solve('workspace-lock-report', ({'size':2},{'size':0},{'size':3},{'size':4},['size'],['size'])), ['size'])
check('workspace-lock-report scenario 4', solve('workspace-lock-report', ({'theme':'light'},{'theme':None},{},{},[],[])), [])
check('workspace-lock-report scenario 5', solve('workspace-lock-report', ({}, {'theme':'dark'},{'theme':'light'},{'theme':'blue'},[],['theme'])), [])
check('workspace-lock-report scenario 6', solve('workspace-lock-report', ({'size':1}, {'size':2},{'size':3},{'size':0},[],[])), [])
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 |
|---|---|---|---|
| layer-precedence scenario 1 | {'size': 1, 'theme': ''} | {'size': 1, 'theme': ''} | Passed |
| layer-precedence scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| layer-precedence scenario 3 | {'size': 3} | {'size': 4} | Failed |
| layer-precedence scenario 4 | {'theme': None} | {'theme': None} | Passed |
| layer-precedence scenario 5 | {'theme': 'light'} | {'theme': 'blue'} | Failed |
| layer-precedence scenario 6 | {'size': 3} | {'size': 0} | Failed |
| locked-workspace-values scenario 1 | {'size': 1, 'theme': ''} | {'size': 1, 'theme': ''} | Passed |
| locked-workspace-values scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| locked-workspace-values scenario 3 | {'size': 3} | {'size': 3} | Passed |
| locked-workspace-values scenario 4 | {'theme': None} | {'theme': None} | Passed |
| locked-workspace-values scenario 5 | {'theme': 'blue'} | {'theme': 'blue'} | Passed |
| locked-workspace-values scenario 6 | {'size': 0} | {'size': 0} | Passed |
| session-only-reset scenario 1 | {'size': 1, 'theme': 'dark'} | {'size': 1, 'theme': 'dark'} | Passed |
| session-only-reset scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-only-reset scenario 3 | {'size': 3} | {'size': 3} | Passed |
| session-only-reset scenario 4 | {'theme': None} | {'theme': None} | Passed |
| session-only-reset scenario 5 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-only-reset scenario 6 | {'size': 3} | {'size': 3} | Passed |
| device-layer-serialization scenario 1 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| device-layer-serialization scenario 2 | {} | {} | Passed |
| device-layer-serialization scenario 3 | {'size': 0} | {'size': 0} | Passed |
| device-layer-serialization scenario 4 | {'theme': None} | {'theme': None} | Passed |
| device-layer-serialization scenario 5 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| device-layer-serialization scenario 6 | {'size': 2} | {'size': 2} | Passed |
| explicit-session-keys scenario 1 | ['theme'] | ['theme'] | Passed |
| explicit-session-keys scenario 2 | [] | [] | Passed |
| explicit-session-keys scenario 3 | ['size'] | ['size'] | Passed |
| explicit-session-keys scenario 4 | [] | [] | Passed |
| explicit-session-keys scenario 5 | ['theme'] | ['theme'] | Passed |
| explicit-session-keys scenario 6 | ['size'] | ['size'] | Passed |
| session-key-removal-falls-through scenario 1 | {'size': 1, 'theme': ''} | {'size': 1, 'theme': ''} | Passed |
| session-key-removal-falls-through scenario 2 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-key-removal-falls-through scenario 3 | {'size': 3} | {'size': 3} | Passed |
| session-key-removal-falls-through scenario 4 | {'theme': None} | {'theme': None} | Passed |
| session-key-removal-falls-through scenario 5 | {'theme': 'light'} | {'theme': 'light'} | Passed |
| session-key-removal-falls-through scenario 6 | {'size': 0} | {'size': 0} | Passed |
| writable-preference-projection scenario 1 | {'theme': ''} | {'theme': ''} | Passed |
| writable-preference-projection scenario 2 | {} | {} | Passed |
| writable-preference-projection scenario 3 | {} | {} | Passed |
| writable-preference-projection scenario 4 | {} | {} | Passed |
| writable-preference-projection scenario 5 | {'theme': 'blue'} | {'theme': 'blue'} | Passed |
| writable-preference-projection scenario 6 | {'size': 0} | {'size': 0} | Passed |
| preference-source-attribution scenario 1 | {'size': 'workspace', 'theme': 'session'} | {'size': 'workspace', 'theme': 'session'} | Passed |
| preference-source-attribution scenario 2 | {'theme': 'default'} | {'theme': 'default'} | Passed |
| preference-source-attribution scenario 3 | {'size': 'session'} | {'size': 'session'} | Passed |
| preference-source-attribution scenario 4 | {'theme': 'device'} | {'theme': 'device'} | Passed |
| preference-source-attribution scenario 5 | {'theme': 'session'} | {'theme': 'session'} | Passed |
| preference-source-attribution scenario 6 | {'size': 'session'} | {'size': 'session'} | Passed |
| redundant-device-override-pruning scenario 1 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| redundant-device-override-pruning scenario 2 | {} | {} | Passed |
| redundant-device-override-pruning scenario 3 | {'size': 0} | {'size': 0} | Passed |
| redundant-device-override-pruning scenario 4 | {'theme': None} | {'theme': None} | Passed |
| redundant-device-override-pruning scenario 5 | {'theme': 'dark'} | {'theme': 'dark'} | Passed |
| redundant-device-override-pruning scenario 6 | {'size': 2} | {'size': 2} | Passed |
| workspace-lock-report scenario 1 | ['size'] | ['size'] | Passed |
| workspace-lock-report scenario 2 | [] | [] | Passed |
| workspace-lock-report scenario 3 | ['size'] | ['size'] | Passed |
| workspace-lock-report scenario 4 | [] | [] | Passed |
| workspace-lock-report scenario 5 | [] | [] | Passed |
| workspace-lock-report scenario 6 | [] | [] | Passed |
SHA-256 / cc0f0e12ca7667b49586475df175a1d5973d18b900a23f378fae7f3403c7007a
HELD IN THE MEMBER ARCHIVE
The verified repair and its recorded checks are member-only.
This mechanism has 60 recorded checks per implementation. The open-access tier publishes the failure and the unsuccessful fix; the repaired source that passes every check, and the observations that prove it, are available to members.
Every case sharing this mechanism uses the same contract and the same repair, so this one record is held back for all of them.
Member access is invitation-based. Sign in with your invited account to inspect the repair.
Sign in to the archive ↗Verification & scope
Only the explicitly specified operations and finite deterministic records are modeled; no browser or framework 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:41:00.035940+00:00.
Case digest / 2c2a61a5072dff089cb9292eaaa3dab984cca0eaa90e9142294b5ec9f920128d