FAILURE MAP
← Case archive

FA-26751 / HTTP ranges / Open access

Missing response validators cannot silently preserve a saved validator · case 01

Missing response validators cannot silently preserve a saved validator.

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

ROOT CAUSE

The resume-etag-must-be-present decision uses return body if incoming is None or incoming==saved else None.

VERIFIED REPAIR

Apply the bounded decision exactly: return body if incoming is not None and incoming==saved else None

Unsuccessful approach: The partial repair uses return body if (incoming or saved)==saved else None, which still violates the stated contract.

Case contract

Resumption accepts only an explicitly present incoming validator equal to the saved strong tag; absent or changed tags yield None.

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(saved, incoming, body):
    return body if incoming is None or incoming==saved else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('resume-etag-must-be-present fixture 0', solve("v",None,"p"*N), None)
check('resume-etag-must-be-present fixture 1', solve("v","","p"), None)
check('resume-etag-must-be-present fixture 2', solve("v","v","p"*N), "p"*N)
check('resume-etag-must-be-present fixture 3', solve("v","w","p"), None)
check('resume-etag-must-be-present fixture 4', solve("", "", "p"), "p")
check('resume-etag-must-be-present fixture 5', solve("v","v",""), "")
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
resume-etag-must-be-present fixture 0pNoneFailed
resume-etag-must-be-present fixture 1NoneNonePassed
resume-etag-must-be-present fixture 2ppPassed
resume-etag-must-be-present fixture 3NoneNonePassed
resume-etag-must-be-present fixture 4ppPassed
resume-etag-must-be-present fixture 5Passed

SHA-256 / ce5f69f0db123166ad696143880c140913bde09e72476b180539113f56659368

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(saved, incoming, body):
    return body if (incoming or saved)==saved else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('resume-etag-must-be-present fixture 0', solve("v",None,"p"*N), None)
check('resume-etag-must-be-present fixture 1', solve("v","","p"), None)
check('resume-etag-must-be-present fixture 2', solve("v","v","p"*N), "p"*N)
check('resume-etag-must-be-present fixture 3', solve("v","w","p"), None)
check('resume-etag-must-be-present fixture 4', solve("", "", "p"), "p")
check('resume-etag-must-be-present fixture 5', solve("v","v",""), "")
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
resume-etag-must-be-present fixture 0pNoneFailed
resume-etag-must-be-present fixture 1pNoneFailed
resume-etag-must-be-present fixture 2ppPassed
resume-etag-must-be-present fixture 3NoneNonePassed
resume-etag-must-be-present fixture 4ppPassed
resume-etag-must-be-present fixture 5Passed

SHA-256 / 3917806d407ba648629cc738bf46defaca437d31279881063c779a10435526c6

3 / The verified repair

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

N = 1
observations = []
def solve(saved, incoming, body):
    return body if incoming is not None and incoming==saved else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('resume-etag-must-be-present fixture 0', solve("v",None,"p"*N), None)
check('resume-etag-must-be-present fixture 1', solve("v","","p"), None)
check('resume-etag-must-be-present fixture 2', solve("v","v","p"*N), "p"*N)
check('resume-etag-must-be-present fixture 3', solve("v","w","p"), None)
check('resume-etag-must-be-present fixture 4', solve("", "", "p"), "p")
check('resume-etag-must-be-present fixture 5', solve("v","v",""), "")
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
resume-etag-must-be-present fixture 0NoneNonePassed
resume-etag-must-be-present fixture 1NoneNonePassed
resume-etag-must-be-present fixture 2ppPassed
resume-etag-must-be-present fixture 3NoneNonePassed
resume-etag-must-be-present fixture 4ppPassed
resume-etag-must-be-present fixture 5Passed

SHA-256 / 8e9282355c75cee733311fcfd70eef5c40bf5694e60eec706afd16d4e60e406d

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

Case digest / cb734cfd22be0b87bddc3fe52e3de38bd157e8f2913e299f805fe96a2882c01d