FA-26906 / HTTP ranges / Open access
A packed-object origin maps logical byte requests to immutable backing objects: a hole cannot be silently dropped from a requested payload · case 01
A packed-object origin maps logical byte requests to immutable backing objects: a hole cannot be silently dropped from a requested payload.
ROOT CAUSE
The packed-origin-map-missing-byte decision uses cells={} for logical,handle,physical,count in x['extents']: if count==0: continue if logical<0 or physical<0 or count<0: return None if handle not in x['packs']: return None pack=x['packs'][handle] if physical+count>len(pack): return None for i in range(count): at=logical+i if at in cells: return None cells[at]=pack[physical+i] return ''.join(cells.get(at,'') for at in x['requested']).
VERIFIED REPAIR
Apply the bounded decision exactly: cells={} for logical,handle,physical,count in x['extents']: if count==0: continue if logical<0 or physical<0 or count<0: return None if handle not in x['packs']: return None pack=x['packs'][handle] if physical+count>len(pack): return None for i in range(count): at=logical+i if at in cells: return None cells[at]=pack[physical+i] if any(at not in cells for at in x['requested']): return None return ''.join(cells[at] for at in x['requested'])
Unsuccessful approach: The partial repair uses cells={} for logical,handle,physical,count in x['extents']: if count==0: continue if logical<0 or physical<0 or count<0: return None if handle not in x['packs']: return None pack=x['packs'][handle] if physical+count>len(pack): return None for i in range(count): at=logical+i if at in cells: return None cells[at]=pack[physical+i] return ''.join(cells.get(at,'?') for at in x['requested']), which still violates the stated contract.
Case contract
x has pack strings keyed by handle, extent rows [logical-start,handle,physical-start,count], and explicit requested logical offsets. Extents may arrive unordered. Empty extents ignored. Reject negative mapping coordinates, missing handles, out-of-pack spans, or overlapping logical ownership. Return requested characters in request order, retaining repeated requested offsets; unavailable requested offsets yield None. This is a bounded storage adapter underlying HTTP range delivery, not interval normalization.
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(x):
cells={}
for logical,handle,physical,count in x['extents']:
if count==0: continue
if logical<0 or physical<0 or count<0: return None
if handle not in x['packs']: return None
pack=x['packs'][handle]
if physical+count>len(pack): return None
for i in range(count):
at=logical+i
if at in cells: return None
cells[at]=pack[physical+i]
return ''.join(cells.get(at,'') for at in x['requested'])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('missing-byte fixture 0', json.loads(json.dumps(solve({'packs':{'a':'QabcZ','b':'RxyzS'},'extents':[[3,'b',1,3],[0,'a',1,3]],'requested':[0,3,1,4,2,5]}))), json.loads(json.dumps('axbycz')))
check('missing-byte fixture 1', json.loads(json.dumps(solve({'packs':{'a':'QabcZ'},'extents':[[0,'a',1,3]],'requested':[2,0,2]}))), json.loads(json.dumps('cac')))
check('missing-byte fixture 2', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3]],'requested':[0,3]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 3', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3],[1,'a',1,1]],'requested':[1]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 4', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'missing',0,0],[0,'a',0,3]],'requested':[0]}))), json.loads(json.dumps('a')))
check('missing-byte fixture 5', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[-1,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 6', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',-1,1]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 7', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,-1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 8', json.loads(json.dumps(solve({'packs':{},'extents':[[0,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 9', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',2,2]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 10', json.loads(json.dumps(solve({'packs':{},'extents':[],'requested':[]}))), json.loads(json.dumps('')))
check('missing-byte fixture 11', json.loads(json.dumps(solve({'packs':{'a':"p"*N},'extents':[[0,'a',0,N]],'requested':[0]}))), json.loads(json.dumps('p')))
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| missing-byte fixture 0 | axbycz | axbycz | Passed |
| missing-byte fixture 1 | cac | cac | Passed |
| missing-byte fixture 2 | a | None | Failed |
| missing-byte fixture 3 | None | None | Passed |
| missing-byte fixture 4 | a | a | Passed |
| missing-byte fixture 5 | None | None | Passed |
| missing-byte fixture 6 | None | None | Passed |
| missing-byte fixture 7 | None | None | Passed |
| missing-byte fixture 8 | None | None | Passed |
| missing-byte fixture 9 | None | None | Passed |
| missing-byte fixture 10 | | | Passed |
| missing-byte fixture 11 | p | p | Passed |
SHA-256 / d1abbc20118257dce9d27f9f00b2955e30d3d7673f2e45c29cc601f4831d2015
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
cells={}
for logical,handle,physical,count in x['extents']:
if count==0: continue
if logical<0 or physical<0 or count<0: return None
if handle not in x['packs']: return None
pack=x['packs'][handle]
if physical+count>len(pack): return None
for i in range(count):
at=logical+i
if at in cells: return None
cells[at]=pack[physical+i]
return ''.join(cells.get(at,'?') for at in x['requested'])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('missing-byte fixture 0', json.loads(json.dumps(solve({'packs':{'a':'QabcZ','b':'RxyzS'},'extents':[[3,'b',1,3],[0,'a',1,3]],'requested':[0,3,1,4,2,5]}))), json.loads(json.dumps('axbycz')))
check('missing-byte fixture 1', json.loads(json.dumps(solve({'packs':{'a':'QabcZ'},'extents':[[0,'a',1,3]],'requested':[2,0,2]}))), json.loads(json.dumps('cac')))
check('missing-byte fixture 2', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3]],'requested':[0,3]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 3', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3],[1,'a',1,1]],'requested':[1]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 4', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'missing',0,0],[0,'a',0,3]],'requested':[0]}))), json.loads(json.dumps('a')))
check('missing-byte fixture 5', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[-1,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 6', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',-1,1]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 7', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,-1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 8', json.loads(json.dumps(solve({'packs':{},'extents':[[0,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 9', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',2,2]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 10', json.loads(json.dumps(solve({'packs':{},'extents':[],'requested':[]}))), json.loads(json.dumps('')))
check('missing-byte fixture 11', json.loads(json.dumps(solve({'packs':{'a':"p"*N},'extents':[[0,'a',0,N]],'requested':[0]}))), json.loads(json.dumps('p')))
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| missing-byte fixture 0 | axbycz | axbycz | Passed |
| missing-byte fixture 1 | cac | cac | Passed |
| missing-byte fixture 2 | a? | None | Failed |
| missing-byte fixture 3 | None | None | Passed |
| missing-byte fixture 4 | a | a | Passed |
| missing-byte fixture 5 | None | None | Passed |
| missing-byte fixture 6 | None | None | Passed |
| missing-byte fixture 7 | None | None | Passed |
| missing-byte fixture 8 | None | None | Passed |
| missing-byte fixture 9 | None | None | Passed |
| missing-byte fixture 10 | | | Passed |
| missing-byte fixture 11 | p | p | Passed |
SHA-256 / fc47176d750f54c3be7b80eb4d514a397b153e22220ec72772621cde468641e2
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
cells={}
for logical,handle,physical,count in x['extents']:
if count==0: continue
if logical<0 or physical<0 or count<0: return None
if handle not in x['packs']: return None
pack=x['packs'][handle]
if physical+count>len(pack): return None
for i in range(count):
at=logical+i
if at in cells: return None
cells[at]=pack[physical+i]
if any(at not in cells for at in x['requested']): return None
return ''.join(cells[at] for at in x['requested'])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('missing-byte fixture 0', json.loads(json.dumps(solve({'packs':{'a':'QabcZ','b':'RxyzS'},'extents':[[3,'b',1,3],[0,'a',1,3]],'requested':[0,3,1,4,2,5]}))), json.loads(json.dumps('axbycz')))
check('missing-byte fixture 1', json.loads(json.dumps(solve({'packs':{'a':'QabcZ'},'extents':[[0,'a',1,3]],'requested':[2,0,2]}))), json.loads(json.dumps('cac')))
check('missing-byte fixture 2', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3]],'requested':[0,3]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 3', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,3],[1,'a',1,1]],'requested':[1]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 4', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'missing',0,0],[0,'a',0,3]],'requested':[0]}))), json.loads(json.dumps('a')))
check('missing-byte fixture 5', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[-1,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 6', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',-1,1]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 7', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',0,-1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 8', json.loads(json.dumps(solve({'packs':{},'extents':[[0,'a',0,1]],'requested':[]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 9', json.loads(json.dumps(solve({'packs':{'a':'abc'},'extents':[[0,'a',2,2]],'requested':[0]}))), json.loads(json.dumps(None)))
check('missing-byte fixture 10', json.loads(json.dumps(solve({'packs':{},'extents':[],'requested':[]}))), json.loads(json.dumps('')))
check('missing-byte fixture 11', json.loads(json.dumps(solve({'packs':{'a':"p"*N},'extents':[[0,'a',0,N]],'requested':[0]}))), json.loads(json.dumps('p')))
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| missing-byte fixture 0 | axbycz | axbycz | Passed |
| missing-byte fixture 1 | cac | cac | Passed |
| missing-byte fixture 2 | None | None | Passed |
| missing-byte fixture 3 | None | None | Passed |
| missing-byte fixture 4 | a | a | Passed |
| missing-byte fixture 5 | None | None | Passed |
| missing-byte fixture 6 | None | None | Passed |
| missing-byte fixture 7 | None | None | Passed |
| missing-byte fixture 8 | None | None | Passed |
| missing-byte fixture 9 | None | None | Passed |
| missing-byte fixture 10 | | | Passed |
| missing-byte fixture 11 | p | p | Passed |
SHA-256 / 3ea0ea00b562dc17036d6a4aebba6406d3bc21049ee58fb50e6ab78f0ee5c6fa
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:20.096991+00:00.
Case digest / 008ae3a9aaf07f4c5f5c436311e506fb3830921aaed85671fb5bffee81490451