FA-35421 / Tab interfaces / Open access
Preview replacement: old dirty retention · case 01
The tab workspace reports an incorrect old dirty retention.
ROOT CAUSE
The old dirty retention decision uses False instead of x['dirty'] or x['pinned'].
VERIFIED REPAIR
Use the stipulated workspace rule: x['dirty'] or x['pinned'].
Unsuccessful approach: The partial repair x['dirty'] still violates a workspace boundary or normal case.
Case contract
A preview can replace only a clean unpinned preview. Reusing the view retains its slot but replaces document state; promotion makes it durable.
Why this case matters
Offline tab/panel workspace behavior; no browser or desktop framework is emulated.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
r0 = x['preview'] is not None and not x['dirty'] and not x['pinned']
r1 = x['incoming']
r2 = 0 if x['incoming']!=x['preview'] else x['scroll']
r3 = 'durable' if x['promote'] else 'preview'
r4 = False
r5 = x['slot'] if x['preview'] is not None and not x['dirty'] and not x['pinned'] else x['slot']+1
return [r0,r1,r2,r3,r4,r5]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'old', 70, 'durable', False, 2])], 2: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'old', 140, 'durable', False, 2])], 3: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'old', 210, 'durable', False, 2])], 4: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'old', 280, 'durable', False, 2])], 5: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'old', 350, 'durable', False, 2])]}
for i, (inputs, expected) in enumerate(fixtures[N]):
check("workspace regression "+str(i), solve(inputs), expected)
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 |
|---|---|---|---|
| workspace regression 0 | [True, 'new', 0, 'durable', False, 2] | [True, 'new', 0, 'durable', False, 2] | Passed |
| workspace regression 1 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', True, 3] | Failed |
| workspace regression 2 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', True, 3] | Failed |
| workspace regression 3 | [True, 'new', 0, 'preview', False, 2] | [True, 'new', 0, 'preview', False, 2] | Passed |
| workspace regression 4 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', False, 3] | Passed |
| workspace regression 5 | [True, 'old', 0, 'durable', False, 2] | [True, 'old', 0, 'durable', False, 2] | Passed |
| workspace regression 6 | [True, 'old', 70, 'durable', False, 2] | [True, 'old', 70, 'durable', False, 2] | Passed |
SHA-256 / f7ad23c53b1d249649f899ca1b7cdbdd42110aa1981f48da43c8a3d44c60d766
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
r0 = x['preview'] is not None and not x['dirty'] and not x['pinned']
r1 = x['incoming']
r2 = 0 if x['incoming']!=x['preview'] else x['scroll']
r3 = 'durable' if x['promote'] else 'preview'
r4 = x['dirty']
r5 = x['slot'] if x['preview'] is not None and not x['dirty'] and not x['pinned'] else x['slot']+1
return [r0,r1,r2,r3,r4,r5]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'old', 70, 'durable', False, 2])], 2: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'old', 140, 'durable', False, 2])], 3: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'old', 210, 'durable', False, 2])], 4: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'old', 280, 'durable', False, 2])], 5: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'old', 350, 'durable', False, 2])]}
for i, (inputs, expected) in enumerate(fixtures[N]):
check("workspace regression "+str(i), solve(inputs), expected)
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 |
|---|---|---|---|
| workspace regression 0 | [True, 'new', 0, 'durable', False, 2] | [True, 'new', 0, 'durable', False, 2] | Passed |
| workspace regression 1 | [False, 'new', 0, 'durable', True, 3] | [False, 'new', 0, 'durable', True, 3] | Passed |
| workspace regression 2 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', True, 3] | Failed |
| workspace regression 3 | [True, 'new', 0, 'preview', False, 2] | [True, 'new', 0, 'preview', False, 2] | Passed |
| workspace regression 4 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', False, 3] | Passed |
| workspace regression 5 | [True, 'old', 0, 'durable', False, 2] | [True, 'old', 0, 'durable', False, 2] | Passed |
| workspace regression 6 | [True, 'old', 70, 'durable', False, 2] | [True, 'old', 70, 'durable', False, 2] | Passed |
SHA-256 / ebb9858b91808138cdbf3f72f4be63d98a992a5423dbe54a7fc1789499178ecb
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
r0 = x['preview'] is not None and not x['dirty'] and not x['pinned']
r1 = x['incoming']
r2 = 0 if x['incoming']!=x['preview'] else x['scroll']
r3 = 'durable' if x['promote'] else 'preview'
r4 = x['dirty'] or x['pinned']
r5 = x['slot'] if x['preview'] is not None and not x['dirty'] and not x['pinned'] else x['slot']+1
return [r0,r1,r2,r3,r4,r5]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 70, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 70, 'promote': True}, [True, 'old', 70, 'durable', False, 2])], 2: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 140, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 140, 'promote': True}, [True, 'old', 140, 'durable', False, 2])], 3: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 210, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 210, 'promote': True}, [True, 'old', 210, 'durable', False, 2])], 4: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 280, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 280, 'promote': True}, [True, 'old', 280, 'durable', False, 2])], 5: [({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'new', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': True, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': True, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', True, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': False}, [True, 'new', 0, 'preview', False, 2]), ({'preview': None, 'dirty': False, 'pinned': False, 'incoming': 'new', 'slot': 2, 'scroll': 350, 'promote': True}, [False, 'new', 0, 'durable', False, 3]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 0, 'promote': True}, [True, 'old', 0, 'durable', False, 2]), ({'preview': 'old', 'dirty': False, 'pinned': False, 'incoming': 'old', 'slot': 2, 'scroll': 350, 'promote': True}, [True, 'old', 350, 'durable', False, 2])]}
for i, (inputs, expected) in enumerate(fixtures[N]):
check("workspace regression "+str(i), solve(inputs), expected)
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 |
|---|---|---|---|
| workspace regression 0 | [True, 'new', 0, 'durable', False, 2] | [True, 'new', 0, 'durable', False, 2] | Passed |
| workspace regression 1 | [False, 'new', 0, 'durable', True, 3] | [False, 'new', 0, 'durable', True, 3] | Passed |
| workspace regression 2 | [False, 'new', 0, 'durable', True, 3] | [False, 'new', 0, 'durable', True, 3] | Passed |
| workspace regression 3 | [True, 'new', 0, 'preview', False, 2] | [True, 'new', 0, 'preview', False, 2] | Passed |
| workspace regression 4 | [False, 'new', 0, 'durable', False, 3] | [False, 'new', 0, 'durable', False, 3] | Passed |
| workspace regression 5 | [True, 'old', 0, 'durable', False, 2] | [True, 'old', 0, 'durable', False, 2] | Passed |
| workspace regression 6 | [True, 'old', 70, 'durable', False, 2] | [True, 'old', 70, 'durable', False, 2] | Passed |
SHA-256 / da7d7647238b93f0a1c0ac9880588b9fb8ee58f5010265e9982ca9f1360e88ce
Verification & scope
Finite stipulated workspace snapshots only. Independent result fields describe observable obligations, not a full UI runtime. 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:42:41.445900+00:00.
Case digest / a74471523439e09c8b158d41ed59523eceb210ce06ab62ce19c0347409d5b002