FAILURE MAP
← Case archive

FA-26626 / HTTP ranges / Open access

Concurrent readers use positional I/O instead of a shared mutable seek cursor · case 01

Concurrent readers use positional I/O instead of a shared mutable seek cursor.

Verified by executionVariant 1 · 6 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The stream-shared-handle-cursor decision uses cursor=0 out=[] for start,count in requests: out.append(body[cursor:cursor+count]); cursor+=count return out.

VERIFIED REPAIR

Apply the bounded decision exactly: return [body[start:start+count] for start,count in requests]

Unsuccessful approach: The partial repair uses cursor=requests[0][0] if requests else 0 out=[] for start,count in requests: out.append(body[cursor:cursor+count]); cursor+=count return out, which still violates the stated contract.

Case contract

requests are [absolute-offset,count]; return independent ASCII slices for each request. The underlying shared handle cursor is irrelevant.

Why this case matters

Range responses combine representation identity, conditional requests, framing, and partial-object state.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(body, requests):
    cursor=0
    out=[]
    for start,count in requests:
        out.append(body[cursor:cursor+count]); cursor+=count
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('stream-shared-handle-cursor fixture 0', solve("abcdef"*N,[[2,2],[0,2]]), ["cd","ab"])
check('stream-shared-handle-cursor fixture 1', solve("abcdef",[[0,1],[3,1]]), ["a","d"])
check('stream-shared-handle-cursor fixture 2', solve("",[]), [])
check('stream-shared-handle-cursor fixture 3', solve("abc",[[1,1]]), ["b"])
check('stream-shared-handle-cursor fixture 4', solve("abc",[[0,0],[2,1]]), ["","c"])
check('stream-shared-handle-cursor fixture 5', solve("abcdef",[[1,2],[1,2]]), ["bc","bc"])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
stream-shared-handle-cursor fixture 0['ab', 'cd']['cd', 'ab']Failed
stream-shared-handle-cursor fixture 1['a', 'b']['a', 'd']Failed
stream-shared-handle-cursor fixture 2[][]Passed
stream-shared-handle-cursor fixture 3['a']['b']Failed
stream-shared-handle-cursor fixture 4['', 'a']['', 'c']Failed
stream-shared-handle-cursor fixture 5['ab', 'cd']['bc', 'bc']Failed

SHA-256 / 7730eaaa86508e24c16d97f86bf33258b4ad58a9e5be076a07138214f0e02049

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(body, requests):
    cursor=requests[0][0] if requests else 0
    out=[]
    for start,count in requests:
        out.append(body[cursor:cursor+count]); cursor+=count
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('stream-shared-handle-cursor fixture 0', solve("abcdef"*N,[[2,2],[0,2]]), ["cd","ab"])
check('stream-shared-handle-cursor fixture 1', solve("abcdef",[[0,1],[3,1]]), ["a","d"])
check('stream-shared-handle-cursor fixture 2', solve("",[]), [])
check('stream-shared-handle-cursor fixture 3', solve("abc",[[1,1]]), ["b"])
check('stream-shared-handle-cursor fixture 4', solve("abc",[[0,0],[2,1]]), ["","c"])
check('stream-shared-handle-cursor fixture 5', solve("abcdef",[[1,2],[1,2]]), ["bc","bc"])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
stream-shared-handle-cursor fixture 0['cd', 'ef']['cd', 'ab']Failed
stream-shared-handle-cursor fixture 1['a', 'b']['a', 'd']Failed
stream-shared-handle-cursor fixture 2[][]Passed
stream-shared-handle-cursor fixture 3['b']['b']Passed
stream-shared-handle-cursor fixture 4['', 'a']['', 'c']Failed
stream-shared-handle-cursor fixture 5['bc', 'de']['bc', 'bc']Failed

SHA-256 / 8f4c954b9e314ed3a2972c6d6ef464698a0fb840ef517cb9c664e3c04d20c917

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(body, requests):
    return [body[start:start+count] for start,count in requests]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('stream-shared-handle-cursor fixture 0', solve("abcdef"*N,[[2,2],[0,2]]), ["cd","ab"])
check('stream-shared-handle-cursor fixture 1', solve("abcdef",[[0,1],[3,1]]), ["a","d"])
check('stream-shared-handle-cursor fixture 2', solve("",[]), [])
check('stream-shared-handle-cursor fixture 3', solve("abc",[[1,1]]), ["b"])
check('stream-shared-handle-cursor fixture 4', solve("abc",[[0,0],[2,1]]), ["","c"])
check('stream-shared-handle-cursor fixture 5', solve("abcdef",[[1,2],[1,2]]), ["bc","bc"])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
stream-shared-handle-cursor fixture 0['cd', 'ab']['cd', 'ab']Passed
stream-shared-handle-cursor fixture 1['a', 'd']['a', 'd']Passed
stream-shared-handle-cursor fixture 2[][]Passed
stream-shared-handle-cursor fixture 3['b']['b']Passed
stream-shared-handle-cursor fixture 4['', 'c']['', 'c']Passed
stream-shared-handle-cursor fixture 5['bc', 'bc']['bc', 'bc']Passed

SHA-256 / fd4eb1d2ffed9adb7ed560ee172c857baed00e1ada8866412308e701b2162ecc

Verification & scope

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.

Observations recorded using Python 3.12.14 at 2026-09-29T14:41:17.662101+00:00.

Case digest / 7cd371d08a8c4ef4147320911487828def6c2be9ba509e0bf70a6bce8d2e3072