{"abstract":"The tab workspace reports an incorrect resize scroll delta.","category":"Tab interfaces","checks":6,"contract":"When tab widths change, keep the anchored tab at the same viewport coordinate using sums of preceding widths, then clamp to the new content range.","evaluation_group":"s3-tabs-strip-anchor-resize","failed_approach":"The partial repair x['new'][x['anchor']]-x['old'][x['anchor']] still violates a workspace boundary or normal case.","family":"s3-tab-interfaces-strip-anchor-resize-resize-scroll-delta","id":"FA-36466","implementations":{"attempt":{"sha256":"7b3c34e8d4b7a82250bc1632239c467573de7ded3cc3ff1a6f87b0f931314b99","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = sum(x['old'][:x['anchor']])\n    r1 = sum(x['new'][:x['anchor']])\n    r2 = sum(x['old'][:x['anchor']])-x['scroll']\n    r3 = x['new'][x['anchor']]-x['old'][x['anchor']]\n    r4 = max(0,sum(x['new'])-x['viewport'])\n    r5 = max(0,min(max(0,sum(x['new'])-x['viewport']),x['scroll']+sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']])))\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: [({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 130, 40, -10, 150, 90]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 0, 'scroll': 100, 'viewport': 150}, [0, 0, -100, 0, 150, 100]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 1, 'scroll': 100, 'viewport': 150}, [60, 90, -40, 30, 150, 130]), ({'old': [60, 80, 100, 70], 'new': [20, 20, 20, 20], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 40, 40, -100, 0, 0]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 0, 'viewport': 150}, [140, 130, 140, -10, 150, 0]), ({'old': [60, 80, 100, 70], 'new': [100, 120, 160, 180], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 220, 40, 80, 410, 180])], 2: [({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 260, 80, -20, 300, 180]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 0, 'scroll': 200, 'viewport': 300}, [0, 0, -200, 0, 300, 200]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 1, 'scroll': 200, 'viewport': 300}, [120, 180, -80, 60, 300, 260]), ({'old': [120, 160, 200, 140], 'new': [40, 40, 40, 40], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 80, 80, -200, 0, 0]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 0, 'viewport': 300}, [280, 260, 280, -20, 300, 0]), ({'old': [120, 160, 200, 140], 'new': [200, 240, 320, 360], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 440, 80, 160, 820, 360])], 3: [({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 390, 120, -30, 450, 270]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 0, 'scroll': 300, 'viewport': 450}, [0, 0, -300, 0, 450, 300]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 1, 'scroll': 300, 'viewport': 450}, [180, 270, -120, 90, 450, 390]), ({'old': [180, 240, 300, 210], 'new': [60, 60, 60, 60], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 120, 120, -300, 0, 0]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 0, 'viewport': 450}, [420, 390, 420, -30, 450, 0]), ({'old': [180, 240, 300, 210], 'new': [300, 360, 480, 540], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 660, 120, 240, 1230, 540])], 4: [({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 520, 160, -40, 600, 360]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 0, 'scroll': 400, 'viewport': 600}, [0, 0, -400, 0, 600, 400]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 1, 'scroll': 400, 'viewport': 600}, [240, 360, -160, 120, 600, 520]), ({'old': [240, 320, 400, 280], 'new': [80, 80, 80, 80], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 160, 160, -400, 0, 0]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 0, 'viewport': 600}, [560, 520, 560, -40, 600, 0]), ({'old': [240, 320, 400, 280], 'new': [400, 480, 640, 720], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 880, 160, 320, 1640, 720])], 5: [({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 650, 200, -50, 750, 450]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 0, 'scroll': 500, 'viewport': 750}, [0, 0, -500, 0, 750, 500]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 1, 'scroll': 500, 'viewport': 750}, [300, 450, -200, 150, 750, 650]), ({'old': [300, 400, 500, 350], 'new': [100, 100, 100, 100], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 200, 200, -500, 0, 0]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 0, 'viewport': 750}, [700, 650, 700, -50, 750, 0]), ({'old': [300, 400, 500, 350], 'new': [500, 600, 800, 900], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 1100, 200, 400, 2050, 900])]}\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":"0700c055a850def885540f3188ddc7612dcc34351356642bf672bb6244ad38c0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = sum(x['old'][:x['anchor']])\n    r1 = sum(x['new'][:x['anchor']])\n    r2 = sum(x['old'][:x['anchor']])-x['scroll']\n    r3 = sum(x['new'])-sum(x['old'])\n    r4 = max(0,sum(x['new'])-x['viewport'])\n    r5 = max(0,min(max(0,sum(x['new'])-x['viewport']),x['scroll']+sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']])))\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: [({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 130, 40, -10, 150, 90]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 0, 'scroll': 100, 'viewport': 150}, [0, 0, -100, 0, 150, 100]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 1, 'scroll': 100, 'viewport': 150}, [60, 90, -40, 30, 150, 130]), ({'old': [60, 80, 100, 70], 'new': [20, 20, 20, 20], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 40, 40, -100, 0, 0]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 0, 'viewport': 150}, [140, 130, 140, -10, 150, 0]), ({'old': [60, 80, 100, 70], 'new': [100, 120, 160, 180], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 220, 40, 80, 410, 180])], 2: [({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 260, 80, -20, 300, 180]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 0, 'scroll': 200, 'viewport': 300}, [0, 0, -200, 0, 300, 200]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 1, 'scroll': 200, 'viewport': 300}, [120, 180, -80, 60, 300, 260]), ({'old': [120, 160, 200, 140], 'new': [40, 40, 40, 40], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 80, 80, -200, 0, 0]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 0, 'viewport': 300}, [280, 260, 280, -20, 300, 0]), ({'old': [120, 160, 200, 140], 'new': [200, 240, 320, 360], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 440, 80, 160, 820, 360])], 3: [({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 390, 120, -30, 450, 270]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 0, 'scroll': 300, 'viewport': 450}, [0, 0, -300, 0, 450, 300]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 1, 'scroll': 300, 'viewport': 450}, [180, 270, -120, 90, 450, 390]), ({'old': [180, 240, 300, 210], 'new': [60, 60, 60, 60], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 120, 120, -300, 0, 0]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 0, 'viewport': 450}, [420, 390, 420, -30, 450, 0]), ({'old': [180, 240, 300, 210], 'new': [300, 360, 480, 540], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 660, 120, 240, 1230, 540])], 4: [({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 520, 160, -40, 600, 360]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 0, 'scroll': 400, 'viewport': 600}, [0, 0, -400, 0, 600, 400]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 1, 'scroll': 400, 'viewport': 600}, [240, 360, -160, 120, 600, 520]), ({'old': [240, 320, 400, 280], 'new': [80, 80, 80, 80], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 160, 160, -400, 0, 0]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 0, 'viewport': 600}, [560, 520, 560, -40, 600, 0]), ({'old': [240, 320, 400, 280], 'new': [400, 480, 640, 720], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 880, 160, 320, 1640, 720])], 5: [({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 650, 200, -50, 750, 450]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 0, 'scroll': 500, 'viewport': 750}, [0, 0, -500, 0, 750, 500]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 1, 'scroll': 500, 'viewport': 750}, [300, 450, -200, 150, 750, 650]), ({'old': [300, 400, 500, 350], 'new': [100, 100, 100, 100], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 200, 200, -500, 0, 0]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 0, 'viewport': 750}, [700, 650, 700, -50, 750, 0]), ({'old': [300, 400, 500, 350], 'new': [500, 600, 800, 900], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 1100, 200, 400, 2050, 900])]}\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":"cac1a2f07577ac0bcf3f221b95a83cb06a70fa2fe9e4c51c994f946019a94b8d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    r0 = sum(x['old'][:x['anchor']])\n    r1 = sum(x['new'][:x['anchor']])\n    r2 = sum(x['old'][:x['anchor']])-x['scroll']\n    r3 = sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']])\n    r4 = max(0,sum(x['new'])-x['viewport'])\n    r5 = max(0,min(max(0,sum(x['new'])-x['viewport']),x['scroll']+sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']])))\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: [({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 130, 40, -10, 150, 90]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 0, 'scroll': 100, 'viewport': 150}, [0, 0, -100, 0, 150, 100]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 1, 'scroll': 100, 'viewport': 150}, [60, 90, -40, 30, 150, 130]), ({'old': [60, 80, 100, 70], 'new': [20, 20, 20, 20], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 40, 40, -100, 0, 0]), ({'old': [60, 80, 100, 70], 'new': [90, 40, 100, 70], 'anchor': 2, 'scroll': 0, 'viewport': 150}, [140, 130, 140, -10, 150, 0]), ({'old': [60, 80, 100, 70], 'new': [100, 120, 160, 180], 'anchor': 2, 'scroll': 100, 'viewport': 150}, [140, 220, 40, 80, 410, 180])], 2: [({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 260, 80, -20, 300, 180]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 0, 'scroll': 200, 'viewport': 300}, [0, 0, -200, 0, 300, 200]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 1, 'scroll': 200, 'viewport': 300}, [120, 180, -80, 60, 300, 260]), ({'old': [120, 160, 200, 140], 'new': [40, 40, 40, 40], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 80, 80, -200, 0, 0]), ({'old': [120, 160, 200, 140], 'new': [180, 80, 200, 140], 'anchor': 2, 'scroll': 0, 'viewport': 300}, [280, 260, 280, -20, 300, 0]), ({'old': [120, 160, 200, 140], 'new': [200, 240, 320, 360], 'anchor': 2, 'scroll': 200, 'viewport': 300}, [280, 440, 80, 160, 820, 360])], 3: [({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 390, 120, -30, 450, 270]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 0, 'scroll': 300, 'viewport': 450}, [0, 0, -300, 0, 450, 300]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 1, 'scroll': 300, 'viewport': 450}, [180, 270, -120, 90, 450, 390]), ({'old': [180, 240, 300, 210], 'new': [60, 60, 60, 60], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 120, 120, -300, 0, 0]), ({'old': [180, 240, 300, 210], 'new': [270, 120, 300, 210], 'anchor': 2, 'scroll': 0, 'viewport': 450}, [420, 390, 420, -30, 450, 0]), ({'old': [180, 240, 300, 210], 'new': [300, 360, 480, 540], 'anchor': 2, 'scroll': 300, 'viewport': 450}, [420, 660, 120, 240, 1230, 540])], 4: [({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 520, 160, -40, 600, 360]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 0, 'scroll': 400, 'viewport': 600}, [0, 0, -400, 0, 600, 400]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 1, 'scroll': 400, 'viewport': 600}, [240, 360, -160, 120, 600, 520]), ({'old': [240, 320, 400, 280], 'new': [80, 80, 80, 80], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 160, 160, -400, 0, 0]), ({'old': [240, 320, 400, 280], 'new': [360, 160, 400, 280], 'anchor': 2, 'scroll': 0, 'viewport': 600}, [560, 520, 560, -40, 600, 0]), ({'old': [240, 320, 400, 280], 'new': [400, 480, 640, 720], 'anchor': 2, 'scroll': 400, 'viewport': 600}, [560, 880, 160, 320, 1640, 720])], 5: [({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 650, 200, -50, 750, 450]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 0, 'scroll': 500, 'viewport': 750}, [0, 0, -500, 0, 750, 500]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 1, 'scroll': 500, 'viewport': 750}, [300, 450, -200, 150, 750, 650]), ({'old': [300, 400, 500, 350], 'new': [100, 100, 100, 100], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 200, 200, -500, 0, 0]), ({'old': [300, 400, 500, 350], 'new': [450, 200, 500, 350], 'anchor': 2, 'scroll': 0, 'viewport': 750}, [700, 650, 700, -50, 750, 0]), ({'old': [300, 400, 500, 350], 'new': [500, 600, 800, 900], 'anchor': 2, 'scroll': 500, 'viewport': 750}, [700, 1100, 200, 400, 2050, 900])]}\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-strip-anchor-resize-resize-scroll-delta","generated_at":"2026-09-29T14:42:51.659526+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: sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']]).","root_cause":"The resize scroll delta decision uses sum(x['new'])-sum(x['old']) instead of sum(x['new'][:x['anchor']])-sum(x['old'][:x['anchor']]).","sha256":"fa2d62ec49152f673ed45f51fe107daaa97c3e3407a3d652b7771b3d829f0d9c","title":"Strip anchor resize: resize scroll delta · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.673,"exit_code":1,"observations":[{"actual":[140,130,40,0,150,90],"check":"workspace regression 0","expected":[140,130,40,-10,150,90],"passed":false},{"actual":[0,0,-100,30,150,100],"check":"workspace regression 1","expected":[0,0,-100,0,150,100],"passed":false},{"actual":[60,90,-40,-40,150,130],"check":"workspace regression 2","expected":[60,90,-40,30,150,130],"passed":false},{"actual":[140,40,40,-80,0,0],"check":"workspace regression 3","expected":[140,40,40,-100,0,0],"passed":false},{"actual":[140,130,140,0,150,0],"check":"workspace regression 4","expected":[140,130,140,-10,150,0],"passed":false},{"actual":[140,220,40,60,410,180],"check":"workspace regression 5","expected":[140,220,40,80,410,180],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [140, 130, 40, 0, 150, 90], \"expected\": [140, 130, 40, -10, 150, 90], \"passed\": false}, {\"check\": \"workspace regression 1\", \"actual\": [0, 0, -100, 30, 150, 100], \"expected\": [0, 0, -100, 0, 150, 100], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [60, 90, -40, -40, 150, 130], \"expected\": [60, 90, -40, 30, 150, 130], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [140, 40, 40, -80, 0, 0], \"expected\": [140, 40, 40, -100, 0, 0], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [140, 130, 140, 0, 150, 0], \"expected\": [140, 130, 140, -10, 150, 0], \"passed\": false}, {\"check\": \"workspace regression 5\", \"actual\": [140, 220, 40, 60, 410, 180], \"expected\": [140, 220, 40, 80, 410, 180], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.831,"exit_code":1,"observations":[{"actual":[140,130,40,-10,150,90],"check":"workspace regression 0","expected":[140,130,40,-10,150,90],"passed":true},{"actual":[0,0,-100,-10,150,100],"check":"workspace regression 1","expected":[0,0,-100,0,150,100],"passed":false},{"actual":[60,90,-40,-10,150,130],"check":"workspace regression 2","expected":[60,90,-40,30,150,130],"passed":false},{"actual":[140,40,40,-230,0,0],"check":"workspace regression 3","expected":[140,40,40,-100,0,0],"passed":false},{"actual":[140,130,140,-10,150,0],"check":"workspace regression 4","expected":[140,130,140,-10,150,0],"passed":true},{"actual":[140,220,40,250,410,180],"check":"workspace regression 5","expected":[140,220,40,80,410,180],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [140, 130, 40, -10, 150, 90], \"expected\": [140, 130, 40, -10, 150, 90], \"passed\": true}, {\"check\": \"workspace regression 1\", \"actual\": [0, 0, -100, -10, 150, 100], \"expected\": [0, 0, -100, 0, 150, 100], \"passed\": false}, {\"check\": \"workspace regression 2\", \"actual\": [60, 90, -40, -10, 150, 130], \"expected\": [60, 90, -40, 30, 150, 130], \"passed\": false}, {\"check\": \"workspace regression 3\", \"actual\": [140, 40, 40, -230, 0, 0], \"expected\": [140, 40, 40, -100, 0, 0], \"passed\": false}, {\"check\": \"workspace regression 4\", \"actual\": [140, 130, 140, -10, 150, 0], \"expected\": [140, 130, 140, -10, 150, 0], \"passed\": true}, {\"check\": \"workspace regression 5\", \"actual\": [140, 220, 40, 250, 410, 180], \"expected\": [140, 220, 40, 80, 410, 180], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.713,"exit_code":0,"observations":[{"actual":[140,130,40,-10,150,90],"check":"workspace regression 0","expected":[140,130,40,-10,150,90],"passed":true},{"actual":[0,0,-100,0,150,100],"check":"workspace regression 1","expected":[0,0,-100,0,150,100],"passed":true},{"actual":[60,90,-40,30,150,130],"check":"workspace regression 2","expected":[60,90,-40,30,150,130],"passed":true},{"actual":[140,40,40,-100,0,0],"check":"workspace regression 3","expected":[140,40,40,-100,0,0],"passed":true},{"actual":[140,130,140,-10,150,0],"check":"workspace regression 4","expected":[140,130,140,-10,150,0],"passed":true},{"actual":[140,220,40,80,410,180],"check":"workspace regression 5","expected":[140,220,40,80,410,180],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"workspace regression 0\", \"actual\": [140, 130, 40, -10, 150, 90], \"expected\": [140, 130, 40, -10, 150, 90], \"passed\": true}, {\"check\": \"workspace regression 1\", \"actual\": [0, 0, -100, 0, 150, 100], \"expected\": [0, 0, -100, 0, 150, 100], \"passed\": true}, {\"check\": \"workspace regression 2\", \"actual\": [60, 90, -40, 30, 150, 130], \"expected\": [60, 90, -40, 30, 150, 130], \"passed\": true}, {\"check\": \"workspace regression 3\", \"actual\": [140, 40, 40, -100, 0, 0], \"expected\": [140, 40, 40, -100, 0, 0], \"passed\": true}, {\"check\": \"workspace regression 4\", \"actual\": [140, 130, 140, -10, 150, 0], \"expected\": [140, 130, 140, -10, 150, 0], \"passed\": true}, {\"check\": \"workspace regression 5\", \"actual\": [140, 220, 40, 80, 410, 180], \"expected\": [140, 220, 40, 80, 410, 180], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}