{"abstract":"Centered evidence window is reversed while crossing a boundary.","category":"RAG context assembly","checks":6,"contract":"Given ordered items, anchor and radius, return up to radius items on each side plus anchor in original order.","contract_signature":"items, anchor, radius","evaluation_group":"ragctx-boundary-order","failed_approach":"Reversing the left slice places neighboring evidence in reverse document order.","family":"w3-rag-context-assembly-boundary-window-order","id":"FA-99626","implementations":{"attempt":{"sha256":"508d93bd00cf8b5f374be6cf4bd2df172ef262b93e3eb7d0cd7a878ec2134237","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(items, anchor, radius):\n    lo=max(0,anchor-radius); hi=min(len(items),anchor+radius+1)\n    return items[lo:anchor][::-1]+items[anchor:hi]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nitems=['p','q','r','s','t']\ncheck('center order', solve(items,2,2), ['p','q','r','s','t'])\ncheck('left edge', solve(items,0,2), ['p','q','r'])\ncheck('right edge', solve(items,4,2), ['r','s','t'])\ncheck('zero radius', solve(items,2,0), ['r'])\ncheck('empty', solve([],0,2), [])\ncheck('radius one', solve(items,3,1), ['r','s','t'])\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":"4addb244f96df69804d90eee2630b27f44eff4c9f220538dbfe1064b80a6ab22","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(items, anchor, radius):\n    lo=max(0,anchor-radius); hi=min(len(items),anchor+radius+1)\n    return items[anchor:anchor+1]+items[lo:anchor]+items[anchor+1:hi]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nitems=['p','q','r','s','t']\ncheck('center order', solve(items,2,2), ['p','q','r','s','t'])\ncheck('left edge', solve(items,0,2), ['p','q','r'])\ncheck('right edge', solve(items,4,2), ['r','s','t'])\ncheck('zero radius', solve(items,2,0), ['r'])\ncheck('empty', solve([],0,2), [])\ncheck('radius one', solve(items,3,1), ['r','s','t'])\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":"Toy inputs and token counts only; this does not claim compatibility with a tokenizer, prompt format, or production retrieval system. 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":"w3-rag-context-assembly-boundary-window-order","generated_at":"2026-09-30T16:48:26.270044+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A small deterministic evidence assembly model makes context budgeting behavior inspectable.","root_cause":"Left-side chunks are gathered backwards and concatenated without restoring document order.","sha256":"35b2ae254220d6fa949585b87ee5d0076e71d9ceee0aa9b79d78ebdbe72acf7b","title":"Centered evidence window is reversed while crossing a boundary · case 01","variant":1,"variant_policy":"The same explicitly authored fixtures repeat across all five numbered records; runtime N is unused. These records share one mechanism and must remain together in evaluation splits.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":28.895,"exit_code":1,"observations":[{"actual":["q","p","r","s","t"],"check":"center order","expected":["p","q","r","s","t"],"passed":false},{"actual":["p","q","r"],"check":"left edge","expected":["p","q","r"],"passed":true},{"actual":["s","r","t"],"check":"right edge","expected":["r","s","t"],"passed":false},{"actual":["r"],"check":"zero radius","expected":["r"],"passed":true},{"actual":[],"check":"empty","expected":[],"passed":true},{"actual":["r","s","t"],"check":"radius one","expected":["r","s","t"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"center order\", \"actual\": [\"q\", \"p\", \"r\", \"s\", \"t\"], \"expected\": [\"p\", \"q\", \"r\", \"s\", \"t\"], \"passed\": false}, {\"check\": \"left edge\", \"actual\": [\"p\", \"q\", \"r\"], \"expected\": [\"p\", \"q\", \"r\"], \"passed\": true}, {\"check\": \"right edge\", \"actual\": [\"s\", \"r\", \"t\"], \"expected\": [\"r\", \"s\", \"t\"], \"passed\": false}, {\"check\": \"zero radius\", \"actual\": [\"r\"], \"expected\": [\"r\"], \"passed\": true}, {\"check\": \"empty\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"radius one\", \"actual\": [\"r\", \"s\", \"t\"], \"expected\": [\"r\", \"s\", \"t\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":31.76,"exit_code":1,"observations":[{"actual":["r","p","q","s","t"],"check":"center order","expected":["p","q","r","s","t"],"passed":false},{"actual":["p","q","r"],"check":"left edge","expected":["p","q","r"],"passed":true},{"actual":["t","r","s"],"check":"right edge","expected":["r","s","t"],"passed":false},{"actual":["r"],"check":"zero radius","expected":["r"],"passed":true},{"actual":[],"check":"empty","expected":[],"passed":true},{"actual":["s","r","t"],"check":"radius one","expected":["r","s","t"],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"center order\", \"actual\": [\"r\", \"p\", \"q\", \"s\", \"t\"], \"expected\": [\"p\", \"q\", \"r\", \"s\", \"t\"], \"passed\": false}, {\"check\": \"left edge\", \"actual\": [\"p\", \"q\", \"r\"], \"expected\": [\"p\", \"q\", \"r\"], \"passed\": true}, {\"check\": \"right edge\", \"actual\": [\"t\", \"r\", \"s\"], \"expected\": [\"r\", \"s\", \"t\"], \"passed\": false}, {\"check\": \"zero radius\", \"actual\": [\"r\"], \"expected\": [\"r\"], \"passed\": true}, {\"check\": \"empty\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"radius one\", \"actual\": [\"s\", \"r\", \"t\"], \"expected\": [\"r\", \"s\", \"t\"], \"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."}}