{"abstract":"The tab workspace reports an incorrect horizontal edge choice.","category":"Tab interfaces","checks":8,"contract":"A dropped tab creates a new ungrouped pane only in an edge docking zone; center targets join the destination group. Center drops into the source pane are no-ops. Corners resolve to the nearest normalized edge.","evaluation_group":"s3-tabs-dock-target-regions","failed_approach":"The partial repair 'right' still violates a workspace boundary or normal case.","family":"s3-tab-interfaces-dock-target-regions-horizontal-edge-choice","id":"FA-36396","implementations":{"attempt":{"sha256":"6bb1391987ae73327fae284379d10c8067e1a62619fc3daf58bd7b9275041429","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']\n    r1 = 'right'\n    r2 = 'top' if x['py']<x['height']/2 else 'bottom'\n    r3 = 'horizontal' if min(x['px'],x['width']-x['px'])*x['height']<=min(x['py'],x['height']-x['py'])*x['width'] else 'vertical'\n    r4 = x['source_pane']==x['target_pane'] and (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge'])\n    r5 = x['target_group'] if (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']) else None\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: [({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 190, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 100, 'py': 95, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 5, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 2: [({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 380, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 200, 'py': 190, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 10, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 3: [({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 570, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 300, 'py': 285, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 15, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 4: [({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 760, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 400, 'py': 380, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 20, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 5: [({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 950, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 500, 'py': 475, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 25, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])]}\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":"2a11cfcfe5901f68d900cd359548c488a73661a495601684f6eae1eef15c5071","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']\n    r1 = 'left'\n    r2 = 'top' if x['py']<x['height']/2 else 'bottom'\n    r3 = 'horizontal' if min(x['px'],x['width']-x['px'])*x['height']<=min(x['py'],x['height']-x['py'])*x['width'] else 'vertical'\n    r4 = x['source_pane']==x['target_pane'] and (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge'])\n    r5 = x['target_group'] if (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']) else None\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: [({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 190, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 100, 'py': 95, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 5, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 2: [({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 380, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 200, 'py': 190, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 10, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 3: [({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 570, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 300, 'py': 285, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 15, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 4: [({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 760, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 400, 'py': 380, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 20, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 5: [({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 950, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 500, 'py': 475, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 25, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])]}\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":"89e007b1080aba02010db7e5e13b007b9a4d3a8d4e7c1a0f70cc6847cd533368","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']\n    r1 = 'left' if x['px']<x['width']/2 else 'right'\n    r2 = 'top' if x['py']<x['height']/2 else 'bottom'\n    r3 = 'horizontal' if min(x['px'],x['width']-x['px'])*x['height']<=min(x['py'],x['height']-x['py'])*x['width'] else 'vertical'\n    r4 = x['source_pane']==x['target_pane'] and (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge'])\n    r5 = x['target_group'] if (x['edge']<=x['px']<x['width']-x['edge'] and x['edge']<=x['py']<x['height']-x['edge']) else None\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: [({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 190, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 100, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 100, 'py': 95, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 5, 'py': 5, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 100, 'py': 50, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 10, 'py': 70, 'width': 200, 'height': 100, 'edge': 20, 'gutter': 4, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 2: [({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 380, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 200, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 200, 'py': 190, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 10, 'py': 10, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 200, 'py': 100, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 20, 'py': 140, 'width': 400, 'height': 200, 'edge': 40, 'gutter': 8, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 3: [({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 570, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 300, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 300, 'py': 285, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 15, 'py': 15, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 300, 'py': 150, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 30, 'py': 210, 'width': 600, 'height': 300, 'edge': 60, 'gutter': 12, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 4: [({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 760, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 400, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 400, 'py': 380, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 20, 'py': 20, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 400, 'py': 200, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 40, 'py': 280, 'width': 800, 'height': 400, 'edge': 80, 'gutter': 16, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])], 5: [({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', False, 'g']), ({'px': 950, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'horizontal', False, None]), ({'px': 500, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'top', 'vertical', False, None]), ({'px': 500, 'py': 475, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'right', 'bottom', 'vertical', False, None]), ({'px': 25, 'py': 25, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'p', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'top', 'horizontal', False, None]), ({'px': 500, 'py': 250, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [True, 'right', 'bottom', 'horizontal', True, 'g']), ({'px': 50, 'py': 350, 'width': 1000, 'height': 500, 'edge': 100, 'gutter': 20, 'source_pane': 'q', 'target_pane': 'q', 'new_pane': 'r', 'target_group': 'g'}, [False, 'left', 'bottom', 'horizontal', False, None])]}\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-dock-target-regions-horizontal-edge-choice","generated_at":"2026-09-29T14:42:50.954956+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: 'left' if x['px']<x['width']/2 else 'right'.","root_cause":"The horizontal edge choice decision uses 'left' instead of 'left' if x['px']<x['width']/2 else 'right'.","sha256":"5ad7e1bedacf15e9940749e52c7ae6e1293a885b7498c60d7ad02c86e20a45ec","title":"Dock target regions: horizontal edge choice · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":53.875,"exit_code":1,"observations":[{"actual":[false,"right","bottom","horizontal",false,null],"check":"workspace regression 0","expected":[false,"left","bottom","horizontal",false,null],"passed":false},{"actual":[true,"right","bottom","horizontal",false,"g"],"check":"workspace regression 1","expected":[true,"right","bottom","horizontal",false,"g"],"passed":true},{"actual":[false,"right","bottom","horizontal",false,null],"check":"workspace regression 2","expected":[false,"right","bottom","horizontal",false,null],"passed":true},{"actual":[false,"right","top","vertical",false,null],"check":"workspace regression 3","expected":[false,"right","top","vertical",false,null],"passed":true},{"actual":[false,"right","bottom","vertical",false,null],"check":"workspace regression 4","expected":[false,"right","bottom","vertical",false,null],"passed":true},{"actual":[false,"right","top","horizontal",false,null],"check":"workspace regression 5","expected":[false,"left","top","horizontal",false,null],"passed":false},{"actual":[true,"right","bottom","horizontal",true,"g"],"check":"workspace regression 6","expected":[true,"right","bottom","horizontal",true,"g"],"passed":true},{"actual":[false,"right","bottom","horizontal",false,null],"check":"workspace regression 7","expected":[false,"left","bottom","horizontal",false,null],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [true, \"right\", \"bottom\", \"horizontal\", false, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", false, \"g\"], \"passed\": true}, {\"check\": \"workspace regression 2\", \"actual\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 3\", \"actual\": [false, \"right\", \"top\", \"vertical\", false, null], \"expected\": [false, \"right\", \"top\", \"vertical\", false, null], \"passed\": true}, {\"check\": \"workspace regression 4\", \"actual\": [false, \"right\", \"bottom\", \"vertical\", false, null], \"expected\": [false, \"right\", \"bottom\", \"vertical\", false, null], \"passed\": true}, {\"check\": \"workspace regression 5\", \"actual\": [false, \"right\", \"top\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"top\", \"horizontal\", false, null], \"passed\": false}, {\"check\": \"workspace regression 6\", \"actual\": [true, \"right\", \"bottom\", \"horizontal\", true, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", true, \"g\"], \"passed\": true}, {\"check\": \"workspace regression 7\", \"actual\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":49.89,"exit_code":1,"observations":[{"actual":[false,"left","bottom","horizontal",false,null],"check":"workspace regression 0","expected":[false,"left","bottom","horizontal",false,null],"passed":true},{"actual":[true,"left","bottom","horizontal",false,"g"],"check":"workspace regression 1","expected":[true,"right","bottom","horizontal",false,"g"],"passed":false},{"actual":[false,"left","bottom","horizontal",false,null],"check":"workspace regression 2","expected":[false,"right","bottom","horizontal",false,null],"passed":false},{"actual":[false,"left","top","vertical",false,null],"check":"workspace regression 3","expected":[false,"right","top","vertical",false,null],"passed":false},{"actual":[false,"left","bottom","vertical",false,null],"check":"workspace regression 4","expected":[false,"right","bottom","vertical",false,null],"passed":false},{"actual":[false,"left","top","horizontal",false,null],"check":"workspace regression 5","expected":[false,"left","top","horizontal",false,null],"passed":true},{"actual":[true,"left","bottom","horizontal",true,"g"],"check":"workspace regression 6","expected":[true,"right","bottom","horizontal",true,"g"],"passed":false},{"actual":[false,"left","bottom","horizontal",false,null],"check":"workspace regression 7","expected":[false,"left","bottom","horizontal",false,null],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 1\", \"actual\": [true, \"left\", \"bottom\", \"horizontal\", false, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", false, \"g\"], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [false, \"left\", \"top\", \"vertical\", false, null], \"expected\": [false, \"right\", \"top\", \"vertical\", false, null], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [false, \"left\", \"bottom\", \"vertical\", false, null], \"expected\": [false, \"right\", \"bottom\", \"vertical\", false, null], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [false, \"left\", \"top\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"top\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 6\", \"actual\": [true, \"left\", \"bottom\", \"horizontal\", true, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", true, \"g\"], \"passed\": false}, {\"check\": \"workspace regression 7\", \"actual\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":47.481,"exit_code":0,"observations":[{"actual":[false,"left","bottom","horizontal",false,null],"check":"workspace regression 0","expected":[false,"left","bottom","horizontal",false,null],"passed":true},{"actual":[true,"right","bottom","horizontal",false,"g"],"check":"workspace regression 1","expected":[true,"right","bottom","horizontal",false,"g"],"passed":true},{"actual":[false,"right","bottom","horizontal",false,null],"check":"workspace regression 2","expected":[false,"right","bottom","horizontal",false,null],"passed":true},{"actual":[false,"right","top","vertical",false,null],"check":"workspace regression 3","expected":[false,"right","top","vertical",false,null],"passed":true},{"actual":[false,"right","bottom","vertical",false,null],"check":"workspace regression 4","expected":[false,"right","bottom","vertical",false,null],"passed":true},{"actual":[false,"left","top","horizontal",false,null],"check":"workspace regression 5","expected":[false,"left","top","horizontal",false,null],"passed":true},{"actual":[true,"right","bottom","horizontal",true,"g"],"check":"workspace regression 6","expected":[true,"right","bottom","horizontal",true,"g"],"passed":true},{"actual":[false,"left","bottom","horizontal",false,null],"check":"workspace regression 7","expected":[false,"left","bottom","horizontal",false,null],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 1\", \"actual\": [true, \"right\", \"bottom\", \"horizontal\", false, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", false, \"g\"], \"passed\": true}, {\"check\": \"workspace regression 2\", \"actual\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"right\", \"bottom\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 3\", \"actual\": [false, \"right\", \"top\", \"vertical\", false, null], \"expected\": [false, \"right\", \"top\", \"vertical\", false, null], \"passed\": true}, {\"check\": \"workspace regression 4\", \"actual\": [false, \"right\", \"bottom\", \"vertical\", false, null], \"expected\": [false, \"right\", \"bottom\", \"vertical\", false, null], \"passed\": true}, {\"check\": \"workspace regression 5\", \"actual\": [false, \"left\", \"top\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"top\", \"horizontal\", false, null], \"passed\": true}, {\"check\": \"workspace regression 6\", \"actual\": [true, \"right\", \"bottom\", \"horizontal\", true, \"g\"], \"expected\": [true, \"right\", \"bottom\", \"horizontal\", true, \"g\"], \"passed\": true}, {\"check\": \"workspace regression 7\", \"actual\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"expected\": [false, \"left\", \"bottom\", \"horizontal\", false, null], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}