{"abstract":"The tab workspace reports an incorrect group active retention.","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-active-retention","id":"FA-35991","implementations":{"attempt":{"sha256":"1a060c3cfff31a9419260059d342029f12cbf6d00de3a40d82152746cc43cab9","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['members'][-1]\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":"1fee9319fc6198e1926e9b834a76274d1fe6f81e0f5e06905ff33129c80009be","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['members'][0]\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-active-retention","generated_at":"2026-09-29T14:42:46.911106+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: x['active'].","root_cause":"The group active retention decision uses x['members'][0] instead of x['active'].","sha256":"0508f02358a2b6c2351310e5cb3c37439aeacc9b2b6f61e1b3ca0f6ca9daecc0","title":"Group block move: group active retention · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.077,"exit_code":1,"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,"d",2],"check":"workspace regression 3","expected":[["c","d"],["a","b","e"],3,false,"c",2],"passed":false},{"actual":[["b","c"],["a","d","e"],3,false,"c",2],"check":"workspace regression 4","expected":[["b","c"],["a","d","e"],3,false,"a",2],"passed":false},{"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":false,"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, \"d\", 2], \"expected\": [[\"c\", \"d\"], [\"a\", \"b\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"passed\": false}, {\"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\": false}\n"},"broken":{"elapsed_ms":40.443,"exit_code":1,"observations":[{"actual":[["b","c"],["a","d","e"],3,false,"b",2],"check":"workspace regression 0","expected":[["b","c"],["a","d","e"],3,false,"c",2],"passed":false},{"actual":[["b","c"],["a","d","e"],0,false,"b",2],"check":"workspace regression 1","expected":[["b","c"],["a","d","e"],0,false,"c",2],"passed":false},{"actual":[["b","c"],["a","d","e"],1,true,"b",2],"check":"workspace regression 2","expected":[["b","c"],["a","d","e"],1,true,"c",2],"passed":false},{"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,"b",2],"check":"workspace regression 4","expected":[["b","c"],["a","d","e"],3,false,"a",2],"passed":false},{"actual":[["b","c"],["a","d","e"],1,true,"b",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\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"b\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"b\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 0, false, \"c\", 2], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"b\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}, {\"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, \"b\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 3, false, \"a\", 2], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"b\", 2], \"expected\": [[\"b\", \"c\"], [\"a\", \"d\", \"e\"], 1, true, \"c\", 2], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.548,"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"}