FAILURE MAP
← Case archive

FA-23856 / Client state / Open access

Prefetched route resource adoption: Prefetch promote consumer · case 01

Prefetch promote consumer.

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

ROOT CAUSE

The prefetch-promote-consumer client decision evaluates `['navigation']` instead of `subscribers+['navigation']`.

THE FAILURE

The prefetch-promote-consumer client decision evaluates `['navigation']` instead of `subscribers+['navigation']`.

Unsuccessful approach: The partial repair `list(set(subscribers+['navigation']))` still violates the explicit fixture contract.

Case contract

A prefetch handle is keyed by route and build version, has an exclusive expiration deadline, shares pending work, and is adopted only when ready. Consumer registrations are counted, including repeated registrations. Operation prefetch-promote-consumer has the six explicit input/output oracles below.

Why this case matters

An offline client lifecycle model that isolates a state-management defect without DOM rendering or network services.

1 / The failure

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

N = 1
observations = []
def solve(operation, s):
    route, cached_route, version, cached_version, expires, now, status, subscribers = s
    if operation == 'adopt-exact-route-version':
        return route==cached_route and version==cached_version
    if operation == 'expiry-at-boundary':
        return expires is None or now<expires
    if operation == 'ready-resource-adoption':
        return status=='ready'
    if operation == 'pending-resource-sharing':
        return status=='pending' and route==cached_route
    if operation == 'unobserved-cancel':
        return not subscribers and status=='pending'
    if operation == 'subscriber-reference-count':
        return len(subscribers)
    if operation == 'failed-prefetch-retry':
        return status=='failed'
    if operation == 'prefetch-promote-consumer':
        return ['navigation']
    if operation == 'remaining-resource-life':
        return None if expires is None else max(0,expires-now)
    if operation == 'refresh-old-build':
        return version!=cached_version
    raise ValueError('unknown modeled operation')
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('adopt-exact-route-version scenario 1', solve('adopt-exact-route-version', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('adopt-exact-route-version scenario 2', solve('adopt-exact-route-version', ('/a','/a',1,1,10,10,'ready',[])), True)
check('adopt-exact-route-version scenario 3', solve('adopt-exact-route-version', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('adopt-exact-route-version scenario 4', solve('adopt-exact-route-version', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('adopt-exact-route-version scenario 5', solve('adopt-exact-route-version', ('/b','/b',1,1,12,10,'failed',[])), True)
check('adopt-exact-route-version scenario 6', solve('adopt-exact-route-version', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('expiry-at-boundary scenario 1', solve('expiry-at-boundary', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('expiry-at-boundary scenario 2', solve('expiry-at-boundary', ('/a','/a',1,1,10,10,'ready',[])), False)
check('expiry-at-boundary scenario 3', solve('expiry-at-boundary', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), True)
check('expiry-at-boundary scenario 4', solve('expiry-at-boundary', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('expiry-at-boundary scenario 5', solve('expiry-at-boundary', ('/b','/b',1,1,12,10,'failed',[])), True)
check('expiry-at-boundary scenario 6', solve('expiry-at-boundary', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('ready-resource-adoption scenario 1', solve('ready-resource-adoption', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('ready-resource-adoption scenario 2', solve('ready-resource-adoption', ('/a','/a',1,1,10,10,'ready',[])), True)
check('ready-resource-adoption scenario 3', solve('ready-resource-adoption', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), True)
check('ready-resource-adoption scenario 4', solve('ready-resource-adoption', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('ready-resource-adoption scenario 5', solve('ready-resource-adoption', ('/b','/b',1,1,12,10,'failed',[])), False)
check('ready-resource-adoption scenario 6', solve('ready-resource-adoption', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('pending-resource-sharing scenario 1', solve('pending-resource-sharing', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('pending-resource-sharing scenario 2', solve('pending-resource-sharing', ('/a','/a',1,1,10,10,'ready',[])), False)
check('pending-resource-sharing scenario 3', solve('pending-resource-sharing', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('pending-resource-sharing scenario 4', solve('pending-resource-sharing', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('pending-resource-sharing scenario 5', solve('pending-resource-sharing', ('/b','/b',1,1,12,10,'failed',[])), False)
check('pending-resource-sharing scenario 6', solve('pending-resource-sharing', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('unobserved-cancel scenario 1', solve('unobserved-cancel', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('unobserved-cancel scenario 2', solve('unobserved-cancel', ('/a','/a',1,1,10,10,'ready',[])), False)
check('unobserved-cancel scenario 3', solve('unobserved-cancel', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('unobserved-cancel scenario 4', solve('unobserved-cancel', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('unobserved-cancel scenario 5', solve('unobserved-cancel', ('/b','/b',1,1,12,10,'failed',[])), False)
check('unobserved-cancel scenario 6', solve('unobserved-cancel', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('subscriber-reference-count scenario 1', solve('subscriber-reference-count', ('/a','/a',N,N,10,9,'ready',['screen'])), 1)
check('subscriber-reference-count scenario 2', solve('subscriber-reference-count', ('/a','/a',1,1,10,10,'ready',[])), 0)
check('subscriber-reference-count scenario 3', solve('subscriber-reference-count', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), 2)
check('subscriber-reference-count scenario 4', solve('subscriber-reference-count', ('/a','/a',2,1,12,10,'pending',['screen'])), 1)
check('subscriber-reference-count scenario 5', solve('subscriber-reference-count', ('/b','/b',1,1,12,10,'failed',[])), 0)
check('subscriber-reference-count scenario 6', solve('subscriber-reference-count', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), 2)
check('failed-prefetch-retry scenario 1', solve('failed-prefetch-retry', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('failed-prefetch-retry scenario 2', solve('failed-prefetch-retry', ('/a','/a',1,1,10,10,'ready',[])), False)
check('failed-prefetch-retry scenario 3', solve('failed-prefetch-retry', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('failed-prefetch-retry scenario 4', solve('failed-prefetch-retry', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('failed-prefetch-retry scenario 5', solve('failed-prefetch-retry', ('/b','/b',1,1,12,10,'failed',[])), True)
check('failed-prefetch-retry scenario 6', solve('failed-prefetch-retry', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('prefetch-promote-consumer scenario 1', solve('prefetch-promote-consumer', ('/a','/a',N,N,10,9,'ready',['screen'])), ['screen','navigation'])
check('prefetch-promote-consumer scenario 2', solve('prefetch-promote-consumer', ('/a','/a',1,1,10,10,'ready',[])), ['navigation'])
check('prefetch-promote-consumer scenario 3', solve('prefetch-promote-consumer', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), ['screen','preview','navigation'])
check('prefetch-promote-consumer scenario 4', solve('prefetch-promote-consumer', ('/a','/a',2,1,12,10,'pending',['screen'])), ['screen','navigation'])
check('prefetch-promote-consumer scenario 5', solve('prefetch-promote-consumer', ('/b','/b',1,1,12,10,'failed',[])), ['navigation'])
check('prefetch-promote-consumer scenario 6', solve('prefetch-promote-consumer', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), ['screen','screen','navigation'])
check('remaining-resource-life scenario 1', solve('remaining-resource-life', ('/a','/a',N,N,10,9,'ready',['screen'])), 1)
check('remaining-resource-life scenario 2', solve('remaining-resource-life', ('/a','/a',1,1,10,10,'ready',[])), 0)
check('remaining-resource-life scenario 3', solve('remaining-resource-life', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), 2)
check('remaining-resource-life scenario 4', solve('remaining-resource-life', ('/a','/a',2,1,12,10,'pending',['screen'])), 2)
check('remaining-resource-life scenario 5', solve('remaining-resource-life', ('/b','/b',1,1,12,10,'failed',[])), 2)
check('remaining-resource-life scenario 6', solve('remaining-resource-life', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), None)
check('refresh-old-build scenario 1', solve('refresh-old-build', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('refresh-old-build scenario 2', solve('refresh-old-build', ('/a','/a',1,1,10,10,'ready',[])), False)
check('refresh-old-build scenario 3', solve('refresh-old-build', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('refresh-old-build scenario 4', solve('refresh-old-build', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('refresh-old-build scenario 5', solve('refresh-old-build', ('/b','/b',1,1,12,10,'failed',[])), False)
check('refresh-old-build scenario 6', solve('refresh-old-build', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
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
adopt-exact-route-version scenario 1TrueTruePassed
adopt-exact-route-version scenario 2TrueTruePassed
adopt-exact-route-version scenario 3FalseFalsePassed
adopt-exact-route-version scenario 4FalseFalsePassed
adopt-exact-route-version scenario 5TrueTruePassed
adopt-exact-route-version scenario 6TrueTruePassed
expiry-at-boundary scenario 1TrueTruePassed
expiry-at-boundary scenario 2FalseFalsePassed
expiry-at-boundary scenario 3TrueTruePassed
expiry-at-boundary scenario 4TrueTruePassed
expiry-at-boundary scenario 5TrueTruePassed
expiry-at-boundary scenario 6TrueTruePassed
ready-resource-adoption scenario 1TrueTruePassed
ready-resource-adoption scenario 2TrueTruePassed
ready-resource-adoption scenario 3TrueTruePassed
ready-resource-adoption scenario 4FalseFalsePassed
ready-resource-adoption scenario 5FalseFalsePassed
ready-resource-adoption scenario 6TrueTruePassed
pending-resource-sharing scenario 1FalseFalsePassed
pending-resource-sharing scenario 2FalseFalsePassed
pending-resource-sharing scenario 3FalseFalsePassed
pending-resource-sharing scenario 4TrueTruePassed
pending-resource-sharing scenario 5FalseFalsePassed
pending-resource-sharing scenario 6FalseFalsePassed
unobserved-cancel scenario 1FalseFalsePassed
unobserved-cancel scenario 2FalseFalsePassed
unobserved-cancel scenario 3FalseFalsePassed
unobserved-cancel scenario 4FalseFalsePassed
unobserved-cancel scenario 5FalseFalsePassed
unobserved-cancel scenario 6FalseFalsePassed
subscriber-reference-count scenario 111Passed
subscriber-reference-count scenario 200Passed
subscriber-reference-count scenario 322Passed
subscriber-reference-count scenario 411Passed
subscriber-reference-count scenario 500Passed
subscriber-reference-count scenario 622Passed
failed-prefetch-retry scenario 1FalseFalsePassed
failed-prefetch-retry scenario 2FalseFalsePassed
failed-prefetch-retry scenario 3FalseFalsePassed
failed-prefetch-retry scenario 4FalseFalsePassed
failed-prefetch-retry scenario 5TrueTruePassed
failed-prefetch-retry scenario 6FalseFalsePassed
prefetch-promote-consumer scenario 1['navigation']['screen', 'navigation']Failed
prefetch-promote-consumer scenario 2['navigation']['navigation']Passed
prefetch-promote-consumer scenario 3['navigation']['screen', 'preview', 'navigation']Failed
prefetch-promote-consumer scenario 4['navigation']['screen', 'navigation']Failed
prefetch-promote-consumer scenario 5['navigation']['navigation']Passed
prefetch-promote-consumer scenario 6['navigation']['screen', 'screen', 'navigation']Failed
remaining-resource-life scenario 111Passed
remaining-resource-life scenario 200Passed
remaining-resource-life scenario 322Passed
remaining-resource-life scenario 422Passed
remaining-resource-life scenario 522Passed
remaining-resource-life scenario 6NoneNonePassed
refresh-old-build scenario 1FalseFalsePassed
refresh-old-build scenario 2FalseFalsePassed
refresh-old-build scenario 3FalseFalsePassed
refresh-old-build scenario 4TrueTruePassed
refresh-old-build scenario 5FalseFalsePassed
refresh-old-build scenario 6FalseFalsePassed

SHA-256 / d91da58a91b338efadf4638c78453a1b3ae708287c8dc23ef757f18ebfab48a4

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(operation, s):
    route, cached_route, version, cached_version, expires, now, status, subscribers = s
    if operation == 'adopt-exact-route-version':
        return route==cached_route and version==cached_version
    if operation == 'expiry-at-boundary':
        return expires is None or now<expires
    if operation == 'ready-resource-adoption':
        return status=='ready'
    if operation == 'pending-resource-sharing':
        return status=='pending' and route==cached_route
    if operation == 'unobserved-cancel':
        return not subscribers and status=='pending'
    if operation == 'subscriber-reference-count':
        return len(subscribers)
    if operation == 'failed-prefetch-retry':
        return status=='failed'
    if operation == 'prefetch-promote-consumer':
        return list(set(subscribers+['navigation']))
    if operation == 'remaining-resource-life':
        return None if expires is None else max(0,expires-now)
    if operation == 'refresh-old-build':
        return version!=cached_version
    raise ValueError('unknown modeled operation')
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('adopt-exact-route-version scenario 1', solve('adopt-exact-route-version', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('adopt-exact-route-version scenario 2', solve('adopt-exact-route-version', ('/a','/a',1,1,10,10,'ready',[])), True)
check('adopt-exact-route-version scenario 3', solve('adopt-exact-route-version', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('adopt-exact-route-version scenario 4', solve('adopt-exact-route-version', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('adopt-exact-route-version scenario 5', solve('adopt-exact-route-version', ('/b','/b',1,1,12,10,'failed',[])), True)
check('adopt-exact-route-version scenario 6', solve('adopt-exact-route-version', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('expiry-at-boundary scenario 1', solve('expiry-at-boundary', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('expiry-at-boundary scenario 2', solve('expiry-at-boundary', ('/a','/a',1,1,10,10,'ready',[])), False)
check('expiry-at-boundary scenario 3', solve('expiry-at-boundary', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), True)
check('expiry-at-boundary scenario 4', solve('expiry-at-boundary', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('expiry-at-boundary scenario 5', solve('expiry-at-boundary', ('/b','/b',1,1,12,10,'failed',[])), True)
check('expiry-at-boundary scenario 6', solve('expiry-at-boundary', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('ready-resource-adoption scenario 1', solve('ready-resource-adoption', ('/a','/a',N,N,10,9,'ready',['screen'])), True)
check('ready-resource-adoption scenario 2', solve('ready-resource-adoption', ('/a','/a',1,1,10,10,'ready',[])), True)
check('ready-resource-adoption scenario 3', solve('ready-resource-adoption', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), True)
check('ready-resource-adoption scenario 4', solve('ready-resource-adoption', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('ready-resource-adoption scenario 5', solve('ready-resource-adoption', ('/b','/b',1,1,12,10,'failed',[])), False)
check('ready-resource-adoption scenario 6', solve('ready-resource-adoption', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), True)
check('pending-resource-sharing scenario 1', solve('pending-resource-sharing', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('pending-resource-sharing scenario 2', solve('pending-resource-sharing', ('/a','/a',1,1,10,10,'ready',[])), False)
check('pending-resource-sharing scenario 3', solve('pending-resource-sharing', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('pending-resource-sharing scenario 4', solve('pending-resource-sharing', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('pending-resource-sharing scenario 5', solve('pending-resource-sharing', ('/b','/b',1,1,12,10,'failed',[])), False)
check('pending-resource-sharing scenario 6', solve('pending-resource-sharing', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('unobserved-cancel scenario 1', solve('unobserved-cancel', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('unobserved-cancel scenario 2', solve('unobserved-cancel', ('/a','/a',1,1,10,10,'ready',[])), False)
check('unobserved-cancel scenario 3', solve('unobserved-cancel', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('unobserved-cancel scenario 4', solve('unobserved-cancel', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('unobserved-cancel scenario 5', solve('unobserved-cancel', ('/b','/b',1,1,12,10,'failed',[])), False)
check('unobserved-cancel scenario 6', solve('unobserved-cancel', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('subscriber-reference-count scenario 1', solve('subscriber-reference-count', ('/a','/a',N,N,10,9,'ready',['screen'])), 1)
check('subscriber-reference-count scenario 2', solve('subscriber-reference-count', ('/a','/a',1,1,10,10,'ready',[])), 0)
check('subscriber-reference-count scenario 3', solve('subscriber-reference-count', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), 2)
check('subscriber-reference-count scenario 4', solve('subscriber-reference-count', ('/a','/a',2,1,12,10,'pending',['screen'])), 1)
check('subscriber-reference-count scenario 5', solve('subscriber-reference-count', ('/b','/b',1,1,12,10,'failed',[])), 0)
check('subscriber-reference-count scenario 6', solve('subscriber-reference-count', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), 2)
check('failed-prefetch-retry scenario 1', solve('failed-prefetch-retry', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('failed-prefetch-retry scenario 2', solve('failed-prefetch-retry', ('/a','/a',1,1,10,10,'ready',[])), False)
check('failed-prefetch-retry scenario 3', solve('failed-prefetch-retry', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('failed-prefetch-retry scenario 4', solve('failed-prefetch-retry', ('/a','/a',2,1,12,10,'pending',['screen'])), False)
check('failed-prefetch-retry scenario 5', solve('failed-prefetch-retry', ('/b','/b',1,1,12,10,'failed',[])), True)
check('failed-prefetch-retry scenario 6', solve('failed-prefetch-retry', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
check('prefetch-promote-consumer scenario 1', solve('prefetch-promote-consumer', ('/a','/a',N,N,10,9,'ready',['screen'])), ['screen','navigation'])
check('prefetch-promote-consumer scenario 2', solve('prefetch-promote-consumer', ('/a','/a',1,1,10,10,'ready',[])), ['navigation'])
check('prefetch-promote-consumer scenario 3', solve('prefetch-promote-consumer', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), ['screen','preview','navigation'])
check('prefetch-promote-consumer scenario 4', solve('prefetch-promote-consumer', ('/a','/a',2,1,12,10,'pending',['screen'])), ['screen','navigation'])
check('prefetch-promote-consumer scenario 5', solve('prefetch-promote-consumer', ('/b','/b',1,1,12,10,'failed',[])), ['navigation'])
check('prefetch-promote-consumer scenario 6', solve('prefetch-promote-consumer', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), ['screen','screen','navigation'])
check('remaining-resource-life scenario 1', solve('remaining-resource-life', ('/a','/a',N,N,10,9,'ready',['screen'])), 1)
check('remaining-resource-life scenario 2', solve('remaining-resource-life', ('/a','/a',1,1,10,10,'ready',[])), 0)
check('remaining-resource-life scenario 3', solve('remaining-resource-life', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), 2)
check('remaining-resource-life scenario 4', solve('remaining-resource-life', ('/a','/a',2,1,12,10,'pending',['screen'])), 2)
check('remaining-resource-life scenario 5', solve('remaining-resource-life', ('/b','/b',1,1,12,10,'failed',[])), 2)
check('remaining-resource-life scenario 6', solve('remaining-resource-life', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), None)
check('refresh-old-build scenario 1', solve('refresh-old-build', ('/a','/a',N,N,10,9,'ready',['screen'])), False)
check('refresh-old-build scenario 2', solve('refresh-old-build', ('/a','/a',1,1,10,10,'ready',[])), False)
check('refresh-old-build scenario 3', solve('refresh-old-build', ('/a','/b',1,1,12,10,'ready',['screen','preview'])), False)
check('refresh-old-build scenario 4', solve('refresh-old-build', ('/a','/a',2,1,12,10,'pending',['screen'])), True)
check('refresh-old-build scenario 5', solve('refresh-old-build', ('/b','/b',1,1,12,10,'failed',[])), False)
check('refresh-old-build scenario 6', solve('refresh-old-build', ('/a','/a',1,1,None,10,'ready',['screen','screen'])), False)
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
adopt-exact-route-version scenario 1TrueTruePassed
adopt-exact-route-version scenario 2TrueTruePassed
adopt-exact-route-version scenario 3FalseFalsePassed
adopt-exact-route-version scenario 4FalseFalsePassed
adopt-exact-route-version scenario 5TrueTruePassed
adopt-exact-route-version scenario 6TrueTruePassed
expiry-at-boundary scenario 1TrueTruePassed
expiry-at-boundary scenario 2FalseFalsePassed
expiry-at-boundary scenario 3TrueTruePassed
expiry-at-boundary scenario 4TrueTruePassed
expiry-at-boundary scenario 5TrueTruePassed
expiry-at-boundary scenario 6TrueTruePassed
ready-resource-adoption scenario 1TrueTruePassed
ready-resource-adoption scenario 2TrueTruePassed
ready-resource-adoption scenario 3TrueTruePassed
ready-resource-adoption scenario 4FalseFalsePassed
ready-resource-adoption scenario 5FalseFalsePassed
ready-resource-adoption scenario 6TrueTruePassed
pending-resource-sharing scenario 1FalseFalsePassed
pending-resource-sharing scenario 2FalseFalsePassed
pending-resource-sharing scenario 3FalseFalsePassed
pending-resource-sharing scenario 4TrueTruePassed
pending-resource-sharing scenario 5FalseFalsePassed
pending-resource-sharing scenario 6FalseFalsePassed
unobserved-cancel scenario 1FalseFalsePassed
unobserved-cancel scenario 2FalseFalsePassed
unobserved-cancel scenario 3FalseFalsePassed
unobserved-cancel scenario 4FalseFalsePassed
unobserved-cancel scenario 5FalseFalsePassed
unobserved-cancel scenario 6FalseFalsePassed
subscriber-reference-count scenario 111Passed
subscriber-reference-count scenario 200Passed
subscriber-reference-count scenario 322Passed
subscriber-reference-count scenario 411Passed
subscriber-reference-count scenario 500Passed
subscriber-reference-count scenario 622Passed
failed-prefetch-retry scenario 1FalseFalsePassed
failed-prefetch-retry scenario 2FalseFalsePassed
failed-prefetch-retry scenario 3FalseFalsePassed
failed-prefetch-retry scenario 4FalseFalsePassed
failed-prefetch-retry scenario 5TrueTruePassed
failed-prefetch-retry scenario 6FalseFalsePassed
prefetch-promote-consumer scenario 1['screen', 'navigation']['screen', 'navigation']Passed
prefetch-promote-consumer scenario 2['navigation']['navigation']Passed
prefetch-promote-consumer scenario 3['preview', 'screen', 'navigation']['screen', 'preview', 'navigation']Failed
prefetch-promote-consumer scenario 4['screen', 'navigation']['screen', 'navigation']Passed
prefetch-promote-consumer scenario 5['navigation']['navigation']Passed
prefetch-promote-consumer scenario 6['screen', 'navigation']['screen', 'screen', 'navigation']Failed
remaining-resource-life scenario 111Passed
remaining-resource-life scenario 200Passed
remaining-resource-life scenario 322Passed
remaining-resource-life scenario 422Passed
remaining-resource-life scenario 522Passed
remaining-resource-life scenario 6NoneNonePassed
refresh-old-build scenario 1FalseFalsePassed
refresh-old-build scenario 2FalseFalsePassed
refresh-old-build scenario 3FalseFalsePassed
refresh-old-build scenario 4TrueTruePassed
refresh-old-build scenario 5FalseFalsePassed
refresh-old-build scenario 6FalseFalsePassed

SHA-256 / 41522b55f510b607453c439fd39ccd4923d5f54741f72d62d29f0111de71d4dd

HELD IN THE MEMBER ARCHIVE

The verified repair and its recorded checks are member-only.

This mechanism has 60 recorded checks per implementation. The open-access tier publishes the failure and the unsuccessful fix; the repaired source that passes every check, and the observations that prove it, are available to members.

Every case sharing this mechanism uses the same contract and the same repair, so this one record is held back for all of them.

Member access is invitation-based. Sign in with your invited account to inspect the repair.

Sign in to the archive ↗

Verification & scope

Only the explicitly specified operations and finite deterministic records are modeled; no browser or framework conformance is claimed. 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:40:51.746070+00:00.

Case digest / 42bba67346f283dc7fced575f47e04a8d2c4e680cc777fcf73d9d3a7d07c2d25