{"abstract":"Bottom-up scanlines are displayed without vertical orientation conversion.","category":"Raster memory layout","checks":4,"contract":"Convert a bottom-up row list into top-down orientation by reversing row order while preserving horizontal pixel order.","contract_signature":"rows","evaluation_group":"xg-bottom-up-image-rows","failed_approach":"Reversing each row mirrors horizontally instead of flipping row order.","family":"xg-bottom-up-image-rows","id":"FA-10736","implementations":{"attempt":{"sha256":"07436ae94d8e724e6ffc1f46ce733f9791ea10ed633943878e163e96073740a1","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(rows):\n    return [list(reversed(row)) for row in rows]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve(*([[1, 2], [3, 4]],)), [[3, 4], [1, 2]])\ncheck('fixture 2', solve(*([[1, 2]],)), [[1, 2]])\ncheck('fixture 3', solve(*([],)), [])\ncheck('fixture 4', solve(*([[1], [2], [3]],)), [[3], [2], [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":"19c52c2741daf6dc55fb2a57b4855568a68d248f2fb274a5e3021b3814b759e3","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(rows):\n    return [list(row) for row in rows]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve(*([[1, 2], [3, 4]],)), [[3, 4], [1, 2]])\ncheck('fixture 2', solve(*([[1, 2]],)), [[1, 2]])\ncheck('fixture 3', solve(*([],)), [])\ncheck('fixture 4', solve(*([[1], [2], [3]],)), [[3], [2], [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":"xg-bottom-up-image-rows","generated_at":"2026-09-29T14:38:41.796429+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A deterministic software graphics stage with explicit channel and coordinate conventions; no hardware, device profile or API behavior is inferred.","root_cause":"Bottom-up scanlines are displayed without vertical orientation conversion.","sha256":"5022478d3a1f0f0ce8a982301bfceed3474389ab19623b27198ada593af7e2fd","title":"Bottom up image rows · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":38.915,"exit_code":1,"observations":[{"actual":[[2,1],[4,3]],"check":"fixture 1","expected":[[3,4],[1,2]],"passed":false},{"actual":[[2,1]],"check":"fixture 2","expected":[[1,2]],"passed":false},{"actual":[],"check":"fixture 3","expected":[],"passed":true},{"actual":[[1],[2],[3]],"check":"fixture 4","expected":[[3],[2],[1]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": [[2, 1], [4, 3]], \"expected\": [[3, 4], [1, 2]], \"passed\": false}, {\"check\": \"fixture 2\", \"actual\": [[2, 1]], \"expected\": [[1, 2]], \"passed\": false}, {\"check\": \"fixture 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": [[1], [2], [3]], \"expected\": [[3], [2], [1]], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":35.901,"exit_code":1,"observations":[{"actual":[[1,2],[3,4]],"check":"fixture 1","expected":[[3,4],[1,2]],"passed":false},{"actual":[[1,2]],"check":"fixture 2","expected":[[1,2]],"passed":true},{"actual":[],"check":"fixture 3","expected":[],"passed":true},{"actual":[[1],[2],[3]],"check":"fixture 4","expected":[[3],[2],[1]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": [[1, 2], [3, 4]], \"expected\": [[3, 4], [1, 2]], \"passed\": false}, {\"check\": \"fixture 2\", \"actual\": [[1, 2]], \"expected\": [[1, 2]], \"passed\": true}, {\"check\": \"fixture 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": [[1], [2], [3]], \"expected\": [[3], [2], [1]], \"passed\": false}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}