FA-35906 / Tab interfaces / Open access
Collapse empty pane: promoted extent · case 01
The tab workspace reports an incorrect promoted extent.
ROOT CAUSE
The promoted extent decision uses x['sibling_width'] instead of x['width']+x['sibling_width']+x['gutter'] if x['remaining']==0 and not x['root'] else x['sibling_width'].
VERIFIED REPAIR
Use the stipulated workspace rule: x['width']+x['sibling_width']+x['gutter'] if x['remaining']==0 and not x['root'] else x['sibling_width'].
Unsuccessful approach: The partial repair x['width']+x['sibling_width'] still violates a workspace boundary or normal case.
Case contract
A pane disappears only after its last tab closes; promote its sibling subtree, remove the separator, transfer active-pane ownership and retain sibling extent.
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['remaining']==0 and not x['root']
r1 = x['remaining']==0 and x['root']
r2 = x['sibling'] if x['remaining']==0 and not x['root'] else x['pane']
r3 = x['gutter'] if x['remaining']==0 and not x['root'] else 0
r4 = x['sibling'] if x['remaining']==0 and not x['root'] and x['active']==x['pane'] else x['active']
r5 = x['sibling_width']
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: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, True, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 208]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 0}, [True, False, 'q', 0, 'q', 500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200])], 2: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, True, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 416]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 0}, [True, False, 'q', 0, 'q', 1000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400])], 3: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, True, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 624]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 0}, [True, False, 'q', 0, 'q', 1500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600])], 4: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, True, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 832]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 0}, [True, False, 'q', 0, 'q', 2000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800])], 5: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, True, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 1040]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 0}, [True, False, 'q', 0, 'q', 2500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000])]}
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, False, 'q', 8, 'q', 200] | [True, False, 'q', 8, 'q', 508] | Failed |
| workspace regression 1 | [False, False, 'p', 0, 'p', 200] | [False, False, 'p', 0, 'p', 200] | Passed |
| workspace regression 2 | [False, True, 'p', 0, 'p', 200] | [False, True, 'p', 0, 'p', 200] | Passed |
| workspace regression 3 | [True, False, 'q', 8, 'q', 200] | [True, False, 'q', 8, 'q', 508] | Failed |
| workspace regression 4 | [True, False, 'q', 8, 'q', 200] | [True, False, 'q', 8, 'q', 208] | Failed |
| workspace regression 5 | [True, False, 'q', 0, 'q', 200] | [True, False, 'q', 0, 'q', 500] | Failed |
| workspace regression 6 | [False, False, 'p', 0, 'p', 200] | [False, False, 'p', 0, 'p', 200] | Passed |
SHA-256 / 9b714891f214fdcd136cfae9924f85addaf846ba4e1e994aa3835595b119de80
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
r0 = x['remaining']==0 and not x['root']
r1 = x['remaining']==0 and x['root']
r2 = x['sibling'] if x['remaining']==0 and not x['root'] else x['pane']
r3 = x['gutter'] if x['remaining']==0 and not x['root'] else 0
r4 = x['sibling'] if x['remaining']==0 and not x['root'] and x['active']==x['pane'] else x['active']
r5 = x['width']+x['sibling_width']
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: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, True, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 208]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 0}, [True, False, 'q', 0, 'q', 500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200])], 2: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, True, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 416]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 0}, [True, False, 'q', 0, 'q', 1000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400])], 3: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, True, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 624]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 0}, [True, False, 'q', 0, 'q', 1500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600])], 4: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, True, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 832]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 0}, [True, False, 'q', 0, 'q', 2000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800])], 5: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, True, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 1040]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 0}, [True, False, 'q', 0, 'q', 2500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000])]}
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, False, 'q', 8, 'q', 500] | [True, False, 'q', 8, 'q', 508] | Failed |
| workspace regression 1 | [False, False, 'p', 0, 'p', 500] | [False, False, 'p', 0, 'p', 200] | Failed |
| workspace regression 2 | [False, True, 'p', 0, 'p', 500] | [False, True, 'p', 0, 'p', 200] | Failed |
| workspace regression 3 | [True, False, 'q', 8, 'q', 500] | [True, False, 'q', 8, 'q', 508] | Failed |
| workspace regression 4 | [True, False, 'q', 8, 'q', 200] | [True, False, 'q', 8, 'q', 208] | Failed |
| workspace regression 5 | [True, False, 'q', 0, 'q', 500] | [True, False, 'q', 0, 'q', 500] | Passed |
| workspace regression 6 | [False, False, 'p', 0, 'p', 500] | [False, False, 'p', 0, 'p', 200] | Failed |
SHA-256 / 091e6c9617db9d04ebb3de65ac3dba723ada2d114e08ea11bc52188d50da17da
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
r0 = x['remaining']==0 and not x['root']
r1 = x['remaining']==0 and x['root']
r2 = x['sibling'] if x['remaining']==0 and not x['root'] else x['pane']
r3 = x['gutter'] if x['remaining']==0 and not x['root'] else 0
r4 = x['sibling'] if x['remaining']==0 and not x['root'] and x['active']==x['pane'] else x['active']
r5 = x['width']+x['sibling_width']+x['gutter'] if x['remaining']==0 and not x['root'] else x['sibling_width']
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: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, True, 'p', 0, 'p', 200]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 508]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 200, 'gutter': 8}, [True, False, 'q', 8, 'q', 208]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 0}, [True, False, 'q', 0, 'q', 500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 300, 'sibling_width': 200, 'gutter': 8}, [False, False, 'p', 0, 'p', 200])], 2: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, True, 'p', 0, 'p', 400]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 1016]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 400, 'gutter': 16}, [True, False, 'q', 16, 'q', 416]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 0}, [True, False, 'q', 0, 'q', 1000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 600, 'sibling_width': 400, 'gutter': 16}, [False, False, 'p', 0, 'p', 400])], 3: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, True, 'p', 0, 'p', 600]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 1524]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 600, 'gutter': 24}, [True, False, 'q', 24, 'q', 624]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 0}, [True, False, 'q', 0, 'q', 1500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 900, 'sibling_width': 600, 'gutter': 24}, [False, False, 'p', 0, 'p', 600])], 4: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, True, 'p', 0, 'p', 800]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 2032]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 800, 'gutter': 32}, [True, False, 'q', 32, 'q', 832]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 0}, [True, False, 'q', 0, 'q', 2000]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1200, 'sibling_width': 800, 'gutter': 32}, [False, False, 'p', 0, 'p', 800])], 5: [({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 1, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, True, 'p', 0, 'p', 1000]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'q', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 2540]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 0, 'sibling_width': 1000, 'gutter': 40}, [True, False, 'q', 40, 'q', 1040]), ({'remaining': 0, 'root': False, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 0}, [True, False, 'q', 0, 'q', 2500]), ({'remaining': 1, 'root': True, 'sibling': 'q', 'pane': 'p', 'active': 'p', 'width': 1500, 'sibling_width': 1000, 'gutter': 40}, [False, False, 'p', 0, 'p', 1000])]}
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, False, 'q', 8, 'q', 508] | [True, False, 'q', 8, 'q', 508] | Passed |
| workspace regression 1 | [False, False, 'p', 0, 'p', 200] | [False, False, 'p', 0, 'p', 200] | Passed |
| workspace regression 2 | [False, True, 'p', 0, 'p', 200] | [False, True, 'p', 0, 'p', 200] | Passed |
| workspace regression 3 | [True, False, 'q', 8, 'q', 508] | [True, False, 'q', 8, 'q', 508] | Passed |
| workspace regression 4 | [True, False, 'q', 8, 'q', 208] | [True, False, 'q', 8, 'q', 208] | Passed |
| workspace regression 5 | [True, False, 'q', 0, 'q', 500] | [True, False, 'q', 0, 'q', 500] | Passed |
| workspace regression 6 | [False, False, 'p', 0, 'p', 200] | [False, False, 'p', 0, 'p', 200] | Passed |
SHA-256 / 8f86eea3a98990eaa6ba06f75b86f7310aa526b995773ed962f0bb1201691b9f
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:46.082694+00:00.
Case digest / cb4fd11e44bbea8057d3f1359def998ebca01451c56c3a2caa10b01416bc026a