{"abstract":"The tab workspace reports an incorrect group block order.","category":"Tab interfaces","checks":6,"contract":"Move a contiguous tab group as one block: retain member order, remove all originals, rebase target boundary by members preceding it and preserve selected identity.","evaluation_group":"s3-tabs-group-block-move","failed_approach":"The partial repair x['members'][:1] still violates a workspace boundary or normal case.","family":"s3-tab-interfaces-group-block-move-group-block-order","id":"FA-35971","implementations":{"attempt":{"sha256":"37ee3d34f341bebdc8ba1e0309a43ee9405a5ebdeb63d6e7ccab4ac89d84df06","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = x['members'][:1]\n    r1 = [t for t in x['tabs'] if t not in x['members']]\n    r2 = x['boundary']-sum(t in x['members'] for t in x['tabs'][:x['boundary']])\n    r3 = all(t in x['members'] for t in x['tabs'][min(x['tabs'].index(t) for t in x['members']):x['boundary']]) and min(x['tabs'].index(t) for t in x['members'])<=x['boundary']<=max(x['tabs'].index(t) for t in x['members'])+1\n    r4 = x['active']\n    r5 = len(x['members'])\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: [({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2])], 2: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2])], 3: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2])], 4: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2])], 5: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2])]}\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":"62b49b7f5ff9d9a97aa4110a21fb6f1af12e8020a3435c83f99c5148a42e72cc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = list(reversed(x['members']))\n    r1 = [t for t in x['tabs'] if t not in x['members']]\n    r2 = x['boundary']-sum(t in x['members'] for t in x['tabs'][:x['boundary']])\n    r3 = all(t in x['members'] for t in x['tabs'][min(x['tabs'].index(t) for t in x['members']):x['boundary']]) and min(x['tabs'].index(t) for t in x['members'])<=x['boundary']<=max(x['tabs'].index(t) for t in x['members'])+1\n    r4 = x['active']\n    r5 = len(x['members'])\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: [({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2])], 2: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2])], 3: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2])], 4: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2])], 5: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2])]}\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"},"fixed":{"sha256":"abf4f87c936354be01bf6710c6ee6fe0ff54599b68838d9f65e48b2b64d3344e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = [t for t in x['tabs'] if t in x['members']]\n    r1 = [t for t in x['tabs'] if t not in x['members']]\n    r2 = x['boundary']-sum(t in x['members'] for t in x['tabs'][:x['boundary']])\n    r3 = all(t in x['members'] for t in x['tabs'][min(x['tabs'].index(t) for t in x['members']):x['boundary']]) and min(x['tabs'].index(t) for t in x['members'])<=x['boundary']<=max(x['tabs'].index(t) for t in x['members'])+1\n    r4 = x['active']\n    r5 = len(x['members'])\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: [({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e'], 1, True, 'c', 2])], 2: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0'], 1, True, 'c', 2])], 3: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1'], 1, True, 'c', 2])], 4: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2'], 1, True, 'c', 2])], 5: [({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 0, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 0, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 3, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['c', 'd'], 'boundary': 5, 'active': 'c'}, [['c', 'd'], ['a', 'b', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'c', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 5, 'active': 'a'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 3, False, 'a', 2]), ({'tabs': ['a', 'b', 'c', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 'members': ['b', 'c'], 'boundary': 1, 'active': 'c'}, [['b', 'c'], ['a', 'd', 'e', 'background0', 'background1', 'background2', 'background3'], 1, True, 'c', 2])]}\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-group-block-move-group-block-order","generated_at":"2026-09-29T14:42:46.638767+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.","repair":"Use the stipulated workspace rule: [t for t in x['tabs'] if t in x['members']].","root_cause":"The group block order decision uses list(reversed(x['members'])) instead of [t for t in x['tabs'] if t in x['members']].","sha256":"3bb47360bb9c549625f2b90b8f2c001f69066bd947e57e511f4abd696f63f1c8","title":"Group block move: group block order · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.586,"exit_code":1,"observations":[{"actual":[["b"],["a","d","e"],3,false,"c",2],"check":"workspace regression 0","expected":[["b","c"],["a","d","e"],3,false,"c",2],"passed":false},{"actual":[["b"],["a","d","e"],0,false,"c",2],"check":"workspace regression 1","expected":[["b","c"],["a","d","e"],0,false,"c",2],"passed":false},{"actual":[["b"],["a","d","e"],1,true,"c",2],"check":"workspace regression 2","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":false},{"actual":[["c"],["a","b","e"],3,false,"c",2],"check":"workspace regression 3","expected":[["c","d"],["a","b","e"],3,false,"c",2],"passed":false},{"actual":[["b"],["a","d","e"],3,false,"a",2],"check":"workspace regression 4","expected":[["b","c"],["a","d","e"],3,false,"a",2],"passed":false},{"actual":[["b"],["a","d","e"],1,true,"c",2],"check":"workspace regression 5","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [[\"b\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [[\"b\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [[\"b\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [[\"c\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"c\", \"d\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [[\"b\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [[\"b\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":42.301,"exit_code":1,"observations":[{"actual":[["c","b"],["a","d","e"],3,false,"c",2],"check":"workspace regression 0","expected":[["b","c"],["a","d","e"],3,false,"c",2],"passed":false},{"actual":[["c","b"],["a","d","e"],0,false,"c",2],"check":"workspace regression 1","expected":[["b","c"],["a","d","e"],0,false,"c",2],"passed":false},{"actual":[["c","b"],["a","d","e"],1,true,"c",2],"check":"workspace regression 2","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":false},{"actual":[["d","c"],["a","b","e"],3,false,"c",2],"check":"workspace regression 3","expected":[["c","d"],["a","b","e"],3,false,"c",2],"passed":false},{"actual":[["c","b"],["a","d","e"],3,false,"a",2],"check":"workspace regression 4","expected":[["b","c"],["a","d","e"],3,false,"a",2],"passed":false},{"actual":[["c","b"],["a","d","e"],1,true,"c",2],"check":"workspace regression 5","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [[\"c\", \"b\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [[\"c\", \"b\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [[\"c\", \"b\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [[\"d\", \"c\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"c\", \"d\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [[\"c\", \"b\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [[\"c\", \"b\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.568,"exit_code":0,"observations":[{"actual":[["b","c"],["a","d","e"],3,false,"c",2],"check":"workspace regression 0","expected":[["b","c"],["a","d","e"],3,false,"c",2],"passed":true},{"actual":[["b","c"],["a","d","e"],0,false,"c",2],"check":"workspace regression 1","expected":[["b","c"],["a","d","e"],0,false,"c",2],"passed":true},{"actual":[["b","c"],["a","d","e"],1,true,"c",2],"check":"workspace regression 2","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":true},{"actual":[["c","d"],["a","b","e"],3,false,"c",2],"check":"workspace regression 3","expected":[["c","d"],["a","b","e"],3,false,"c",2],"passed":true},{"actual":[["b","c"],["a","d","e"],3,false,"a",2],"check":"workspace regression 4","expected":[["b","c"],["a","d","e"],3,false,"a",2],"passed":true},{"actual":[["b","c"],["a","d","e"],1,true,"c",2],"check":"workspace regression 5","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"passed\": true}, {\"check\": \"workspace regression 1\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"passed\": true}, {\"check\": \"workspace regression 2\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": true}, {\"check\": \"workspace regression 3\", \"actual\": [[\"c\", \"d\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"c\", \"d\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"passed\": true}, {\"check\": \"workspace regression 4\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"passed\": true}, {\"check\": \"workspace regression 5\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}