FA-26346 / HTTP ranges / Open access
A matching cache validator suppresses range unsatisfiability · case 01
A matching cache validator suppresses range unsatisfiability.
ROOT CAUSE
The not-modified-before-unsatisfied decision uses return [416, ""] if not satisfiable else ([304,""] if fresh else [206,body]).
VERIFIED REPAIR
Apply the bounded decision exactly: return [304, ""] if fresh else ([206,body] if satisfiable else [416,""])
Unsuccessful approach: The partial repair uses return [304, ""] if fresh and satisfiable else ([206,body] if satisfiable else [416,""]), which still violates the stated contract.
Case contract
A matching GET cache validator produces [304,empty]; only stale requests evaluate ranges, yielding 206 or 416.
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(fresh, satisfiable, body):
return [416, ""] if not satisfiable else ([304,""] if fresh else [206,body])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('not-modified-before-unsatisfied fixture 0', solve(True,False,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 1', solve(True,True,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 2', solve(False,False,"x"*N), [416,""])
check('not-modified-before-unsatisfied fixture 3', solve(False,True,"x"*N), [206,"x"*N])
check('not-modified-before-unsatisfied fixture 4', solve(True,False,""), [304,""])
check('not-modified-before-unsatisfied fixture 5', solve(False,True,""), [206,""])
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 |
|---|---|---|---|
| not-modified-before-unsatisfied fixture 0 | [416, ''] | [304, ''] | Failed |
| not-modified-before-unsatisfied fixture 1 | [304, ''] | [304, ''] | Passed |
| not-modified-before-unsatisfied fixture 2 | [416, ''] | [416, ''] | Passed |
| not-modified-before-unsatisfied fixture 3 | [206, 'x'] | [206, 'x'] | Passed |
| not-modified-before-unsatisfied fixture 4 | [416, ''] | [304, ''] | Failed |
| not-modified-before-unsatisfied fixture 5 | [206, ''] | [206, ''] | Passed |
SHA-256 / 04c6c364116b1e2fea4e08ce33fba61cb5d2615201c999508193987d09cae30b
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(fresh, satisfiable, body):
return [304, ""] if fresh and satisfiable else ([206,body] if satisfiable else [416,""])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('not-modified-before-unsatisfied fixture 0', solve(True,False,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 1', solve(True,True,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 2', solve(False,False,"x"*N), [416,""])
check('not-modified-before-unsatisfied fixture 3', solve(False,True,"x"*N), [206,"x"*N])
check('not-modified-before-unsatisfied fixture 4', solve(True,False,""), [304,""])
check('not-modified-before-unsatisfied fixture 5', solve(False,True,""), [206,""])
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 |
|---|---|---|---|
| not-modified-before-unsatisfied fixture 0 | [416, ''] | [304, ''] | Failed |
| not-modified-before-unsatisfied fixture 1 | [304, ''] | [304, ''] | Passed |
| not-modified-before-unsatisfied fixture 2 | [416, ''] | [416, ''] | Passed |
| not-modified-before-unsatisfied fixture 3 | [206, 'x'] | [206, 'x'] | Passed |
| not-modified-before-unsatisfied fixture 4 | [416, ''] | [304, ''] | Failed |
| not-modified-before-unsatisfied fixture 5 | [206, ''] | [206, ''] | Passed |
SHA-256 / c54d033981cd874c41ca9a7e5474ea7c3ee43d6f5edbd85cf7f8d98fa3b41e3b
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(fresh, satisfiable, body):
return [304, ""] if fresh else ([206,body] if satisfiable else [416,""])
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('not-modified-before-unsatisfied fixture 0', solve(True,False,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 1', solve(True,True,"x"*N), [304,""])
check('not-modified-before-unsatisfied fixture 2', solve(False,False,"x"*N), [416,""])
check('not-modified-before-unsatisfied fixture 3', solve(False,True,"x"*N), [206,"x"*N])
check('not-modified-before-unsatisfied fixture 4', solve(True,False,""), [304,""])
check('not-modified-before-unsatisfied fixture 5', solve(False,True,""), [206,""])
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 |
|---|---|---|---|
| not-modified-before-unsatisfied fixture 0 | [304, ''] | [304, ''] | Passed |
| not-modified-before-unsatisfied fixture 1 | [304, ''] | [304, ''] | Passed |
| not-modified-before-unsatisfied fixture 2 | [416, ''] | [416, ''] | Passed |
| not-modified-before-unsatisfied fixture 3 | [206, 'x'] | [206, 'x'] | Passed |
| not-modified-before-unsatisfied fixture 4 | [304, ''] | [304, ''] | Passed |
| not-modified-before-unsatisfied fixture 5 | [206, ''] | [206, ''] | Passed |
SHA-256 / b65442e72ead69ad5293182178dee2bfa944a0f1ae7daad97f3b79d9054837bc
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:15.155234+00:00.
Case digest / 667ebcf89d20ca13291d578095d4718a88d320d91051d788db1d9b88703e61fa