{"abstract":"Dirty transition gate.","category":"Client state","checks":60,"contract":"The blocker asks only for dirty cross-location transitions without a one-shot bypass. Confirmation follows the captured pending destination, cancellation keeps current location and edits, and push versus replace is independent. Operation dirty-transition-gate has the six explicit input/output oracles below.","evaluation_group":"s3-client-state-navigation-blocker","failed_approach":"The partial repair `dirty and target!=current and not replace` still violates the explicit fixture contract.","family":"s3-client-state-navigation-blocker-dirty-transition-gate","id":"FA-23676","implementations":{"attempt":{"sha256":"ec9b4e4635e17a9de2f6a73e1275d23427d708b0255c68fac919c7acd0cf33ae","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    dirty, target, current, pending, decision, bypass, replace = s\n    if operation == 'dirty-transition-gate':\n        return dirty and target!=current and not replace\n    if operation == 'cancel-retains-location':\n        return current if decision=='cancel' else target\n    if operation == 'confirm-original-destination':\n        return pending if decision=='confirm' and pending is not None else current\n    if operation == 'pending-request-replacement':\n        return target if decision=='ask' and dirty and not bypass else None\n    if operation == 'clear-on-cancel':\n        return None if decision=='cancel' else pending\n    if operation == 'replace-navigation-mode':\n        return 'replace' if replace else 'push'\n    if operation == 'same-location-noop':\n        return target==current\n    if operation == 'one-shot-bypass-consumption':\n        return False if bypass and target!=current else bypass\n    if operation == 'prompt-visibility':\n        return decision=='ask' and dirty and not bypass and target!=current\n    if operation == 'discard-only-after-confirm':\n        return dirty and decision!='confirm'\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('dirty-transition-gate scenario 1', solve('dirty-transition-gate', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('dirty-transition-gate scenario 2', solve('dirty-transition-gate', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('dirty-transition-gate scenario 3', solve('dirty-transition-gate', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('dirty-transition-gate scenario 4', solve('dirty-transition-gate', (True,'/c','/a','/b','confirm',False,True)), True)\ncheck('dirty-transition-gate scenario 5', solve('dirty-transition-gate', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('dirty-transition-gate scenario 6', solve('dirty-transition-gate', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('cancel-retains-location scenario 1', solve('cancel-retains-location', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('cancel-retains-location scenario 2', solve('cancel-retains-location', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('cancel-retains-location scenario 3', solve('cancel-retains-location', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('cancel-retains-location scenario 4', solve('cancel-retains-location', (True,'/c','/a','/b','confirm',False,True)), '/c')\ncheck('cancel-retains-location scenario 5', solve('cancel-retains-location', (True,'/b','/a',None,'ask',True,False)), '/b')\ncheck('cancel-retains-location scenario 6', solve('cancel-retains-location', (False,'/b','/a',None,'ask',False,False)), '/b')\ncheck('confirm-original-destination scenario 1', solve('confirm-original-destination', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/a')\ncheck('confirm-original-destination scenario 2', solve('confirm-original-destination', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('confirm-original-destination scenario 3', solve('confirm-original-destination', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('confirm-original-destination scenario 4', solve('confirm-original-destination', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('confirm-original-destination scenario 5', solve('confirm-original-destination', (True,'/b','/a',None,'ask',True,False)), '/a')\ncheck('confirm-original-destination scenario 6', solve('confirm-original-destination', (False,'/b','/a',None,'ask',False,False)), '/a')\ncheck('pending-request-replacement scenario 1', solve('pending-request-replacement', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('pending-request-replacement scenario 2', solve('pending-request-replacement', (False,'/a','/a','/old','ask',False,True)), None)\ncheck('pending-request-replacement scenario 3', solve('pending-request-replacement', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('pending-request-replacement scenario 4', solve('pending-request-replacement', (True,'/c','/a','/b','confirm',False,True)), None)\ncheck('pending-request-replacement scenario 5', solve('pending-request-replacement', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('pending-request-replacement scenario 6', solve('pending-request-replacement', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 1', solve('clear-on-cancel', (True,'/b'+str(N),'/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 2', solve('clear-on-cancel', (False,'/a','/a','/old','ask',False,True)), '/old')\ncheck('clear-on-cancel scenario 3', solve('clear-on-cancel', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('clear-on-cancel scenario 4', solve('clear-on-cancel', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('clear-on-cancel scenario 5', solve('clear-on-cancel', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('clear-on-cancel scenario 6', solve('clear-on-cancel', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('replace-navigation-mode scenario 1', solve('replace-navigation-mode', (True,'/b'+str(N),'/a',None,'ask',False,False)), 'push')\ncheck('replace-navigation-mode scenario 2', solve('replace-navigation-mode', (False,'/a','/a','/old','ask',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 3', solve('replace-navigation-mode', (True,'/b','/a','/b','cancel',False,False)), 'push')\ncheck('replace-navigation-mode scenario 4', solve('replace-navigation-mode', (True,'/c','/a','/b','confirm',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 5', solve('replace-navigation-mode', (True,'/b','/a',None,'ask',True,False)), 'push')\ncheck('replace-navigation-mode scenario 6', solve('replace-navigation-mode', (False,'/b','/a',None,'ask',False,False)), 'push')\ncheck('same-location-noop scenario 1', solve('same-location-noop', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('same-location-noop scenario 2', solve('same-location-noop', (False,'/a','/a','/old','ask',False,True)), True)\ncheck('same-location-noop scenario 3', solve('same-location-noop', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('same-location-noop scenario 4', solve('same-location-noop', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('same-location-noop scenario 5', solve('same-location-noop', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('same-location-noop scenario 6', solve('same-location-noop', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 1', solve('one-shot-bypass-consumption', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 2', solve('one-shot-bypass-consumption', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 3', solve('one-shot-bypass-consumption', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 4', solve('one-shot-bypass-consumption', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 5', solve('one-shot-bypass-consumption', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('one-shot-bypass-consumption scenario 6', solve('one-shot-bypass-consumption', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('prompt-visibility scenario 1', solve('prompt-visibility', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('prompt-visibility scenario 2', solve('prompt-visibility', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('prompt-visibility scenario 3', solve('prompt-visibility', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('prompt-visibility scenario 4', solve('prompt-visibility', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('prompt-visibility scenario 5', solve('prompt-visibility', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('prompt-visibility scenario 6', solve('prompt-visibility', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('discard-only-after-confirm scenario 1', solve('discard-only-after-confirm', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('discard-only-after-confirm scenario 2', solve('discard-only-after-confirm', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('discard-only-after-confirm scenario 3', solve('discard-only-after-confirm', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('discard-only-after-confirm scenario 4', solve('discard-only-after-confirm', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('discard-only-after-confirm scenario 5', solve('discard-only-after-confirm', (True,'/b','/a',None,'ask',True,False)), True)\ncheck('discard-only-after-confirm scenario 6', solve('discard-only-after-confirm', (False,'/b','/a',None,'ask',False,False)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"3fa3997209cc19b39830a72623c3ca039af9ae5c5debd24a7440fce28f3c406f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    dirty, target, current, pending, decision, bypass, replace = s\n    if operation == 'dirty-transition-gate':\n        return dirty\n    if operation == 'cancel-retains-location':\n        return current if decision=='cancel' else target\n    if operation == 'confirm-original-destination':\n        return pending if decision=='confirm' and pending is not None else current\n    if operation == 'pending-request-replacement':\n        return target if decision=='ask' and dirty and not bypass else None\n    if operation == 'clear-on-cancel':\n        return None if decision=='cancel' else pending\n    if operation == 'replace-navigation-mode':\n        return 'replace' if replace else 'push'\n    if operation == 'same-location-noop':\n        return target==current\n    if operation == 'one-shot-bypass-consumption':\n        return False if bypass and target!=current else bypass\n    if operation == 'prompt-visibility':\n        return decision=='ask' and dirty and not bypass and target!=current\n    if operation == 'discard-only-after-confirm':\n        return dirty and decision!='confirm'\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('dirty-transition-gate scenario 1', solve('dirty-transition-gate', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('dirty-transition-gate scenario 2', solve('dirty-transition-gate', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('dirty-transition-gate scenario 3', solve('dirty-transition-gate', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('dirty-transition-gate scenario 4', solve('dirty-transition-gate', (True,'/c','/a','/b','confirm',False,True)), True)\ncheck('dirty-transition-gate scenario 5', solve('dirty-transition-gate', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('dirty-transition-gate scenario 6', solve('dirty-transition-gate', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('cancel-retains-location scenario 1', solve('cancel-retains-location', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('cancel-retains-location scenario 2', solve('cancel-retains-location', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('cancel-retains-location scenario 3', solve('cancel-retains-location', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('cancel-retains-location scenario 4', solve('cancel-retains-location', (True,'/c','/a','/b','confirm',False,True)), '/c')\ncheck('cancel-retains-location scenario 5', solve('cancel-retains-location', (True,'/b','/a',None,'ask',True,False)), '/b')\ncheck('cancel-retains-location scenario 6', solve('cancel-retains-location', (False,'/b','/a',None,'ask',False,False)), '/b')\ncheck('confirm-original-destination scenario 1', solve('confirm-original-destination', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/a')\ncheck('confirm-original-destination scenario 2', solve('confirm-original-destination', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('confirm-original-destination scenario 3', solve('confirm-original-destination', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('confirm-original-destination scenario 4', solve('confirm-original-destination', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('confirm-original-destination scenario 5', solve('confirm-original-destination', (True,'/b','/a',None,'ask',True,False)), '/a')\ncheck('confirm-original-destination scenario 6', solve('confirm-original-destination', (False,'/b','/a',None,'ask',False,False)), '/a')\ncheck('pending-request-replacement scenario 1', solve('pending-request-replacement', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('pending-request-replacement scenario 2', solve('pending-request-replacement', (False,'/a','/a','/old','ask',False,True)), None)\ncheck('pending-request-replacement scenario 3', solve('pending-request-replacement', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('pending-request-replacement scenario 4', solve('pending-request-replacement', (True,'/c','/a','/b','confirm',False,True)), None)\ncheck('pending-request-replacement scenario 5', solve('pending-request-replacement', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('pending-request-replacement scenario 6', solve('pending-request-replacement', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 1', solve('clear-on-cancel', (True,'/b'+str(N),'/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 2', solve('clear-on-cancel', (False,'/a','/a','/old','ask',False,True)), '/old')\ncheck('clear-on-cancel scenario 3', solve('clear-on-cancel', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('clear-on-cancel scenario 4', solve('clear-on-cancel', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('clear-on-cancel scenario 5', solve('clear-on-cancel', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('clear-on-cancel scenario 6', solve('clear-on-cancel', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('replace-navigation-mode scenario 1', solve('replace-navigation-mode', (True,'/b'+str(N),'/a',None,'ask',False,False)), 'push')\ncheck('replace-navigation-mode scenario 2', solve('replace-navigation-mode', (False,'/a','/a','/old','ask',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 3', solve('replace-navigation-mode', (True,'/b','/a','/b','cancel',False,False)), 'push')\ncheck('replace-navigation-mode scenario 4', solve('replace-navigation-mode', (True,'/c','/a','/b','confirm',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 5', solve('replace-navigation-mode', (True,'/b','/a',None,'ask',True,False)), 'push')\ncheck('replace-navigation-mode scenario 6', solve('replace-navigation-mode', (False,'/b','/a',None,'ask',False,False)), 'push')\ncheck('same-location-noop scenario 1', solve('same-location-noop', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('same-location-noop scenario 2', solve('same-location-noop', (False,'/a','/a','/old','ask',False,True)), True)\ncheck('same-location-noop scenario 3', solve('same-location-noop', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('same-location-noop scenario 4', solve('same-location-noop', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('same-location-noop scenario 5', solve('same-location-noop', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('same-location-noop scenario 6', solve('same-location-noop', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 1', solve('one-shot-bypass-consumption', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 2', solve('one-shot-bypass-consumption', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 3', solve('one-shot-bypass-consumption', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 4', solve('one-shot-bypass-consumption', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 5', solve('one-shot-bypass-consumption', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('one-shot-bypass-consumption scenario 6', solve('one-shot-bypass-consumption', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('prompt-visibility scenario 1', solve('prompt-visibility', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('prompt-visibility scenario 2', solve('prompt-visibility', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('prompt-visibility scenario 3', solve('prompt-visibility', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('prompt-visibility scenario 4', solve('prompt-visibility', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('prompt-visibility scenario 5', solve('prompt-visibility', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('prompt-visibility scenario 6', solve('prompt-visibility', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('discard-only-after-confirm scenario 1', solve('discard-only-after-confirm', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('discard-only-after-confirm scenario 2', solve('discard-only-after-confirm', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('discard-only-after-confirm scenario 3', solve('discard-only-after-confirm', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('discard-only-after-confirm scenario 4', solve('discard-only-after-confirm', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('discard-only-after-confirm scenario 5', solve('discard-only-after-confirm', (True,'/b','/a',None,'ask',True,False)), True)\ncheck('discard-only-after-confirm scenario 6', solve('discard-only-after-confirm', (False,'/b','/a',None,'ask',False,False)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"56b2ca8512abf40664409312f2a9520af4552d85f7dc0490d486c5f115a48031","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    dirty, target, current, pending, decision, bypass, replace = s\n    if operation == 'dirty-transition-gate':\n        return dirty and target!=current and not bypass\n    if operation == 'cancel-retains-location':\n        return current if decision=='cancel' else target\n    if operation == 'confirm-original-destination':\n        return pending if decision=='confirm' and pending is not None else current\n    if operation == 'pending-request-replacement':\n        return target if decision=='ask' and dirty and not bypass else None\n    if operation == 'clear-on-cancel':\n        return None if decision=='cancel' else pending\n    if operation == 'replace-navigation-mode':\n        return 'replace' if replace else 'push'\n    if operation == 'same-location-noop':\n        return target==current\n    if operation == 'one-shot-bypass-consumption':\n        return False if bypass and target!=current else bypass\n    if operation == 'prompt-visibility':\n        return decision=='ask' and dirty and not bypass and target!=current\n    if operation == 'discard-only-after-confirm':\n        return dirty and decision!='confirm'\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('dirty-transition-gate scenario 1', solve('dirty-transition-gate', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('dirty-transition-gate scenario 2', solve('dirty-transition-gate', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('dirty-transition-gate scenario 3', solve('dirty-transition-gate', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('dirty-transition-gate scenario 4', solve('dirty-transition-gate', (True,'/c','/a','/b','confirm',False,True)), True)\ncheck('dirty-transition-gate scenario 5', solve('dirty-transition-gate', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('dirty-transition-gate scenario 6', solve('dirty-transition-gate', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('cancel-retains-location scenario 1', solve('cancel-retains-location', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('cancel-retains-location scenario 2', solve('cancel-retains-location', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('cancel-retains-location scenario 3', solve('cancel-retains-location', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('cancel-retains-location scenario 4', solve('cancel-retains-location', (True,'/c','/a','/b','confirm',False,True)), '/c')\ncheck('cancel-retains-location scenario 5', solve('cancel-retains-location', (True,'/b','/a',None,'ask',True,False)), '/b')\ncheck('cancel-retains-location scenario 6', solve('cancel-retains-location', (False,'/b','/a',None,'ask',False,False)), '/b')\ncheck('confirm-original-destination scenario 1', solve('confirm-original-destination', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/a')\ncheck('confirm-original-destination scenario 2', solve('confirm-original-destination', (False,'/a','/a','/old','ask',False,True)), '/a')\ncheck('confirm-original-destination scenario 3', solve('confirm-original-destination', (True,'/b','/a','/b','cancel',False,False)), '/a')\ncheck('confirm-original-destination scenario 4', solve('confirm-original-destination', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('confirm-original-destination scenario 5', solve('confirm-original-destination', (True,'/b','/a',None,'ask',True,False)), '/a')\ncheck('confirm-original-destination scenario 6', solve('confirm-original-destination', (False,'/b','/a',None,'ask',False,False)), '/a')\ncheck('pending-request-replacement scenario 1', solve('pending-request-replacement', (True,'/b'+str(N),'/a',None,'ask',False,False)), '/b'+str(N))\ncheck('pending-request-replacement scenario 2', solve('pending-request-replacement', (False,'/a','/a','/old','ask',False,True)), None)\ncheck('pending-request-replacement scenario 3', solve('pending-request-replacement', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('pending-request-replacement scenario 4', solve('pending-request-replacement', (True,'/c','/a','/b','confirm',False,True)), None)\ncheck('pending-request-replacement scenario 5', solve('pending-request-replacement', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('pending-request-replacement scenario 6', solve('pending-request-replacement', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 1', solve('clear-on-cancel', (True,'/b'+str(N),'/a',None,'ask',False,False)), None)\ncheck('clear-on-cancel scenario 2', solve('clear-on-cancel', (False,'/a','/a','/old','ask',False,True)), '/old')\ncheck('clear-on-cancel scenario 3', solve('clear-on-cancel', (True,'/b','/a','/b','cancel',False,False)), None)\ncheck('clear-on-cancel scenario 4', solve('clear-on-cancel', (True,'/c','/a','/b','confirm',False,True)), '/b')\ncheck('clear-on-cancel scenario 5', solve('clear-on-cancel', (True,'/b','/a',None,'ask',True,False)), None)\ncheck('clear-on-cancel scenario 6', solve('clear-on-cancel', (False,'/b','/a',None,'ask',False,False)), None)\ncheck('replace-navigation-mode scenario 1', solve('replace-navigation-mode', (True,'/b'+str(N),'/a',None,'ask',False,False)), 'push')\ncheck('replace-navigation-mode scenario 2', solve('replace-navigation-mode', (False,'/a','/a','/old','ask',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 3', solve('replace-navigation-mode', (True,'/b','/a','/b','cancel',False,False)), 'push')\ncheck('replace-navigation-mode scenario 4', solve('replace-navigation-mode', (True,'/c','/a','/b','confirm',False,True)), 'replace')\ncheck('replace-navigation-mode scenario 5', solve('replace-navigation-mode', (True,'/b','/a',None,'ask',True,False)), 'push')\ncheck('replace-navigation-mode scenario 6', solve('replace-navigation-mode', (False,'/b','/a',None,'ask',False,False)), 'push')\ncheck('same-location-noop scenario 1', solve('same-location-noop', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('same-location-noop scenario 2', solve('same-location-noop', (False,'/a','/a','/old','ask',False,True)), True)\ncheck('same-location-noop scenario 3', solve('same-location-noop', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('same-location-noop scenario 4', solve('same-location-noop', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('same-location-noop scenario 5', solve('same-location-noop', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('same-location-noop scenario 6', solve('same-location-noop', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 1', solve('one-shot-bypass-consumption', (True,'/b'+str(N),'/a',None,'ask',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 2', solve('one-shot-bypass-consumption', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 3', solve('one-shot-bypass-consumption', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('one-shot-bypass-consumption scenario 4', solve('one-shot-bypass-consumption', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('one-shot-bypass-consumption scenario 5', solve('one-shot-bypass-consumption', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('one-shot-bypass-consumption scenario 6', solve('one-shot-bypass-consumption', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('prompt-visibility scenario 1', solve('prompt-visibility', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('prompt-visibility scenario 2', solve('prompt-visibility', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('prompt-visibility scenario 3', solve('prompt-visibility', (True,'/b','/a','/b','cancel',False,False)), False)\ncheck('prompt-visibility scenario 4', solve('prompt-visibility', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('prompt-visibility scenario 5', solve('prompt-visibility', (True,'/b','/a',None,'ask',True,False)), False)\ncheck('prompt-visibility scenario 6', solve('prompt-visibility', (False,'/b','/a',None,'ask',False,False)), False)\ncheck('discard-only-after-confirm scenario 1', solve('discard-only-after-confirm', (True,'/b'+str(N),'/a',None,'ask',False,False)), True)\ncheck('discard-only-after-confirm scenario 2', solve('discard-only-after-confirm', (False,'/a','/a','/old','ask',False,True)), False)\ncheck('discard-only-after-confirm scenario 3', solve('discard-only-after-confirm', (True,'/b','/a','/b','cancel',False,False)), True)\ncheck('discard-only-after-confirm scenario 4', solve('discard-only-after-confirm', (True,'/c','/a','/b','confirm',False,True)), False)\ncheck('discard-only-after-confirm scenario 5', solve('discard-only-after-confirm', (True,'/b','/a',None,'ask',True,False)), True)\ncheck('discard-only-after-confirm scenario 6', solve('discard-only-after-confirm', (False,'/b','/a',None,'ask',False,False)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-client-state-navigation-blocker-dirty-transition-gate","generated_at":"2026-09-29T14:40:49.904787+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline client lifecycle model that isolates a state-management defect without DOM rendering or network services.","repair":"Apply the modeled dirty-transition-gate rule: `dirty and target!=current and not bypass`.","root_cause":"The dirty-transition-gate client decision evaluates `dirty` instead of `dirty and target!=current and not bypass`.","sha256":"322a67ed8715bc3425531df2fc50fd7fd1459147c142bd41d8d905a0ee515e76","title":"Unsaved navigation confirmation: Dirty transition gate · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.476,"exit_code":1,"observations":[{"actual":true,"check":"dirty-transition-gate scenario 1","expected":true,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 2","expected":false,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 3","expected":true,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 4","expected":true,"passed":false},{"actual":true,"check":"dirty-transition-gate scenario 5","expected":false,"passed":false},{"actual":false,"check":"dirty-transition-gate scenario 6","expected":false,"passed":true},{"actual":"/b1","check":"cancel-retains-location scenario 1","expected":"/b1","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 3","expected":"/a","passed":true},{"actual":"/c","check":"cancel-retains-location scenario 4","expected":"/c","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 5","expected":"/b","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 6","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 1","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 3","expected":"/a","passed":true},{"actual":"/b","check":"confirm-original-destination scenario 4","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 5","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 6","expected":"/a","passed":true},{"actual":"/b1","check":"pending-request-replacement scenario 1","expected":"/b1","passed":true},{"actual":null,"check":"pending-request-replacement scenario 2","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 3","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 4","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 5","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 6","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 1","expected":null,"passed":true},{"actual":"/old","check":"clear-on-cancel scenario 2","expected":"/old","passed":true},{"actual":null,"check":"clear-on-cancel scenario 3","expected":null,"passed":true},{"actual":"/b","check":"clear-on-cancel scenario 4","expected":"/b","passed":true},{"actual":null,"check":"clear-on-cancel scenario 5","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 6","expected":null,"passed":true},{"actual":"push","check":"replace-navigation-mode scenario 1","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 2","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 3","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 4","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 5","expected":"push","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 6","expected":"push","passed":true},{"actual":false,"check":"same-location-noop scenario 1","expected":false,"passed":true},{"actual":true,"check":"same-location-noop scenario 2","expected":true,"passed":true},{"actual":false,"check":"same-location-noop scenario 3","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 4","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 5","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 6","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 1","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 2","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 3","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 4","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 5","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 6","expected":false,"passed":true},{"actual":true,"check":"prompt-visibility scenario 1","expected":true,"passed":true},{"actual":false,"check":"prompt-visibility scenario 2","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 3","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 4","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 5","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 6","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 1","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 2","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 3","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 4","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 5","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 6","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dirty-transition-gate scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 4\", \"actual\": false, \"expected\": true, \"passed\": false}, {\"check\": \"dirty-transition-gate scenario 5\", \"actual\": true, \"expected\": false, \"passed\": false}, {\"check\": \"dirty-transition-gate scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"cancel-retains-location scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 4\", \"actual\": \"/c\", \"expected\": \"/c\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 5\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 6\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 1\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 5\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 6\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 1\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 2\", \"actual\": \"/old\", \"expected\": \"/old\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 1\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 2\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 3\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 4\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 5\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 6\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"same-location-noop scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 2\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"same-location-noop scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"prompt-visibility scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 5\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.408,"exit_code":1,"observations":[{"actual":true,"check":"dirty-transition-gate scenario 1","expected":true,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 2","expected":false,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 3","expected":true,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 4","expected":true,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 5","expected":false,"passed":false},{"actual":false,"check":"dirty-transition-gate scenario 6","expected":false,"passed":true},{"actual":"/b1","check":"cancel-retains-location scenario 1","expected":"/b1","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 3","expected":"/a","passed":true},{"actual":"/c","check":"cancel-retains-location scenario 4","expected":"/c","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 5","expected":"/b","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 6","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 1","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 3","expected":"/a","passed":true},{"actual":"/b","check":"confirm-original-destination scenario 4","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 5","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 6","expected":"/a","passed":true},{"actual":"/b1","check":"pending-request-replacement scenario 1","expected":"/b1","passed":true},{"actual":null,"check":"pending-request-replacement scenario 2","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 3","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 4","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 5","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 6","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 1","expected":null,"passed":true},{"actual":"/old","check":"clear-on-cancel scenario 2","expected":"/old","passed":true},{"actual":null,"check":"clear-on-cancel scenario 3","expected":null,"passed":true},{"actual":"/b","check":"clear-on-cancel scenario 4","expected":"/b","passed":true},{"actual":null,"check":"clear-on-cancel scenario 5","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 6","expected":null,"passed":true},{"actual":"push","check":"replace-navigation-mode scenario 1","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 2","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 3","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 4","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 5","expected":"push","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 6","expected":"push","passed":true},{"actual":false,"check":"same-location-noop scenario 1","expected":false,"passed":true},{"actual":true,"check":"same-location-noop scenario 2","expected":true,"passed":true},{"actual":false,"check":"same-location-noop scenario 3","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 4","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 5","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 6","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 1","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 2","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 3","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 4","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 5","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 6","expected":false,"passed":true},{"actual":true,"check":"prompt-visibility scenario 1","expected":true,"passed":true},{"actual":false,"check":"prompt-visibility scenario 2","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 3","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 4","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 5","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 6","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 1","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 2","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 3","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 4","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 5","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 6","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dirty-transition-gate scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 4\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 5\", \"actual\": true, \"expected\": false, \"passed\": false}, {\"check\": \"dirty-transition-gate scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"cancel-retains-location scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 4\", \"actual\": \"/c\", \"expected\": \"/c\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 5\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 6\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 1\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 5\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 6\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 1\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 2\", \"actual\": \"/old\", \"expected\": \"/old\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 1\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 2\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 3\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 4\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 5\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 6\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"same-location-noop scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 2\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"same-location-noop scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"prompt-visibility scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 5\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.531,"exit_code":0,"observations":[{"actual":true,"check":"dirty-transition-gate scenario 1","expected":true,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 2","expected":false,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 3","expected":true,"passed":true},{"actual":true,"check":"dirty-transition-gate scenario 4","expected":true,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 5","expected":false,"passed":true},{"actual":false,"check":"dirty-transition-gate scenario 6","expected":false,"passed":true},{"actual":"/b1","check":"cancel-retains-location scenario 1","expected":"/b1","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"cancel-retains-location scenario 3","expected":"/a","passed":true},{"actual":"/c","check":"cancel-retains-location scenario 4","expected":"/c","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 5","expected":"/b","passed":true},{"actual":"/b","check":"cancel-retains-location scenario 6","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 1","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 2","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 3","expected":"/a","passed":true},{"actual":"/b","check":"confirm-original-destination scenario 4","expected":"/b","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 5","expected":"/a","passed":true},{"actual":"/a","check":"confirm-original-destination scenario 6","expected":"/a","passed":true},{"actual":"/b1","check":"pending-request-replacement scenario 1","expected":"/b1","passed":true},{"actual":null,"check":"pending-request-replacement scenario 2","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 3","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 4","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 5","expected":null,"passed":true},{"actual":null,"check":"pending-request-replacement scenario 6","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 1","expected":null,"passed":true},{"actual":"/old","check":"clear-on-cancel scenario 2","expected":"/old","passed":true},{"actual":null,"check":"clear-on-cancel scenario 3","expected":null,"passed":true},{"actual":"/b","check":"clear-on-cancel scenario 4","expected":"/b","passed":true},{"actual":null,"check":"clear-on-cancel scenario 5","expected":null,"passed":true},{"actual":null,"check":"clear-on-cancel scenario 6","expected":null,"passed":true},{"actual":"push","check":"replace-navigation-mode scenario 1","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 2","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 3","expected":"push","passed":true},{"actual":"replace","check":"replace-navigation-mode scenario 4","expected":"replace","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 5","expected":"push","passed":true},{"actual":"push","check":"replace-navigation-mode scenario 6","expected":"push","passed":true},{"actual":false,"check":"same-location-noop scenario 1","expected":false,"passed":true},{"actual":true,"check":"same-location-noop scenario 2","expected":true,"passed":true},{"actual":false,"check":"same-location-noop scenario 3","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 4","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 5","expected":false,"passed":true},{"actual":false,"check":"same-location-noop scenario 6","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 1","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 2","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 3","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 4","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 5","expected":false,"passed":true},{"actual":false,"check":"one-shot-bypass-consumption scenario 6","expected":false,"passed":true},{"actual":true,"check":"prompt-visibility scenario 1","expected":true,"passed":true},{"actual":false,"check":"prompt-visibility scenario 2","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 3","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 4","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 5","expected":false,"passed":true},{"actual":false,"check":"prompt-visibility scenario 6","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 1","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 2","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 3","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 4","expected":false,"passed":true},{"actual":true,"check":"discard-only-after-confirm scenario 5","expected":true,"passed":true},{"actual":false,"check":"discard-only-after-confirm scenario 6","expected":false,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dirty-transition-gate scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 4\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"dirty-transition-gate scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"cancel-retains-location scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 4\", \"actual\": \"/c\", \"expected\": \"/c\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 5\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"cancel-retains-location scenario 6\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 1\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 2\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 3\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 5\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"confirm-original-destination scenario 6\", \"actual\": \"/a\", \"expected\": \"/a\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 1\", \"actual\": \"/b1\", \"expected\": \"/b1\", \"passed\": true}, {\"check\": \"pending-request-replacement scenario 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"pending-request-replacement scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 1\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 2\", \"actual\": \"/old\", \"expected\": \"/old\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 3\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 4\", \"actual\": \"/b\", \"expected\": \"/b\", \"passed\": true}, {\"check\": \"clear-on-cancel scenario 5\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"clear-on-cancel scenario 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 1\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 2\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 3\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 4\", \"actual\": \"replace\", \"expected\": \"replace\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 5\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"replace-navigation-mode scenario 6\", \"actual\": \"push\", \"expected\": \"push\", \"passed\": true}, {\"check\": \"same-location-noop scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 2\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"same-location-noop scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"same-location-noop scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 1\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"one-shot-bypass-consumption scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"prompt-visibility scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 3\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 5\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"prompt-visibility scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 1\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 2\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 3\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 4\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 5\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"discard-only-after-confirm scenario 6\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}