{"abstract":"Overscan fails to include rows before the viewport.","category":"Viewport layout","checks":8,"contract":"Rows overlap a half-open viewport using cumulative measured heights; overscan expands both sides and clamps to valid row indices.","evaluation_group":"xi-virtual-window","failed_approach":"Adding overscan skips visible rows instead of expanding coverage.","family":"xi-virtual-window-before-overscan","id":"FA-8321","implementations":{"attempt":{"sha256":"4183e00cf3735a479780cf0441223097fb89e90fb98478f4c1e83a660f210cc3","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(heights, offset, viewport, overscan):\n    positions = [0]\n    for height in heights: positions.append(positions[-1] + height)\n    visible = [i for i in range(len(heights)) if positions[i+1] > offset and positions[i] < offset + viewport]\n    if not visible: return []\n    lo = max(0, visible[0] + overscan)\n    hi = min(len(heights), visible[-1] + 1 + overscan)\n    return list(range(lo, hi))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('variable', solve([10,30,5], 15, 10, 0), [1])\ncheck('top edge', solve([10,10,10], 10, 10, 0), [1])\ncheck('partial top', solve([10,10,10], 5, 10, 0), [0, 1])\ncheck('partial bottom', solve([10,10,10], 0, 15, 0), [0, 1])\ncheck('overscan', solve([10]*6, 20, 10, 1), [1, 2, 3])\ncheck('outside', solve([10,10], 30, 5, 1), [])\ncheck('parameterized measured heights', solve([N]*6, 2*N, N, 1), [1,2,3])\nfor repetition in range(N):\n    check('repeat outside', solve([10,10], 30, 5, 1), [])\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":"923deb19d9d377d8f76c3a0be695cf16848caf6a7c9ce04f12a4be9cf14adac6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(heights, offset, viewport, overscan):\n    positions = [0]\n    for height in heights: positions.append(positions[-1] + height)\n    visible = [i for i in range(len(heights)) if positions[i+1] > offset and positions[i] < offset + viewport]\n    if not visible: return []\n    lo = visible[0]\n    hi = min(len(heights), visible[-1] + 1 + overscan)\n    return list(range(lo, hi))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('variable', solve([10,30,5], 15, 10, 0), [1])\ncheck('top edge', solve([10,10,10], 10, 10, 0), [1])\ncheck('partial top', solve([10,10,10], 5, 10, 0), [0, 1])\ncheck('partial bottom', solve([10,10,10], 0, 15, 0), [0, 1])\ncheck('overscan', solve([10]*6, 20, 10, 1), [1, 2, 3])\ncheck('outside', solve([10,10], 30, 5, 1), [])\ncheck('parameterized measured heights', solve([N]*6, 2*N, N, 1), [1,2,3])\nfor repetition in range(N):\n    check('repeat outside', solve([10,10], 30, 5, 1), [])\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":"b59c63c5c1cded2bd086606c7f9aa1fe3e210398e552938109049d71079e41c0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(heights, offset, viewport, overscan):\n    positions = [0]\n    for height in heights: positions.append(positions[-1] + height)\n    visible = [i for i in range(len(heights)) if positions[i+1] > offset and positions[i] < offset + viewport]\n    if not visible: return []\n    lo = max(0, visible[0] - overscan)\n    hi = min(len(heights), visible[-1] + 1 + overscan)\n    return list(range(lo, hi))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('variable', solve([10,30,5], 15, 10, 0), [1])\ncheck('top edge', solve([10,10,10], 10, 10, 0), [1])\ncheck('partial top', solve([10,10,10], 5, 10, 0), [0, 1])\ncheck('partial bottom', solve([10,10,10], 0, 15, 0), [0, 1])\ncheck('overscan', solve([10]*6, 20, 10, 1), [1, 2, 3])\ncheck('outside', solve([10,10], 30, 5, 1), [])\ncheck('parameterized measured heights', solve([N]*6, 2*N, N, 1), [1,2,3])\nfor repetition in range(N):\n    check('repeat outside', solve([10,10], 30, 5, 1), [])\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":" 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":"xi-virtual-window-before-overscan","generated_at":"2026-09-29T14:38:20.287135+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A deterministic model of virtualized row visibility; this isolates one interface invariant without requiring a browser.","repair":"Implement the before overscan operation as `max(0, visible[0] - overscan)`.","root_cause":"The before overscan operation uses `visible[0]` where the contract requires `max(0, visible[0] - overscan)`.","sha256":"af77bd106a56e047b65860b4af5b228493ef88e69b36dee8d0b0e6b99049f2d7","title":"Virtualized row visibility: Overscan fails to include rows before the viewport · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.167,"exit_code":1,"observations":[{"actual":[1],"check":"variable","expected":[1],"passed":true},{"actual":[1],"check":"top edge","expected":[1],"passed":true},{"actual":[0,1],"check":"partial top","expected":[0,1],"passed":true},{"actual":[0,1],"check":"partial bottom","expected":[0,1],"passed":true},{"actual":[3],"check":"overscan","expected":[1,2,3],"passed":false},{"actual":[],"check":"outside","expected":[],"passed":true},{"actual":[3],"check":"parameterized measured heights","expected":[1,2,3],"passed":false},{"actual":[],"check":"repeat outside","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"variable\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"top edge\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"partial top\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"partial bottom\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"overscan\", \"actual\": [3], \"expected\": [1, 2, 3], \"passed\": false}, {\"check\": \"outside\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"parameterized measured heights\", \"actual\": [3], \"expected\": [1, 2, 3], \"passed\": false}, {\"check\": \"repeat outside\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":35.831,"exit_code":1,"observations":[{"actual":[1],"check":"variable","expected":[1],"passed":true},{"actual":[1],"check":"top edge","expected":[1],"passed":true},{"actual":[0,1],"check":"partial top","expected":[0,1],"passed":true},{"actual":[0,1],"check":"partial bottom","expected":[0,1],"passed":true},{"actual":[2,3],"check":"overscan","expected":[1,2,3],"passed":false},{"actual":[],"check":"outside","expected":[],"passed":true},{"actual":[2,3],"check":"parameterized measured heights","expected":[1,2,3],"passed":false},{"actual":[],"check":"repeat outside","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"variable\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"top edge\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"partial top\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"partial bottom\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"overscan\", \"actual\": [2, 3], \"expected\": [1, 2, 3], \"passed\": false}, {\"check\": \"outside\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"parameterized measured heights\", \"actual\": [2, 3], \"expected\": [1, 2, 3], \"passed\": false}, {\"check\": \"repeat outside\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.753,"exit_code":0,"observations":[{"actual":[1],"check":"variable","expected":[1],"passed":true},{"actual":[1],"check":"top edge","expected":[1],"passed":true},{"actual":[0,1],"check":"partial top","expected":[0,1],"passed":true},{"actual":[0,1],"check":"partial bottom","expected":[0,1],"passed":true},{"actual":[1,2,3],"check":"overscan","expected":[1,2,3],"passed":true},{"actual":[],"check":"outside","expected":[],"passed":true},{"actual":[1,2,3],"check":"parameterized measured heights","expected":[1,2,3],"passed":true},{"actual":[],"check":"repeat outside","expected":[],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"variable\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"top edge\", \"actual\": [1], \"expected\": [1], \"passed\": true}, {\"check\": \"partial top\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"partial bottom\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"overscan\", \"actual\": [1, 2, 3], \"expected\": [1, 2, 3], \"passed\": true}, {\"check\": \"outside\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"parameterized measured heights\", \"actual\": [1, 2, 3], \"expected\": [1, 2, 3], \"passed\": true}, {\"check\": \"repeat outside\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}