FAILURE MAP
← Case archive

FA-26366 / HTTP ranges / Open access

A date validator with uncertain revision ordering falls back to the full representation · case 01

A date validator with uncertain revision ordering falls back to the full representation.

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

ROOT CAUSE

The if-range-date-strength decision uses return [206,part] if equal else [200,full].

VERIFIED REPAIR

Apply the bounded decision exactly: return [206,part] if equal and stable else [200,full]

Unsuccessful approach: The partial repair uses return [206,part] if stable else [200,full], which still violates the stated contract.

Case contract

The local If-Range date policy permits [206,part] only for equal dates backed by stable revision ordering; otherwise [200,full].

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(equal, stable, full, part):
    return [206,part] if equal else [200,full]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('if-range-date-strength fixture 0', solve(True,False,"full"*N,"p"*N), [200,"full"*N])
check('if-range-date-strength fixture 1', solve(False,True,"full"*N,"p"), [200,"full"*N])
check('if-range-date-strength fixture 2', solve(True,True,"full"*N,"p"*N), [206,"p"*N])
check('if-range-date-strength fixture 3', solve(False,False,"f","p"), [200,"f"])
check('if-range-date-strength fixture 4', solve(True,False,"",""), [200,""])
check('if-range-date-strength fixture 5', solve(True,True,"f",""), [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 fixtureActualExpectedOutcome
if-range-date-strength fixture 0[206, 'p'][200, 'full']Failed
if-range-date-strength fixture 1[200, 'full'][200, 'full']Passed
if-range-date-strength fixture 2[206, 'p'][206, 'p']Passed
if-range-date-strength fixture 3[200, 'f'][200, 'f']Passed
if-range-date-strength fixture 4[206, ''][200, '']Failed
if-range-date-strength fixture 5[206, ''][206, '']Passed

SHA-256 / 3b43f0c6681ee38b5320c0f4e8758dfd7d2f5056d122871e59aad2ff47bb2913

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(equal, stable, full, part):
    return [206,part] if stable else [200,full]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('if-range-date-strength fixture 0', solve(True,False,"full"*N,"p"*N), [200,"full"*N])
check('if-range-date-strength fixture 1', solve(False,True,"full"*N,"p"), [200,"full"*N])
check('if-range-date-strength fixture 2', solve(True,True,"full"*N,"p"*N), [206,"p"*N])
check('if-range-date-strength fixture 3', solve(False,False,"f","p"), [200,"f"])
check('if-range-date-strength fixture 4', solve(True,False,"",""), [200,""])
check('if-range-date-strength fixture 5', solve(True,True,"f",""), [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 fixtureActualExpectedOutcome
if-range-date-strength fixture 0[200, 'full'][200, 'full']Passed
if-range-date-strength fixture 1[206, 'p'][200, 'full']Failed
if-range-date-strength fixture 2[206, 'p'][206, 'p']Passed
if-range-date-strength fixture 3[200, 'f'][200, 'f']Passed
if-range-date-strength fixture 4[200, ''][200, '']Passed
if-range-date-strength fixture 5[206, ''][206, '']Passed

SHA-256 / b2489b3e65e0c3c84aa7bf8a8b3490f3bf3de279019e464a40b2f5c61c84e9ee

3 / The verified repair

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

N = 1
observations = []
def solve(equal, stable, full, part):
    return [206,part] if equal and stable else [200,full]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('if-range-date-strength fixture 0', solve(True,False,"full"*N,"p"*N), [200,"full"*N])
check('if-range-date-strength fixture 1', solve(False,True,"full"*N,"p"), [200,"full"*N])
check('if-range-date-strength fixture 2', solve(True,True,"full"*N,"p"*N), [206,"p"*N])
check('if-range-date-strength fixture 3', solve(False,False,"f","p"), [200,"f"])
check('if-range-date-strength fixture 4', solve(True,False,"",""), [200,""])
check('if-range-date-strength fixture 5', solve(True,True,"f",""), [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 fixtureActualExpectedOutcome
if-range-date-strength fixture 0[200, 'full'][200, 'full']Passed
if-range-date-strength fixture 1[200, 'full'][200, 'full']Passed
if-range-date-strength fixture 2[206, 'p'][206, 'p']Passed
if-range-date-strength fixture 3[200, 'f'][200, 'f']Passed
if-range-date-strength fixture 4[200, ''][200, '']Passed
if-range-date-strength fixture 5[206, ''][206, '']Passed

SHA-256 / 187666d4b0d571b951c259a61b14b48182a6dd106498d368bf4de548933dff06

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.340015+00:00.

Case digest / 5352ccc53d0ddeaaa27cd7a7d7bb24b6cbe970272ad60980f512923b2bcde6db