{"abstract":"The destructive-click event leaves a notification in executing instead of confirming.","category":"Notification interfaces","checks":35,"contract":"Notification destructive-action confirmation is a bounded visual-notification workflow with mutable policy state {'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False}. Its default transition relation is {('offered', 'destructive-click'): 'confirming', ('confirming', 'confirm-accept'): 'executing', ('confirming', 'confirm-cancel'): 'offered', ('executing', 'command-success'): 'succeeded', ('executing', 'command-failure'): 'failed', ('failed', 'retry-click'): 'confirming-retry', ('confirming-retry', 'retry-confirm-accept'): 'executing', ('confirming', 'notification-withdrawn'): 'confirmation-invalidated', ('confirmation-invalidated', 'late-confirm-accept'): 'withdrawn', ('executing', 'notification-withdrawn'): 'executing-withdrawn'}; domain inputs can suppress or redirect transitions and update policy fields, as specified in solve. Different-generation events are inert. Batches apply in order. Optional observe returns the selected policy field alongside the phase.","evaluation_group":"s3-notification-interfaces-confirmation","failed_approach":"Declaring success without even submitting the command compounds the bypass.","family":"s3-notification-interfaces-confirmation-01","id":"FA-35241","implementations":{"attempt":{"sha256":"9e37cb8dbda574681fcaa18ee04a2208083d0b78f082801282b226f23b00e16c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(initial, events, generation, payload=None, observe=None):\n    table = {('offered', 'destructive-click'): 'succeeded', ('confirming', 'confirm-accept'): 'executing', ('confirming', 'confirm-cancel'): 'offered', ('executing', 'command-success'): 'succeeded', ('executing', 'command-failure'): 'failed', ('failed', 'retry-click'): 'confirming-retry', ('confirming-retry', 'retry-confirm-accept'): 'executing', ('confirming', 'notification-withdrawn'): 'confirmation-invalidated', ('confirmation-invalidated', 'late-confirm-accept'): 'withdrawn', ('executing', 'notification-withdrawn'): 'executing-withdrawn'}\n    data = json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})) if payload is None else {**json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})), **json.loads(json.dumps(payload))}\n    state = initial\n    for delivery in events:\n        event, event_generation = delivery[:2]\n        arg = delivery[2] if len(delivery) > 2 else {}\n        if event_generation == generation:\n            previous = state\n            if event in ('confirm-accept','retry-confirm-accept'):\n                if data['withdrawn'] or arg.get('revision',data['revision']) != data['revision']: event = 'confirm-cancel'\n                else: data['consented'] = data['revision']\n            if event == 'notification-withdrawn': data['withdrawn'] = True\n            state = table.get((state, event), state)\n            if state == 'executing' and previous != 'executing': data['submitted'].append(data['revision'])\n            if state == 'offered': data['consented'] = None\n    return {'phase': state, 'value': data[observe]} if observe else state\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('offered / destructive-click', solve('offered', [('destructive-click', N)], N), 'confirming')\ncheck('confirming / confirm-accept', solve('confirming', [('confirm-accept', N)], N), 'executing')\ncheck('confirming / confirm-cancel', solve('confirming', [('confirm-cancel', N)], N), 'offered')\ncheck('executing / command-success', solve('executing', [('command-success', N)], N), 'succeeded')\ncheck('executing / command-failure', solve('executing', [('command-failure', N)], N), 'failed')\ncheck('failed / retry-click', solve('failed', [('retry-click', N)], N), 'confirming-retry')\ncheck('confirming-retry / retry-confirm-accept', solve('confirming-retry', [('retry-confirm-accept', N)], N), 'executing')\ncheck('confirming / notification-withdrawn', solve('confirming', [('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('confirmation-invalidated / late-confirm-accept', solve('confirmation-invalidated', [('late-confirm-accept', N)], N), 'withdrawn')\ncheck('executing / notification-withdrawn', solve('executing', [('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('older notification incarnation', solve('offered', [('destructive-click', N - 1)], N), 'offered')\ncheck('future notification incarnation', solve('offered', [('destructive-click', N + 1)], N), 'offered')\ncheck('unknown event is inert', solve('offered', [('unknown-event', N)], N), 'offered')\ncheck('empty delivery batch', solve('offered', [], N), 'offered')\ncheck('N stale deliveries before current delivery', solve('offered', [('destructive-click', N - 1)] * N + [('destructive-click', N)], N), 'confirming')\ncheck('trace destructive-click then confirm-accept', solve('offered', [('destructive-click', N), ('confirm-accept', N)], N), 'executing')\ncheck('trace destructive-click then confirm-cancel', solve('offered', [('destructive-click', N), ('confirm-cancel', N)], N), 'offered')\ncheck('trace destructive-click then notification-withdrawn', solve('offered', [('destructive-click', N), ('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('trace confirm-accept then command-success', solve('confirming', [('confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace confirm-accept then command-failure', solve('confirming', [('confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace confirm-accept then notification-withdrawn', solve('confirming', [('confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace confirm-cancel then destructive-click', solve('confirming', [('confirm-cancel', N), ('destructive-click', N)], N), 'confirming')\ncheck('trace command-failure then retry-click', solve('executing', [('command-failure', N), ('retry-click', N)], N), 'confirming-retry')\ncheck('trace retry-click then retry-confirm-accept', solve('failed', [('retry-click', N), ('retry-confirm-accept', N)], N), 'executing')\ncheck('trace retry-confirm-accept then command-success', solve('confirming-retry', [('retry-confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace retry-confirm-accept then command-failure', solve('confirming-retry', [('retry-confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace retry-confirm-accept then notification-withdrawn', solve('confirming-retry', [('retry-confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace notification-withdrawn then late-confirm-accept', solve('confirming', [('notification-withdrawn', N), ('late-confirm-accept', N)], N), 'withdrawn')\ncheck('domain state regression 1: submitted', solve('confirming', [('confirm-accept', N, {'revision': 1})], N, {}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 2: submitted', solve('confirming', [('confirm-accept', N, {'revision': 2})], N, {}, 'submitted'), {'phase': 'executing', 'value': [2]})\ncheck('domain state regression 3: submitted', solve('confirming', [('confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 4: consented', solve('confirming', [('confirm-cancel', N, {})], N, {'consented': 2}, 'consented'), {'phase': 'offered', 'value': None})\ncheck('domain state regression 5: submitted', solve('executing', [('notification-withdrawn', N, {})], N, {'submitted': [2]}, 'submitted'), {'phase': 'executing-withdrawn', 'value': [2]})\ncheck('domain state regression 6: submitted', solve('confirmation-invalidated', [('late-confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'withdrawn', 'value': []})\ncheck('domain state regression 7: submitted', solve('offered', [('destructive-click', N, {}), ('notification-withdrawn', N, {}), ('late-confirm-accept', N, {})], N, {}, 'submitted'), {'phase': 'withdrawn', 'value': []})\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":"f5e64a3c0d62283d5ce5eb9573afe672c3bccd9a99a73c596378cf18a07fc987","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(initial, events, generation, payload=None, observe=None):\n    table = {('offered', 'destructive-click'): 'executing', ('confirming', 'confirm-accept'): 'executing', ('confirming', 'confirm-cancel'): 'offered', ('executing', 'command-success'): 'succeeded', ('executing', 'command-failure'): 'failed', ('failed', 'retry-click'): 'confirming-retry', ('confirming-retry', 'retry-confirm-accept'): 'executing', ('confirming', 'notification-withdrawn'): 'confirmation-invalidated', ('confirmation-invalidated', 'late-confirm-accept'): 'withdrawn', ('executing', 'notification-withdrawn'): 'executing-withdrawn'}\n    data = json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})) if payload is None else {**json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})), **json.loads(json.dumps(payload))}\n    state = initial\n    for delivery in events:\n        event, event_generation = delivery[:2]\n        arg = delivery[2] if len(delivery) > 2 else {}\n        if event_generation == generation:\n            previous = state\n            if event in ('confirm-accept','retry-confirm-accept'):\n                if data['withdrawn'] or arg.get('revision',data['revision']) != data['revision']: event = 'confirm-cancel'\n                else: data['consented'] = data['revision']\n            if event == 'notification-withdrawn': data['withdrawn'] = True\n            state = table.get((state, event), state)\n            if state == 'executing' and previous != 'executing': data['submitted'].append(data['revision'])\n            if state == 'offered': data['consented'] = None\n    return {'phase': state, 'value': data[observe]} if observe else state\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('offered / destructive-click', solve('offered', [('destructive-click', N)], N), 'confirming')\ncheck('confirming / confirm-accept', solve('confirming', [('confirm-accept', N)], N), 'executing')\ncheck('confirming / confirm-cancel', solve('confirming', [('confirm-cancel', N)], N), 'offered')\ncheck('executing / command-success', solve('executing', [('command-success', N)], N), 'succeeded')\ncheck('executing / command-failure', solve('executing', [('command-failure', N)], N), 'failed')\ncheck('failed / retry-click', solve('failed', [('retry-click', N)], N), 'confirming-retry')\ncheck('confirming-retry / retry-confirm-accept', solve('confirming-retry', [('retry-confirm-accept', N)], N), 'executing')\ncheck('confirming / notification-withdrawn', solve('confirming', [('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('confirmation-invalidated / late-confirm-accept', solve('confirmation-invalidated', [('late-confirm-accept', N)], N), 'withdrawn')\ncheck('executing / notification-withdrawn', solve('executing', [('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('older notification incarnation', solve('offered', [('destructive-click', N - 1)], N), 'offered')\ncheck('future notification incarnation', solve('offered', [('destructive-click', N + 1)], N), 'offered')\ncheck('unknown event is inert', solve('offered', [('unknown-event', N)], N), 'offered')\ncheck('empty delivery batch', solve('offered', [], N), 'offered')\ncheck('N stale deliveries before current delivery', solve('offered', [('destructive-click', N - 1)] * N + [('destructive-click', N)], N), 'confirming')\ncheck('trace destructive-click then confirm-accept', solve('offered', [('destructive-click', N), ('confirm-accept', N)], N), 'executing')\ncheck('trace destructive-click then confirm-cancel', solve('offered', [('destructive-click', N), ('confirm-cancel', N)], N), 'offered')\ncheck('trace destructive-click then notification-withdrawn', solve('offered', [('destructive-click', N), ('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('trace confirm-accept then command-success', solve('confirming', [('confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace confirm-accept then command-failure', solve('confirming', [('confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace confirm-accept then notification-withdrawn', solve('confirming', [('confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace confirm-cancel then destructive-click', solve('confirming', [('confirm-cancel', N), ('destructive-click', N)], N), 'confirming')\ncheck('trace command-failure then retry-click', solve('executing', [('command-failure', N), ('retry-click', N)], N), 'confirming-retry')\ncheck('trace retry-click then retry-confirm-accept', solve('failed', [('retry-click', N), ('retry-confirm-accept', N)], N), 'executing')\ncheck('trace retry-confirm-accept then command-success', solve('confirming-retry', [('retry-confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace retry-confirm-accept then command-failure', solve('confirming-retry', [('retry-confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace retry-confirm-accept then notification-withdrawn', solve('confirming-retry', [('retry-confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace notification-withdrawn then late-confirm-accept', solve('confirming', [('notification-withdrawn', N), ('late-confirm-accept', N)], N), 'withdrawn')\ncheck('domain state regression 1: submitted', solve('confirming', [('confirm-accept', N, {'revision': 1})], N, {}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 2: submitted', solve('confirming', [('confirm-accept', N, {'revision': 2})], N, {}, 'submitted'), {'phase': 'executing', 'value': [2]})\ncheck('domain state regression 3: submitted', solve('confirming', [('confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 4: consented', solve('confirming', [('confirm-cancel', N, {})], N, {'consented': 2}, 'consented'), {'phase': 'offered', 'value': None})\ncheck('domain state regression 5: submitted', solve('executing', [('notification-withdrawn', N, {})], N, {'submitted': [2]}, 'submitted'), {'phase': 'executing-withdrawn', 'value': [2]})\ncheck('domain state regression 6: submitted', solve('confirmation-invalidated', [('late-confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'withdrawn', 'value': []})\ncheck('domain state regression 7: submitted', solve('offered', [('destructive-click', N, {}), ('notification-withdrawn', N, {}), ('late-confirm-accept', N, {})], N, {}, 'submitted'), {'phase': 'withdrawn', 'value': []})\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":"4776523f453581e8eba03f337a176a54d22d898c4e78e7406ac86853410306bd","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(initial, events, generation, payload=None, observe=None):\n    table = {('offered', 'destructive-click'): 'confirming', ('confirming', 'confirm-accept'): 'executing', ('confirming', 'confirm-cancel'): 'offered', ('executing', 'command-success'): 'succeeded', ('executing', 'command-failure'): 'failed', ('failed', 'retry-click'): 'confirming-retry', ('confirming-retry', 'retry-confirm-accept'): 'executing', ('confirming', 'notification-withdrawn'): 'confirmation-invalidated', ('confirmation-invalidated', 'late-confirm-accept'): 'withdrawn', ('executing', 'notification-withdrawn'): 'executing-withdrawn'}\n    data = json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})) if payload is None else {**json.loads(json.dumps({'revision': 2, 'consented': None, 'submitted': [], 'withdrawn': False})), **json.loads(json.dumps(payload))}\n    state = initial\n    for delivery in events:\n        event, event_generation = delivery[:2]\n        arg = delivery[2] if len(delivery) > 2 else {}\n        if event_generation == generation:\n            previous = state\n            if event in ('confirm-accept','retry-confirm-accept'):\n                if data['withdrawn'] or arg.get('revision',data['revision']) != data['revision']: event = 'confirm-cancel'\n                else: data['consented'] = data['revision']\n            if event == 'notification-withdrawn': data['withdrawn'] = True\n            state = table.get((state, event), state)\n            if state == 'executing' and previous != 'executing': data['submitted'].append(data['revision'])\n            if state == 'offered': data['consented'] = None\n    return {'phase': state, 'value': data[observe]} if observe else state\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('offered / destructive-click', solve('offered', [('destructive-click', N)], N), 'confirming')\ncheck('confirming / confirm-accept', solve('confirming', [('confirm-accept', N)], N), 'executing')\ncheck('confirming / confirm-cancel', solve('confirming', [('confirm-cancel', N)], N), 'offered')\ncheck('executing / command-success', solve('executing', [('command-success', N)], N), 'succeeded')\ncheck('executing / command-failure', solve('executing', [('command-failure', N)], N), 'failed')\ncheck('failed / retry-click', solve('failed', [('retry-click', N)], N), 'confirming-retry')\ncheck('confirming-retry / retry-confirm-accept', solve('confirming-retry', [('retry-confirm-accept', N)], N), 'executing')\ncheck('confirming / notification-withdrawn', solve('confirming', [('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('confirmation-invalidated / late-confirm-accept', solve('confirmation-invalidated', [('late-confirm-accept', N)], N), 'withdrawn')\ncheck('executing / notification-withdrawn', solve('executing', [('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('older notification incarnation', solve('offered', [('destructive-click', N - 1)], N), 'offered')\ncheck('future notification incarnation', solve('offered', [('destructive-click', N + 1)], N), 'offered')\ncheck('unknown event is inert', solve('offered', [('unknown-event', N)], N), 'offered')\ncheck('empty delivery batch', solve('offered', [], N), 'offered')\ncheck('N stale deliveries before current delivery', solve('offered', [('destructive-click', N - 1)] * N + [('destructive-click', N)], N), 'confirming')\ncheck('trace destructive-click then confirm-accept', solve('offered', [('destructive-click', N), ('confirm-accept', N)], N), 'executing')\ncheck('trace destructive-click then confirm-cancel', solve('offered', [('destructive-click', N), ('confirm-cancel', N)], N), 'offered')\ncheck('trace destructive-click then notification-withdrawn', solve('offered', [('destructive-click', N), ('notification-withdrawn', N)], N), 'confirmation-invalidated')\ncheck('trace confirm-accept then command-success', solve('confirming', [('confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace confirm-accept then command-failure', solve('confirming', [('confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace confirm-accept then notification-withdrawn', solve('confirming', [('confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace confirm-cancel then destructive-click', solve('confirming', [('confirm-cancel', N), ('destructive-click', N)], N), 'confirming')\ncheck('trace command-failure then retry-click', solve('executing', [('command-failure', N), ('retry-click', N)], N), 'confirming-retry')\ncheck('trace retry-click then retry-confirm-accept', solve('failed', [('retry-click', N), ('retry-confirm-accept', N)], N), 'executing')\ncheck('trace retry-confirm-accept then command-success', solve('confirming-retry', [('retry-confirm-accept', N), ('command-success', N)], N), 'succeeded')\ncheck('trace retry-confirm-accept then command-failure', solve('confirming-retry', [('retry-confirm-accept', N), ('command-failure', N)], N), 'failed')\ncheck('trace retry-confirm-accept then notification-withdrawn', solve('confirming-retry', [('retry-confirm-accept', N), ('notification-withdrawn', N)], N), 'executing-withdrawn')\ncheck('trace notification-withdrawn then late-confirm-accept', solve('confirming', [('notification-withdrawn', N), ('late-confirm-accept', N)], N), 'withdrawn')\ncheck('domain state regression 1: submitted', solve('confirming', [('confirm-accept', N, {'revision': 1})], N, {}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 2: submitted', solve('confirming', [('confirm-accept', N, {'revision': 2})], N, {}, 'submitted'), {'phase': 'executing', 'value': [2]})\ncheck('domain state regression 3: submitted', solve('confirming', [('confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'offered', 'value': []})\ncheck('domain state regression 4: consented', solve('confirming', [('confirm-cancel', N, {})], N, {'consented': 2}, 'consented'), {'phase': 'offered', 'value': None})\ncheck('domain state regression 5: submitted', solve('executing', [('notification-withdrawn', N, {})], N, {'submitted': [2]}, 'submitted'), {'phase': 'executing-withdrawn', 'value': [2]})\ncheck('domain state regression 6: submitted', solve('confirmation-invalidated', [('late-confirm-accept', N, {})], N, {'withdrawn': True}, 'submitted'), {'phase': 'withdrawn', 'value': []})\ncheck('domain state regression 7: submitted', solve('offered', [('destructive-click', N, {}), ('notification-withdrawn', N, {}), ('late-confirm-accept', N, {})], N, {}, 'submitted'), {'phase': 'withdrawn', 'value': []})\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":"Stipulated single-notification state and policy model only. Event delivery and acknowledgements are explicit test inputs. No DOM, accessibility announcements, live timers, networking, actual rendering, or production-platform conformance is simulated. 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-notification-interfaces-confirmation-01","generated_at":"2026-09-29T14:42:39.651616+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Visual notification lifecycle ordering can leave an inbox or toast showing the wrong actionable state even when transport succeeds.","repair":"Commit the offered / destructive-click transition to confirming; preserve the other explicitly stipulated transitions.","root_cause":"Clicking an actionable notification bypasses confirmation.","sha256":"be5f2a2212539401e82ebd8c95c9367abafb23c814007e94ee6b08923051f9d3","title":"Notification destructive-action confirmation: destructive-click from offered · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.177,"exit_code":1,"observations":[{"actual":"succeeded","check":"offered / destructive-click","expected":"confirming","passed":false},{"actual":"executing","check":"confirming / confirm-accept","expected":"executing","passed":true},{"actual":"offered","check":"confirming / confirm-cancel","expected":"offered","passed":true},{"actual":"succeeded","check":"executing / command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"executing / command-failure","expected":"failed","passed":true},{"actual":"confirming-retry","check":"failed / retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"confirming-retry / retry-confirm-accept","expected":"executing","passed":true},{"actual":"confirmation-invalidated","check":"confirming / notification-withdrawn","expected":"confirmation-invalidated","passed":true},{"actual":"withdrawn","check":"confirmation-invalidated / late-confirm-accept","expected":"withdrawn","passed":true},{"actual":"executing-withdrawn","check":"executing / notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"offered","check":"older notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"future notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"unknown event is inert","expected":"offered","passed":true},{"actual":"offered","check":"empty delivery batch","expected":"offered","passed":true},{"actual":"succeeded","check":"N stale deliveries before current delivery","expected":"confirming","passed":false},{"actual":"succeeded","check":"trace destructive-click then confirm-accept","expected":"executing","passed":false},{"actual":"succeeded","check":"trace destructive-click then confirm-cancel","expected":"offered","passed":false},{"actual":"succeeded","check":"trace destructive-click then notification-withdrawn","expected":"confirmation-invalidated","passed":false},{"actual":"succeeded","check":"trace confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"succeeded","check":"trace confirm-cancel then destructive-click","expected":"confirming","passed":false},{"actual":"confirming-retry","check":"trace command-failure then retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"trace retry-click then retry-confirm-accept","expected":"executing","passed":true},{"actual":"succeeded","check":"trace retry-confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace retry-confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace retry-confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"withdrawn","check":"trace notification-withdrawn then late-confirm-accept","expected":"withdrawn","passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 1: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"executing","value":[2]},"check":"domain state regression 2: submitted","expected":{"phase":"executing","value":[2]},"passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 3: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"offered","value":null},"check":"domain state regression 4: consented","expected":{"phase":"offered","value":null},"passed":true},{"actual":{"phase":"executing-withdrawn","value":[2]},"check":"domain state regression 5: submitted","expected":{"phase":"executing-withdrawn","value":[2]},"passed":true},{"actual":{"phase":"withdrawn","value":[]},"check":"domain state regression 6: submitted","expected":{"phase":"withdrawn","value":[]},"passed":true},{"actual":{"phase":"succeeded","value":[]},"check":"domain state regression 7: submitted","expected":{"phase":"withdrawn","value":[]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"offered / destructive-click\", \"actual\": \"succeeded\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"confirming / confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / confirm-cancel\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"executing / command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"executing / command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"failed / retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"confirming-retry / retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / notification-withdrawn\", \"actual\": \"confirmation-invalidated\", \"expected\": \"confirmation-invalidated\", \"passed\": true}, {\"check\": \"confirmation-invalidated / late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"executing / notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"older notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"future notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"unknown event is inert\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"empty delivery batch\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"N stale deliveries before current delivery\", \"actual\": \"succeeded\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"trace destructive-click then confirm-accept\", \"actual\": \"succeeded\", \"expected\": \"executing\", \"passed\": false}, {\"check\": \"trace destructive-click then confirm-cancel\", \"actual\": \"succeeded\", \"expected\": \"offered\", \"passed\": false}, {\"check\": \"trace destructive-click then notification-withdrawn\", \"actual\": \"succeeded\", \"expected\": \"confirmation-invalidated\", \"passed\": false}, {\"check\": \"trace confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace confirm-cancel then destructive-click\", \"actual\": \"succeeded\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"trace command-failure then retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"trace retry-click then retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace notification-withdrawn then late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"domain state regression 1: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 2: submitted\", \"actual\": {\"phase\": \"executing\", \"value\": [2]}, \"expected\": {\"phase\": \"executing\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 3: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 4: consented\", \"actual\": {\"phase\": \"offered\", \"value\": null}, \"expected\": {\"phase\": \"offered\", \"value\": null}, \"passed\": true}, {\"check\": \"domain state regression 5: submitted\", \"actual\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"expected\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 6: submitted\", \"actual\": {\"phase\": \"withdrawn\", \"value\": []}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 7: submitted\", \"actual\": {\"phase\": \"succeeded\", \"value\": []}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.084,"exit_code":1,"observations":[{"actual":"executing","check":"offered / destructive-click","expected":"confirming","passed":false},{"actual":"executing","check":"confirming / confirm-accept","expected":"executing","passed":true},{"actual":"offered","check":"confirming / confirm-cancel","expected":"offered","passed":true},{"actual":"succeeded","check":"executing / command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"executing / command-failure","expected":"failed","passed":true},{"actual":"confirming-retry","check":"failed / retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"confirming-retry / retry-confirm-accept","expected":"executing","passed":true},{"actual":"confirmation-invalidated","check":"confirming / notification-withdrawn","expected":"confirmation-invalidated","passed":true},{"actual":"withdrawn","check":"confirmation-invalidated / late-confirm-accept","expected":"withdrawn","passed":true},{"actual":"executing-withdrawn","check":"executing / notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"offered","check":"older notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"future notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"unknown event is inert","expected":"offered","passed":true},{"actual":"offered","check":"empty delivery batch","expected":"offered","passed":true},{"actual":"executing","check":"N stale deliveries before current delivery","expected":"confirming","passed":false},{"actual":"executing","check":"trace destructive-click then confirm-accept","expected":"executing","passed":true},{"actual":"executing","check":"trace destructive-click then confirm-cancel","expected":"offered","passed":false},{"actual":"executing-withdrawn","check":"trace destructive-click then notification-withdrawn","expected":"confirmation-invalidated","passed":false},{"actual":"succeeded","check":"trace confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"executing","check":"trace confirm-cancel then destructive-click","expected":"confirming","passed":false},{"actual":"confirming-retry","check":"trace command-failure then retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"trace retry-click then retry-confirm-accept","expected":"executing","passed":true},{"actual":"succeeded","check":"trace retry-confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace retry-confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace retry-confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"withdrawn","check":"trace notification-withdrawn then late-confirm-accept","expected":"withdrawn","passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 1: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"executing","value":[2]},"check":"domain state regression 2: submitted","expected":{"phase":"executing","value":[2]},"passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 3: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"offered","value":null},"check":"domain state regression 4: consented","expected":{"phase":"offered","value":null},"passed":true},{"actual":{"phase":"executing-withdrawn","value":[2]},"check":"domain state regression 5: submitted","expected":{"phase":"executing-withdrawn","value":[2]},"passed":true},{"actual":{"phase":"withdrawn","value":[]},"check":"domain state regression 6: submitted","expected":{"phase":"withdrawn","value":[]},"passed":true},{"actual":{"phase":"executing-withdrawn","value":[2]},"check":"domain state regression 7: submitted","expected":{"phase":"withdrawn","value":[]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"offered / destructive-click\", \"actual\": \"executing\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"confirming / confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / confirm-cancel\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"executing / command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"executing / command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"failed / retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"confirming-retry / retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / notification-withdrawn\", \"actual\": \"confirmation-invalidated\", \"expected\": \"confirmation-invalidated\", \"passed\": true}, {\"check\": \"confirmation-invalidated / late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"executing / notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"older notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"future notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"unknown event is inert\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"empty delivery batch\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"N stale deliveries before current delivery\", \"actual\": \"executing\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"trace destructive-click then confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"trace destructive-click then confirm-cancel\", \"actual\": \"executing\", \"expected\": \"offered\", \"passed\": false}, {\"check\": \"trace destructive-click then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"confirmation-invalidated\", \"passed\": false}, {\"check\": \"trace confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace confirm-cancel then destructive-click\", \"actual\": \"executing\", \"expected\": \"confirming\", \"passed\": false}, {\"check\": \"trace command-failure then retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"trace retry-click then retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace notification-withdrawn then late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"domain state regression 1: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 2: submitted\", \"actual\": {\"phase\": \"executing\", \"value\": [2]}, \"expected\": {\"phase\": \"executing\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 3: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 4: consented\", \"actual\": {\"phase\": \"offered\", \"value\": null}, \"expected\": {\"phase\": \"offered\", \"value\": null}, \"passed\": true}, {\"check\": \"domain state regression 5: submitted\", \"actual\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"expected\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 6: submitted\", \"actual\": {\"phase\": \"withdrawn\", \"value\": []}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 7: submitted\", \"actual\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.648,"exit_code":0,"observations":[{"actual":"confirming","check":"offered / destructive-click","expected":"confirming","passed":true},{"actual":"executing","check":"confirming / confirm-accept","expected":"executing","passed":true},{"actual":"offered","check":"confirming / confirm-cancel","expected":"offered","passed":true},{"actual":"succeeded","check":"executing / command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"executing / command-failure","expected":"failed","passed":true},{"actual":"confirming-retry","check":"failed / retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"confirming-retry / retry-confirm-accept","expected":"executing","passed":true},{"actual":"confirmation-invalidated","check":"confirming / notification-withdrawn","expected":"confirmation-invalidated","passed":true},{"actual":"withdrawn","check":"confirmation-invalidated / late-confirm-accept","expected":"withdrawn","passed":true},{"actual":"executing-withdrawn","check":"executing / notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"offered","check":"older notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"future notification incarnation","expected":"offered","passed":true},{"actual":"offered","check":"unknown event is inert","expected":"offered","passed":true},{"actual":"offered","check":"empty delivery batch","expected":"offered","passed":true},{"actual":"confirming","check":"N stale deliveries before current delivery","expected":"confirming","passed":true},{"actual":"executing","check":"trace destructive-click then confirm-accept","expected":"executing","passed":true},{"actual":"offered","check":"trace destructive-click then confirm-cancel","expected":"offered","passed":true},{"actual":"confirmation-invalidated","check":"trace destructive-click then notification-withdrawn","expected":"confirmation-invalidated","passed":true},{"actual":"succeeded","check":"trace confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"confirming","check":"trace confirm-cancel then destructive-click","expected":"confirming","passed":true},{"actual":"confirming-retry","check":"trace command-failure then retry-click","expected":"confirming-retry","passed":true},{"actual":"executing","check":"trace retry-click then retry-confirm-accept","expected":"executing","passed":true},{"actual":"succeeded","check":"trace retry-confirm-accept then command-success","expected":"succeeded","passed":true},{"actual":"failed","check":"trace retry-confirm-accept then command-failure","expected":"failed","passed":true},{"actual":"executing-withdrawn","check":"trace retry-confirm-accept then notification-withdrawn","expected":"executing-withdrawn","passed":true},{"actual":"withdrawn","check":"trace notification-withdrawn then late-confirm-accept","expected":"withdrawn","passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 1: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"executing","value":[2]},"check":"domain state regression 2: submitted","expected":{"phase":"executing","value":[2]},"passed":true},{"actual":{"phase":"offered","value":[]},"check":"domain state regression 3: submitted","expected":{"phase":"offered","value":[]},"passed":true},{"actual":{"phase":"offered","value":null},"check":"domain state regression 4: consented","expected":{"phase":"offered","value":null},"passed":true},{"actual":{"phase":"executing-withdrawn","value":[2]},"check":"domain state regression 5: submitted","expected":{"phase":"executing-withdrawn","value":[2]},"passed":true},{"actual":{"phase":"withdrawn","value":[]},"check":"domain state regression 6: submitted","expected":{"phase":"withdrawn","value":[]},"passed":true},{"actual":{"phase":"withdrawn","value":[]},"check":"domain state regression 7: submitted","expected":{"phase":"withdrawn","value":[]},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"offered / destructive-click\", \"actual\": \"confirming\", \"expected\": \"confirming\", \"passed\": true}, {\"check\": \"confirming / confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / confirm-cancel\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"executing / command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"executing / command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"failed / retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"confirming-retry / retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"confirming / notification-withdrawn\", \"actual\": \"confirmation-invalidated\", \"expected\": \"confirmation-invalidated\", \"passed\": true}, {\"check\": \"confirmation-invalidated / late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"executing / notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"older notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"future notification incarnation\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"unknown event is inert\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"empty delivery batch\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"N stale deliveries before current delivery\", \"actual\": \"confirming\", \"expected\": \"confirming\", \"passed\": true}, {\"check\": \"trace destructive-click then confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"trace destructive-click then confirm-cancel\", \"actual\": \"offered\", \"expected\": \"offered\", \"passed\": true}, {\"check\": \"trace destructive-click then notification-withdrawn\", \"actual\": \"confirmation-invalidated\", \"expected\": \"confirmation-invalidated\", \"passed\": true}, {\"check\": \"trace confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace confirm-cancel then destructive-click\", \"actual\": \"confirming\", \"expected\": \"confirming\", \"passed\": true}, {\"check\": \"trace command-failure then retry-click\", \"actual\": \"confirming-retry\", \"expected\": \"confirming-retry\", \"passed\": true}, {\"check\": \"trace retry-click then retry-confirm-accept\", \"actual\": \"executing\", \"expected\": \"executing\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-success\", \"actual\": \"succeeded\", \"expected\": \"succeeded\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then command-failure\", \"actual\": \"failed\", \"expected\": \"failed\", \"passed\": true}, {\"check\": \"trace retry-confirm-accept then notification-withdrawn\", \"actual\": \"executing-withdrawn\", \"expected\": \"executing-withdrawn\", \"passed\": true}, {\"check\": \"trace notification-withdrawn then late-confirm-accept\", \"actual\": \"withdrawn\", \"expected\": \"withdrawn\", \"passed\": true}, {\"check\": \"domain state regression 1: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 2: submitted\", \"actual\": {\"phase\": \"executing\", \"value\": [2]}, \"expected\": {\"phase\": \"executing\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 3: submitted\", \"actual\": {\"phase\": \"offered\", \"value\": []}, \"expected\": {\"phase\": \"offered\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 4: consented\", \"actual\": {\"phase\": \"offered\", \"value\": null}, \"expected\": {\"phase\": \"offered\", \"value\": null}, \"passed\": true}, {\"check\": \"domain state regression 5: submitted\", \"actual\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"expected\": {\"phase\": \"executing-withdrawn\", \"value\": [2]}, \"passed\": true}, {\"check\": \"domain state regression 6: submitted\", \"actual\": {\"phase\": \"withdrawn\", \"value\": []}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": true}, {\"check\": \"domain state regression 7: submitted\", \"actual\": {\"phase\": \"withdrawn\", \"value\": []}, \"expected\": {\"phase\": \"withdrawn\", \"value\": []}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}