{"abstract":"An origin adapter turns byte requests into bounded aligned storage reads: physical reads begin at the block base in the object.","category":"HTTP ranges","checks":7,"contract":"x contains complete object length, positive storage block size, ordered [start,stop) requested spans already within object, and cached block numbers. Return [uncached-block-reads,request-to-block-slices]. Each storage read is [block,absolute-start,count], clipped at EOF. Request maps contain [block,offset,count] for every crossed block, including cached ones; empty spans map to an empty list. Storage reads are deduplicated and sorted by block.","evaluation_group":"s3-http_ranges-aligned-origin-read-plan","failed_approach":"The partial repair uses block=x['block']\nneeded=set()\nmaps=[]\nfor start,stop in x['requests']:\n    parts=[]\n    cursor=start\n    while cursor<stop:\n        page=cursor//block\n        local=cursor-page*block\n        count=min(stop-cursor,block-local)\n        parts.append([page,local,count])\n        needed.add(page)\n        cursor+=count\n    maps.append(parts)\nreads=[]\nfor page in sorted(needed):\n    if page in x['cached']: continue\n    absolute=(page+1)*block\n    count=min(block,x['length']-absolute)\n    reads.append([page,absolute,count])\nreturn [reads,maps], which still violates the stated contract.","family":"s3-http_ranges-aligned-origin-read-plan-aligned-absolute","id":"FA-27281","implementations":{"attempt":{"sha256":"2ae8fe15d9210e9bf525f8cb73ca2fe1d0c7573e8de2d145f4011e56521621eb","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    block=x['block']\n    needed=set()\n    maps=[]\n    for start,stop in x['requests']:\n        parts=[]\n        cursor=start\n        while cursor<stop:\n            page=cursor//block\n            local=cursor-page*block\n            count=min(stop-cursor,block-local)\n            parts.append([page,local,count])\n            needed.add(page)\n            cursor+=count\n        maps.append(parts)\n    reads=[]\n    for page in sorted(needed):\n        if page in x['cached']: continue\n        absolute=(page+1)*block\n        count=min(block,x['length']-absolute)\n        reads.append([page,absolute,count])\n    return [reads,maps]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('aligned-absolute fixture 0', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[3,9]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]])))\ncheck('aligned-absolute fixture 1', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[8,10],[0,2],[1,3]],'cached':[0]}))), json.loads(json.dumps([[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]])))\ncheck('aligned-absolute fixture 2', json.loads(json.dumps(solve({'length':8,'block':4,'requests':[[0,4],[4,8]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]])))\ncheck('aligned-absolute fixture 3', json.loads(json.dumps(solve({'length':0,'block':4,'requests':[[0,0]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 4', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[2,2]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 5', json.loads(json.dumps(solve({'length':3*N,'block':N,'requests':[[0,N],[N,2*N]],'cached':[0]}))), json.loads(json.dumps([[[1,N,N]],[[[0,0,N]],[[1,0,N]]]])))\ncheck('aligned-absolute fixture 6', json.loads(json.dumps(solve({'length':5,'block':4,'requests':[],'cached':[0]}))), json.loads(json.dumps([[],[]])))\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":"ea2a2c56a9239ded22bd8f25ecf4535e3904cfaca5e121a694eac74f6cfc60ba","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    block=x['block']\n    needed=set()\n    maps=[]\n    for start,stop in x['requests']:\n        parts=[]\n        cursor=start\n        while cursor<stop:\n            page=cursor//block\n            local=cursor-page*block\n            count=min(stop-cursor,block-local)\n            parts.append([page,local,count])\n            needed.add(page)\n            cursor+=count\n        maps.append(parts)\n    reads=[]\n    for page in sorted(needed):\n        if page in x['cached']: continue\n        absolute=page\n        count=min(block,x['length']-absolute)\n        reads.append([page,absolute,count])\n    return [reads,maps]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('aligned-absolute fixture 0', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[3,9]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]])))\ncheck('aligned-absolute fixture 1', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[8,10],[0,2],[1,3]],'cached':[0]}))), json.loads(json.dumps([[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]])))\ncheck('aligned-absolute fixture 2', json.loads(json.dumps(solve({'length':8,'block':4,'requests':[[0,4],[4,8]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]])))\ncheck('aligned-absolute fixture 3', json.loads(json.dumps(solve({'length':0,'block':4,'requests':[[0,0]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 4', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[2,2]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 5', json.loads(json.dumps(solve({'length':3*N,'block':N,'requests':[[0,N],[N,2*N]],'cached':[0]}))), json.loads(json.dumps([[[1,N,N]],[[[0,0,N]],[[1,0,N]]]])))\ncheck('aligned-absolute fixture 6', json.loads(json.dumps(solve({'length':5,'block':4,'requests':[],'cached':[0]}))), json.loads(json.dumps([[],[]])))\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":"9226078e7ec3e818b791404fbd77ea878e848650136ba359bffb446a66f413cb","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    block=x['block']\n    needed=set()\n    maps=[]\n    for start,stop in x['requests']:\n        parts=[]\n        cursor=start\n        while cursor<stop:\n            page=cursor//block\n            local=cursor-page*block\n            count=min(stop-cursor,block-local)\n            parts.append([page,local,count])\n            needed.add(page)\n            cursor+=count\n        maps.append(parts)\n    reads=[]\n    for page in sorted(needed):\n        if page in x['cached']: continue\n        absolute=page*block\n        count=min(block,x['length']-absolute)\n        reads.append([page,absolute,count])\n    return [reads,maps]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('aligned-absolute fixture 0', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[3,9]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]])))\ncheck('aligned-absolute fixture 1', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[8,10],[0,2],[1,3]],'cached':[0]}))), json.loads(json.dumps([[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]])))\ncheck('aligned-absolute fixture 2', json.loads(json.dumps(solve({'length':8,'block':4,'requests':[[0,4],[4,8]],'cached':[]}))), json.loads(json.dumps([[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]])))\ncheck('aligned-absolute fixture 3', json.loads(json.dumps(solve({'length':0,'block':4,'requests':[[0,0]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 4', json.loads(json.dumps(solve({'length':10,'block':4,'requests':[[2,2]],'cached':[]}))), json.loads(json.dumps([[],[[]]])))\ncheck('aligned-absolute fixture 5', json.loads(json.dumps(solve({'length':3*N,'block':N,'requests':[[0,N],[N,2*N]],'cached':[0]}))), json.loads(json.dumps([[[1,N,N]],[[[0,0,N]],[[1,0,N]]]])))\ncheck('aligned-absolute fixture 6', json.loads(json.dumps(solve({'length':5,'block':4,'requests':[],'cached':[0]}))), json.loads(json.dumps([[],[]])))\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":"Deterministic simplified range service, with stipulated local policies and already parsed trusted inputs; not a complete HTTP implementation. 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-http_ranges-aligned-origin-read-plan-aligned-absolute","generated_at":"2026-09-29T14:41:23.693411+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Range responses combine representation identity, conditional requests, framing, and partial-object state.","repair":"Apply the bounded decision exactly: block=x['block']\nneeded=set()\nmaps=[]\nfor start,stop in x['requests']:\n    parts=[]\n    cursor=start\n    while cursor<stop:\n        page=cursor//block\n        local=cursor-page*block\n        count=min(stop-cursor,block-local)\n        parts.append([page,local,count])\n        needed.add(page)\n        cursor+=count\n    maps.append(parts)\nreads=[]\nfor page in sorted(needed):\n    if page in x['cached']: continue\n    absolute=page*block\n    count=min(block,x['length']-absolute)\n    reads.append([page,absolute,count])\nreturn [reads,maps]","root_cause":"The aligned-origin-read-plan-aligned-absolute decision uses block=x['block']\nneeded=set()\nmaps=[]\nfor start,stop in x['requests']:\n    parts=[]\n    cursor=start\n    while cursor<stop:\n        page=cursor//block\n        local=cursor-page*block\n        count=min(stop-cursor,block-local)\n        parts.append([page,local,count])\n        needed.add(page)\n        cursor+=count\n    maps.append(parts)\nreads=[]\nfor page in sorted(needed):\n    if page in x['cached']: continue\n    absolute=page\n    count=min(block,x['length']-absolute)\n    reads.append([page,absolute,count])\nreturn [reads,maps].","sha256":"d3b682dc2d2eb026e78e2147eeb4b1f4f4f4c60fd05fa828c5b5f9809f75926d","title":"An origin adapter turns byte requests into bounded aligned storage reads: physical reads begin at the block base in the object · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.08,"exit_code":1,"observations":[{"actual":[[[0,4,4],[1,8,2],[2,12,-2]],[[[0,3,1],[1,0,4],[2,0,1]]]],"check":"aligned-absolute fixture 0","expected":[[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]],"passed":false},{"actual":[[[2,12,-2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"check":"aligned-absolute fixture 1","expected":[[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"passed":false},{"actual":[[[0,4,4],[1,8,0]],[[[0,0,4]],[[1,0,4]]]],"check":"aligned-absolute fixture 2","expected":[[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]],"passed":false},{"actual":[[],[[]]],"check":"aligned-absolute fixture 3","expected":[[],[[]]],"passed":true},{"actual":[[],[[]]],"check":"aligned-absolute fixture 4","expected":[[],[[]]],"passed":true},{"actual":[[[1,2,1]],[[[0,0,1]],[[1,0,1]]]],"check":"aligned-absolute fixture 5","expected":[[[1,1,1]],[[[0,0,1]],[[1,0,1]]]],"passed":false},{"actual":[[],[]],"check":"aligned-absolute fixture 6","expected":[[],[]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"aligned-absolute fixture 0\", \"actual\": [[[0, 4, 4], [1, 8, 2], [2, 12, -2]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"expected\": [[[0, 0, 4], [1, 4, 4], [2, 8, 2]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 1\", \"actual\": [[[2, 12, -2]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"expected\": [[[2, 8, 2]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 2\", \"actual\": [[[0, 4, 4], [1, 8, 0]], [[[0, 0, 4]], [[1, 0, 4]]]], \"expected\": [[[0, 0, 4], [1, 4, 4]], [[[0, 0, 4]], [[1, 0, 4]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 3\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 4\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 5\", \"actual\": [[[1, 2, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"expected\": [[[1, 1, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 6\", \"actual\": [[], []], \"expected\": [[], []], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.409,"exit_code":1,"observations":[{"actual":[[[0,0,4],[1,1,4],[2,2,4]],[[[0,3,1],[1,0,4],[2,0,1]]]],"check":"aligned-absolute fixture 0","expected":[[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]],"passed":false},{"actual":[[[2,2,4]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"check":"aligned-absolute fixture 1","expected":[[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"passed":false},{"actual":[[[0,0,4],[1,1,4]],[[[0,0,4]],[[1,0,4]]]],"check":"aligned-absolute fixture 2","expected":[[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]],"passed":false},{"actual":[[],[[]]],"check":"aligned-absolute fixture 3","expected":[[],[[]]],"passed":true},{"actual":[[],[[]]],"check":"aligned-absolute fixture 4","expected":[[],[[]]],"passed":true},{"actual":[[[1,1,1]],[[[0,0,1]],[[1,0,1]]]],"check":"aligned-absolute fixture 5","expected":[[[1,1,1]],[[[0,0,1]],[[1,0,1]]]],"passed":true},{"actual":[[],[]],"check":"aligned-absolute fixture 6","expected":[[],[]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"aligned-absolute fixture 0\", \"actual\": [[[0, 0, 4], [1, 1, 4], [2, 2, 4]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"expected\": [[[0, 0, 4], [1, 4, 4], [2, 8, 2]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 1\", \"actual\": [[[2, 2, 4]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"expected\": [[[2, 8, 2]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 2\", \"actual\": [[[0, 0, 4], [1, 1, 4]], [[[0, 0, 4]], [[1, 0, 4]]]], \"expected\": [[[0, 0, 4], [1, 4, 4]], [[[0, 0, 4]], [[1, 0, 4]]]], \"passed\": false}, {\"check\": \"aligned-absolute fixture 3\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 4\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 5\", \"actual\": [[[1, 1, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"expected\": [[[1, 1, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 6\", \"actual\": [[], []], \"expected\": [[], []], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.492,"exit_code":0,"observations":[{"actual":[[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]],"check":"aligned-absolute fixture 0","expected":[[[0,0,4],[1,4,4],[2,8,2]],[[[0,3,1],[1,0,4],[2,0,1]]]],"passed":true},{"actual":[[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"check":"aligned-absolute fixture 1","expected":[[[2,8,2]],[[[2,0,2]],[[0,0,2]],[[0,1,2]]]],"passed":true},{"actual":[[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]],"check":"aligned-absolute fixture 2","expected":[[[0,0,4],[1,4,4]],[[[0,0,4]],[[1,0,4]]]],"passed":true},{"actual":[[],[[]]],"check":"aligned-absolute fixture 3","expected":[[],[[]]],"passed":true},{"actual":[[],[[]]],"check":"aligned-absolute fixture 4","expected":[[],[[]]],"passed":true},{"actual":[[[1,1,1]],[[[0,0,1]],[[1,0,1]]]],"check":"aligned-absolute fixture 5","expected":[[[1,1,1]],[[[0,0,1]],[[1,0,1]]]],"passed":true},{"actual":[[],[]],"check":"aligned-absolute fixture 6","expected":[[],[]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"aligned-absolute fixture 0\", \"actual\": [[[0, 0, 4], [1, 4, 4], [2, 8, 2]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"expected\": [[[0, 0, 4], [1, 4, 4], [2, 8, 2]], [[[0, 3, 1], [1, 0, 4], [2, 0, 1]]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 1\", \"actual\": [[[2, 8, 2]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"expected\": [[[2, 8, 2]], [[[2, 0, 2]], [[0, 0, 2]], [[0, 1, 2]]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 2\", \"actual\": [[[0, 0, 4], [1, 4, 4]], [[[0, 0, 4]], [[1, 0, 4]]]], \"expected\": [[[0, 0, 4], [1, 4, 4]], [[[0, 0, 4]], [[1, 0, 4]]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 3\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 4\", \"actual\": [[], [[]]], \"expected\": [[], [[]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 5\", \"actual\": [[[1, 1, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"expected\": [[[1, 1, 1]], [[[0, 0, 1]], [[1, 0, 1]]]], \"passed\": true}, {\"check\": \"aligned-absolute fixture 6\", \"actual\": [[], []], \"expected\": [[], []], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}