{"abstract":"The tab workspace reports an incorrect all view label update.","category":"Tab interfaces","checks":6,"contract":"Renaming an open document updates path and basename for every view of that document while retaining view IDs, dirty state and unrelated document labels.","contract_signature":"x","evaluation_group":"s3-tabs-open-document-rename","failed_approach":"The partial repair [x['active']] still violates a workspace boundary or normal case.","family":"s3-tab-interfaces-open-document-rename-all-view-label-update","id":"FA-36241","implementations":{"attempt":{"sha256":"1f84403ee90b6971bacd112f0800b266ff05c1a1b0f3c20924f9327c45f8e58c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = [x['active']]\n    r1 = x['new_path'].rsplit('/',1)[-1]\n    r2 = {d:(x['new_path'] if d==x['renamed'] else p) for d,p in x['paths'].items()}\n    r3 = list(x['views'])\n    r4 = x['dirty']\n    r5 = x['active']\n    return [r0,r1,r2,r3,r4,r5]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3'])], 2: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3'])], 3: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3'])], 4: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e', 'extra2': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1', 'extra2'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3'])], 5: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e', 'extra2': 'e', 'extra3': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1', 'extra2', 'extra3'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3'])]}\nfor i, (inputs, expected) in enumerate(fixtures[N]):\n    check(\"workspace regression \"+str(i), solve(inputs), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"c47c2a190e84a59b8404d9498e6f74512ffb7f73113c0a56c07a05453de8fca4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = [next(v for v,d in x['views'].items() if d==x['renamed'])]\n    r1 = x['new_path'].rsplit('/',1)[-1]\n    r2 = {d:(x['new_path'] if d==x['renamed'] else p) for d,p in x['paths'].items()}\n    r3 = list(x['views'])\n    r4 = x['dirty']\n    r5 = x['active']\n    return [r0,r1,r2,r3,r4,r5]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3'], ['d'], 'v3'])], 2: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0'], ['d'], 'v3'])], 3: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1'], ['d'], 'v3'])], 4: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e', 'extra2': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1', 'extra2'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2'], ['d'], 'v3'])], 5: [({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'e', 'extra1': 'e', 'extra2': 'e', 'extra3': 'e'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'e', 'new_path': '/new/z.txt', 'dirty': ['d'], 'active': 'v3'}, [['v2', 'extra0', 'extra1', 'extra2', 'extra3'], 'z.txt', {'d': '/old/a.txt', 'e': '/new/z.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': [], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], [], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/new/c.txt', 'dirty': ['d'], 'active': 'v2'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': '/new/c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v2']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': 'c.txt', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'c.txt', {'d': 'c.txt', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3']), ({'views': {'v1': 'd', 'v2': 'e', 'v3': 'd', 'extra0': 'd', 'extra1': 'd', 'extra2': 'd', 'extra3': 'd'}, 'paths': {'d': '/old/a.txt', 'e': '/other/b.txt'}, 'renamed': 'd', 'new_path': '/deep/path/report.md', 'dirty': ['d'], 'active': 'v3'}, [['v1', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], 'report.md', {'d': '/deep/path/report.md', 'e': '/other/b.txt'}, ['v1', 'v2', 'v3', 'extra0', 'extra1', 'extra2', 'extra3'], ['d'], 'v3'])]}\nfor i, (inputs, expected) in enumerate(fixtures[N]):\n    check(\"workspace regression \"+str(i), solve(inputs), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-tab-interfaces-open-document-rename-all-view-label-update","generated_at":"2026-09-29T14:42:49.632375+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Offline tab/panel workspace behavior; no browser or desktop framework is emulated.","root_cause":"The all view label update decision uses [next(v for v,d in x['views'].items() if d==x['renamed'])] instead of [v for v,d in x['views'].items() if d==x['renamed']].","sha256":"73bc6d62267440b4c3a6d0e541b85c396644def535ca2d4cec548b05b1381d08","title":"Open document rename: all view label update · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":42.62,"exit_code":1,"observations":[{"actual":[["v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 0","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false},{"actual":[["v3"],"z.txt",{"d":"/old/a.txt","e":"/new/z.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 1","expected":[["v2"],"z.txt",{"d":"/old/a.txt","e":"/new/z.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false},{"actual":[["v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],[],"v3"],"check":"workspace regression 2","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],[],"v3"],"passed":false},{"actual":[["v2"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v2"],"check":"workspace regression 3","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v2"],"passed":false},{"actual":[["v3"],"c.txt",{"d":"c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 4","expected":[["v1","v3"],"c.txt",{"d":"c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false},{"actual":[["v3"],"report.md",{"d":"/deep/path/report.md","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 5","expected":[["v1","v3"],"report.md",{"d":"/deep/path/report.md","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [[\"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [[\"v3\"], \"z.txt\", {\"d\": \"/old/a.txt\", \"e\": \"/new/z.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v2\"], \"z.txt\", {\"d\": \"/old/a.txt\", \"e\": \"/new/z.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [[\"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [[\"v2\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v2\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v2\"], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [[\"v3\"], \"c.txt\", {\"d\": \"c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [[\"v3\"], \"report.md\", {\"d\": \"/deep/path/report.md\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"report.md\", {\"d\": \"/deep/path/report.md\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.587,"exit_code":1,"observations":[{"actual":[["v1"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 0","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false},{"actual":[["v2"],"z.txt",{"d":"/old/a.txt","e":"/new/z.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 1","expected":[["v2"],"z.txt",{"d":"/old/a.txt","e":"/new/z.txt"},["v1","v2","v3"],["d"],"v3"],"passed":true},{"actual":[["v1"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],[],"v3"],"check":"workspace regression 2","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],[],"v3"],"passed":false},{"actual":[["v1"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v2"],"check":"workspace regression 3","expected":[["v1","v3"],"c.txt",{"d":"/new/c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v2"],"passed":false},{"actual":[["v1"],"c.txt",{"d":"c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 4","expected":[["v1","v3"],"c.txt",{"d":"c.txt","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false},{"actual":[["v1"],"report.md",{"d":"/deep/path/report.md","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"check":"workspace regression 5","expected":[["v1","v3"],"report.md",{"d":"/deep/path/report.md","e":"/other/b.txt"},["v1","v2","v3"],["d"],"v3"],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [[\"v1\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [[\"v2\"], \"z.txt\", {\"d\": \"/old/a.txt\", \"e\": \"/new/z.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v2\"], \"z.txt\", {\"d\": \"/old/a.txt\", \"e\": \"/new/z.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": true}, {\"check\": \"workspace regression 2\", \"actual\": [[\"v1\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [[\"v1\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v2\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"/new/c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v2\"], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [[\"v1\"], \"c.txt\", {\"d\": \"c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"c.txt\", {\"d\": \"c.txt\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [[\"v1\"], \"report.md\", {\"d\": \"/deep/path/report.md\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"expected\": [[\"v1\", \"v3\"], \"report.md\", {\"d\": \"/deep/path/report.md\", \"e\": \"/other/b.txt\"}, [\"v1\", \"v2\", \"v3\"], [\"d\"], \"v3\"], \"passed\": false}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}