{"abstract":"While idle, event offer produces receiving/write_chunks instead of manifest/request_manifest.","category":"Protocols","checks":14,"contract":"For the stipulated Checkpoint transfer boundary controller, initialize the explicitly shown resource registers from seed (1..5), then consume classified events sequentially. After each event return a deep snapshot of phase, resource registers, and cumulative emitted control frames. The explicit ten phase/event rules and their resource effects define admission and response semantics. Unlisted events preserve phase and emit rejection. Payload is the consecutive integers seed through 2*seed+1. Empty event input returns no observations.","evaluation_group":"s3-protocols-checkpoint_transfer","failed_approach":"The partial repair chooses idle/accept_complete, which still violates this phase-specific event contract.","family":"s3-protocols-checkpoint_transfer-idle-offer","id":"FA-19341","implementations":{"attempt":{"sha256":"32aeeaa29653fc7a78a11047a69a2c020bfcbd3565ed94186922af2cf1ca1e85","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(phase, events, seed):\n    payload = list(range(seed, seed * 2 + 2))\n    r = {'staging': [seed-1], 'live': [seed-2], 'allocated': phase in ('receiving','verifying'), 'verified': phase=='installed', 'activations': 0}\n    frames = []\n    observed = []\n    table = {('idle', 'offer'): ('idle', 'accept_complete'), ('manifest', 'compatible'): ('receiving', 'allocate_staging'), ('manifest', 'incompatible'): ('idle', 'reject_offer'), ('receiving', 'chunk'): ('receiving', 'write_staging'), ('receiving', 'end'): ('verifying', 'verify_manifest'), ('verifying', 'valid'): ('installed', 'atomic_activate'), ('verifying', 'invalid'): ('idle', 'discard_staging'), ('receiving', 'cancel'): ('idle', 'remove_staging'), ('installed', 'duplicate_end'): ('installed', 'ack_installed'), ('idle', 'chunk'): ('idle', 'reject_unoffered')}\n    for event in events:\n        phase, action = table.get((phase, event), (phase, \"reject\"))\n        if action == 'request_manifest':\n            frames.append(['MANIFEST_REQUEST',seed])\n        elif action == 'allocate_staging':\n            r['allocated']=True; r['staging']=[]\n        elif action == 'reject_offer':\n            frames.append(['INCOMPATIBLE',seed])\n        elif action == 'write_staging':\n            r['staging'].extend(payload)\n        elif action == 'verify_manifest':\n            r['verified']=True\n        elif action == 'atomic_activate':\n            r['live']=r['staging'][:]; r['activations']+=1; r['staging']=[]\n        elif action == 'discard_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'remove_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'ack_installed':\n            frames.append(['INSTALLED',seed])\n        elif action == 'reject_unoffered':\n            frames.append(['UNSOLICITED_CHUNK',seed])\n        elif action == 'write_chunks':\n            r['staging'].extend(payload)\n        elif action == 'accept_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'activate':\n            r['live']=r['staging'][:]; r['activations']+=1\n        elif action == 'write_live':\n            r['live'].extend(payload)\n        elif action == 'ack_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'copy_partial':\n            r['live']=r['staging'][:1]; r['activations']+=1\n        elif action == 'activate_again':\n            r['activations']+=1\n        elif action == 'pause':\n            pass\n        else:\n            if action not in (\"wait\", \"ignore\", \"keep\", \"retain\", \"keep_peer\", \"keep_offer\", \"keep_hold\", \"keep_batch\", \"retain_staging\", \"keep_staging\", \"keep_local_owner\", \"keep_old_session\", \"keep_address\", \"keep_old_expiry\", \"ignore_conflict\", \"keep_service\", \"keep_subscription\", \"retain_shadow\", \"keep_live\", \"keep_suspicion\", \"keep_roles\", \"keep_staged\"):\n                frames.append([action, payload[:]])\n        observed.append(json.loads(json.dumps({\"phase\": phase, \"registers\": r, \"frames\": frames})))\n    return observed\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 1]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [0], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 1]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 1]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}, {'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [1, 2, 3]]]}])], 2: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 2]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [1], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 2]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 2]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [2, 3, 4, 5]]]}])], 3: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 3]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [2], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 3]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 3]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [3, 4, 5, 6, 7]]]}])], 4: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 4]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [3], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 4]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 4]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [4, 5, 6, 7, 8, 9]]]}])], 5: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 5]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [4], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [4], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 5]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 5]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [5, 6, 7, 8, 9, 10, 11]]]}])]}\nfor label, phase, events, expected in cases[N]:\n    check(label, solve(phase, events, N), expected)\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":"5b3cfd24893da474b0951dbfa8b5eda6965678925fbac7aa67c5e338d56d85f8","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(phase, events, seed):\n    payload = list(range(seed, seed * 2 + 2))\n    r = {'staging': [seed-1], 'live': [seed-2], 'allocated': phase in ('receiving','verifying'), 'verified': phase=='installed', 'activations': 0}\n    frames = []\n    observed = []\n    table = {('idle', 'offer'): ('receiving', 'write_chunks'), ('manifest', 'compatible'): ('receiving', 'allocate_staging'), ('manifest', 'incompatible'): ('idle', 'reject_offer'), ('receiving', 'chunk'): ('receiving', 'write_staging'), ('receiving', 'end'): ('verifying', 'verify_manifest'), ('verifying', 'valid'): ('installed', 'atomic_activate'), ('verifying', 'invalid'): ('idle', 'discard_staging'), ('receiving', 'cancel'): ('idle', 'remove_staging'), ('installed', 'duplicate_end'): ('installed', 'ack_installed'), ('idle', 'chunk'): ('idle', 'reject_unoffered')}\n    for event in events:\n        phase, action = table.get((phase, event), (phase, \"reject\"))\n        if action == 'request_manifest':\n            frames.append(['MANIFEST_REQUEST',seed])\n        elif action == 'allocate_staging':\n            r['allocated']=True; r['staging']=[]\n        elif action == 'reject_offer':\n            frames.append(['INCOMPATIBLE',seed])\n        elif action == 'write_staging':\n            r['staging'].extend(payload)\n        elif action == 'verify_manifest':\n            r['verified']=True\n        elif action == 'atomic_activate':\n            r['live']=r['staging'][:]; r['activations']+=1; r['staging']=[]\n        elif action == 'discard_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'remove_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'ack_installed':\n            frames.append(['INSTALLED',seed])\n        elif action == 'reject_unoffered':\n            frames.append(['UNSOLICITED_CHUNK',seed])\n        elif action == 'write_chunks':\n            r['staging'].extend(payload)\n        elif action == 'accept_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'activate':\n            r['live']=r['staging'][:]; r['activations']+=1\n        elif action == 'write_live':\n            r['live'].extend(payload)\n        elif action == 'ack_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'copy_partial':\n            r['live']=r['staging'][:1]; r['activations']+=1\n        elif action == 'activate_again':\n            r['activations']+=1\n        elif action == 'pause':\n            pass\n        else:\n            if action not in (\"wait\", \"ignore\", \"keep\", \"retain\", \"keep_peer\", \"keep_offer\", \"keep_hold\", \"keep_batch\", \"retain_staging\", \"keep_staging\", \"keep_local_owner\", \"keep_old_session\", \"keep_address\", \"keep_old_expiry\", \"ignore_conflict\", \"keep_service\", \"keep_subscription\", \"retain_shadow\", \"keep_live\", \"keep_suspicion\", \"keep_roles\", \"keep_staged\"):\n                frames.append([action, payload[:]])\n        observed.append(json.loads(json.dumps({\"phase\": phase, \"registers\": r, \"frames\": frames})))\n    return observed\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 1]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [0], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 1]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 1]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}, {'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [1, 2, 3]]]}])], 2: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 2]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [1], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 2]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 2]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [2, 3, 4, 5]]]}])], 3: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 3]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [2], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 3]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 3]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [3, 4, 5, 6, 7]]]}])], 4: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 4]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [3], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 4]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 4]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [4, 5, 6, 7, 8, 9]]]}])], 5: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 5]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [4], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [4], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 5]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 5]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [5, 6, 7, 8, 9, 10, 11]]]}])]}\nfor label, phase, events, expected in cases[N]:\n    check(label, solve(phase, events, N), expected)\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":"45065f3f09ce99a24f513d4e0abee43e1b241a74565b6e1c713ea505e868a726","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(phase, events, seed):\n    payload = list(range(seed, seed * 2 + 2))\n    r = {'staging': [seed-1], 'live': [seed-2], 'allocated': phase in ('receiving','verifying'), 'verified': phase=='installed', 'activations': 0}\n    frames = []\n    observed = []\n    table = {('idle', 'offer'): ('manifest', 'request_manifest'), ('manifest', 'compatible'): ('receiving', 'allocate_staging'), ('manifest', 'incompatible'): ('idle', 'reject_offer'), ('receiving', 'chunk'): ('receiving', 'write_staging'), ('receiving', 'end'): ('verifying', 'verify_manifest'), ('verifying', 'valid'): ('installed', 'atomic_activate'), ('verifying', 'invalid'): ('idle', 'discard_staging'), ('receiving', 'cancel'): ('idle', 'remove_staging'), ('installed', 'duplicate_end'): ('installed', 'ack_installed'), ('idle', 'chunk'): ('idle', 'reject_unoffered')}\n    for event in events:\n        phase, action = table.get((phase, event), (phase, \"reject\"))\n        if action == 'request_manifest':\n            frames.append(['MANIFEST_REQUEST',seed])\n        elif action == 'allocate_staging':\n            r['allocated']=True; r['staging']=[]\n        elif action == 'reject_offer':\n            frames.append(['INCOMPATIBLE',seed])\n        elif action == 'write_staging':\n            r['staging'].extend(payload)\n        elif action == 'verify_manifest':\n            r['verified']=True\n        elif action == 'atomic_activate':\n            r['live']=r['staging'][:]; r['activations']+=1; r['staging']=[]\n        elif action == 'discard_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'remove_staging':\n            r['staging']=[]; r['allocated']=False\n        elif action == 'ack_installed':\n            frames.append(['INSTALLED',seed])\n        elif action == 'reject_unoffered':\n            frames.append(['UNSOLICITED_CHUNK',seed])\n        elif action == 'write_chunks':\n            r['staging'].extend(payload)\n        elif action == 'accept_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'activate':\n            r['live']=r['staging'][:]; r['activations']+=1\n        elif action == 'write_live':\n            r['live'].extend(payload)\n        elif action == 'ack_complete':\n            frames.append(['INSTALLED',seed])\n        elif action == 'copy_partial':\n            r['live']=r['staging'][:1]; r['activations']+=1\n        elif action == 'activate_again':\n            r['activations']+=1\n        elif action == 'pause':\n            pass\n        else:\n            if action not in (\"wait\", \"ignore\", \"keep\", \"retain\", \"keep_peer\", \"keep_offer\", \"keep_hold\", \"keep_batch\", \"retain_staging\", \"keep_staging\", \"keep_local_owner\", \"keep_old_session\", \"keep_address\", \"keep_old_expiry\", \"ignore_conflict\", \"keep_service\", \"keep_subscription\", \"retain_shadow\", \"keep_live\", \"keep_suspicion\", \"keep_roles\", \"keep_staged\"):\n                frames.append([action, payload[:]])\n        observed.append(json.loads(json.dumps({\"phase\": phase, \"registers\": r, \"frames\": frames})))\n    return observed\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 1]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [0], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 1]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 1]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}, {'phase': 'manifest', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1]]}, {'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1], ['MANIFEST_REQUEST', 1], ['INCOMPATIBLE', 1]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [0, 1, 2, 3], 'live': [-1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [-1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 1]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [0], 'live': [-1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [1, 2, 3]]]}])], 2: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 2]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [1], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 2]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 2]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}, {'phase': 'manifest', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2], ['MANIFEST_REQUEST', 2]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [1, 2, 3, 4, 5], 'live': [0], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [0], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 2], ['INCOMPATIBLE', 2]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [1], 'live': [0], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [2, 3, 4, 5]]]}])], 3: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 3]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [2], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 3]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 3]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [2, 3, 4, 5, 6, 7], 'live': [1], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [1], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 3], ['INCOMPATIBLE', 3], ['MANIFEST_REQUEST', 3]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [2], 'live': [1], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [3, 4, 5, 6, 7]]]}])], 4: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 4]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [3], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 4]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 4]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'receiving', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [3, 4, 5, 6, 7, 8, 9], 'live': [2], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [2], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4], ['MANIFEST_REQUEST', 4], ['INCOMPATIBLE', 4]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [3], 'live': [2], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [4, 5, 6, 7, 8, 9]]]}])], 5: [('idle/offer', 'idle', ['offer'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}]), ('manifest/compatible', 'manifest', ['compatible'], [{'phase': 'receiving', 'registers': {'staging': [], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('manifest/incompatible', 'manifest', ['incompatible'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['INCOMPATIBLE', 5]]}]), ('receiving/chunk', 'receiving', ['chunk'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/end', 'receiving', ['end'], [{'phase': 'verifying', 'registers': {'staging': [4], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}]), ('verifying/valid', 'verifying', ['valid'], [{'phase': 'installed', 'registers': {'staging': [], 'live': [4], 'allocated': True, 'verified': False, 'activations': 1}, 'frames': []}]), ('verifying/invalid', 'verifying', ['invalid'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('receiving/cancel', 'receiving', ['cancel'], [{'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': []}]), ('installed/duplicate_end', 'installed', ['duplicate_end'], [{'phase': 'installed', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['INSTALLED', 5]]}]), ('idle/chunk', 'idle', ['chunk'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['UNSOLICITED_CHUNK', 5]]}]), ('ordered trace 0', 'idle', ['offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible', 'offer', 'incompatible'], [{'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}]), ('ordered trace 3', 'receiving', ['chunk', 'end', 'invalid', 'offer', 'incompatible', 'offer', 'incompatible', 'offer'], [{'phase': 'receiving', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': False, 'activations': 0}, 'frames': []}, {'phase': 'verifying', 'registers': {'staging': [4, 5, 6, 7, 8, 9, 10, 11], 'live': [3], 'allocated': True, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': []}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}, {'phase': 'idle', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5]]}, {'phase': 'manifest', 'registers': {'staging': [], 'live': [3], 'allocated': False, 'verified': True, 'activations': 0}, 'frames': [['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5], ['INCOMPATIBLE', 5], ['MANIFEST_REQUEST', 5]]}]), ('empty input', 'idle', [], []), ('unknown event', 'idle', ['unsupported'], [{'phase': 'idle', 'registers': {'staging': [4], 'live': [3], 'allocated': False, 'verified': False, 'activations': 0}, 'frames': [['reject', [5, 6, 7, 8, 9, 10, 11]]]}])]}\nfor label, phase, events, expected in cases[N]:\n    check(label, solve(phase, events, N), expected)\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":"Bounded offline control-plane abstraction with prescribed initial registers and classified events. Not a named protocol implementation or conformance test; excludes wire parsing, transport retries, physical execution, authentication, crash persistence, and timing. Related event faults share the full corrected controller and evaluation group. 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-protocols-checkpoint_transfer-idle-offer","generated_at":"2026-09-29T14:40:06.947576+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Incorrect event admission now changes concrete queued data, resource ownership, or emitted protocol frames and subsequent trace behavior.","repair":"In phase idle, classify offer as transition to manifest and emit request_manifest.","root_cause":"In idle, the offer handler runs write chunks and enters receiving; it must instead run request manifest and enter manifest.","sha256":"ee3c99379bd6d794a2f198d6242d64bc6e2aefdb6f7374e52370596b6037ad18","title":"Checkpoint transfer boundary controller: idle / offer · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":46.076,"exit_code":1,"observations":[{"actual":[{"frames":[["INSTALLED",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"idle/offer","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":false},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"check":"manifest/compatible","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"manifest/incompatible","expected":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"check":"receiving/chunk","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"check":"receiving/end","expected":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"check":"verifying/valid","expected":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"verifying/invalid","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"receiving/cancel","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"check":"installed/duplicate_end","expected":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"idle/chunk","expected":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[["INSTALLED",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["INSTALLED",1],["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["INSTALLED",1],["reject",[1,2,3]],["INSTALLED",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["INSTALLED",1],["reject",[1,2,3]],["INSTALLED",1],["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"ordered trace 0","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":false},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[["INSTALLED",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}}],"check":"ordered trace 3","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}}],"passed":false},{"actual":[],"check":"empty input","expected":[],"passed":true},{"actual":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"unknown event","expected":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"idle/offer\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": false}, {\"check\": \"manifest/compatible\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"manifest/incompatible\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"passed\": true}, {\"check\": \"receiving/chunk\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/end\", \"actual\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/valid\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/invalid\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/cancel\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"installed/duplicate_end\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"passed\": true}, {\"check\": \"idle/chunk\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"passed\": true}, {\"check\": \"ordered trace 0\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1], [\"reject\", [1, 2, 3]]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1], [\"reject\", [1, 2, 3]], [\"INSTALLED\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1], [\"reject\", [1, 2, 3]], [\"INSTALLED\", 1], [\"reject\", [1, 2, 3]]]}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}], \"passed\": false}, {\"check\": \"ordered trace 3\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": false}, {\"check\": \"empty input\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"unknown event\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":47.013,"exit_code":1,"observations":[{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"check":"idle/offer","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":false},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"check":"manifest/compatible","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"manifest/incompatible","expected":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"check":"receiving/chunk","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"check":"receiving/end","expected":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"check":"verifying/valid","expected":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"verifying/invalid","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"receiving/cancel","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"check":"installed/duplicate_end","expected":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"idle/chunk","expected":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[["reject",[1,2,3]]],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[["reject",[1,2,3]],["reject",[1,2,3]]],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[["reject",[1,2,3]],["reject",[1,2,3]],["reject",[1,2,3]]],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"check":"ordered trace 0","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":false},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[1,2,3],"verified":true}}],"check":"ordered trace 3","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}}],"passed":false},{"actual":[],"check":"empty input","expected":[],"passed":true},{"actual":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"unknown event","expected":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"idle/offer\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": false}, {\"check\": \"manifest/compatible\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"manifest/incompatible\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"passed\": true}, {\"check\": \"receiving/chunk\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/end\", \"actual\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/valid\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/invalid\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/cancel\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"installed/duplicate_end\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"passed\": true}, {\"check\": \"idle/chunk\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"passed\": true}, {\"check\": \"ordered trace 0\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}, {\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]], [\"reject\", [1, 2, 3]]]}, {\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]], [\"reject\", [1, 2, 3]], [\"reject\", [1, 2, 3]]]}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}], \"passed\": false}, {\"check\": \"ordered trace 3\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"receiving\", \"registers\": {\"staging\": [1, 2, 3], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": false}, {\"check\": \"empty input\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"unknown event\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":47.778,"exit_code":0,"observations":[{"actual":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"idle/offer","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"check":"manifest/compatible","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"manifest/incompatible","expected":[{"frames":[["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"check":"receiving/chunk","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"check":"receiving/end","expected":[{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"check":"verifying/valid","expected":[{"frames":[],"phase":"installed","registers":{"activations":1,"allocated":true,"live":[0],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"verifying/invalid","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"check":"receiving/cancel","expected":[{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":false}}],"passed":true},{"actual":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"check":"installed/duplicate_end","expected":[{"frames":[["INSTALLED",1]],"phase":"installed","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":true}}],"passed":true},{"actual":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"idle/chunk","expected":[{"frames":[["UNSOLICITED_CHUNK",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"ordered trace 0","expected":[{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}},{"frames":[["MANIFEST_REQUEST",1],["INCOMPATIBLE",1],["MANIFEST_REQUEST",1],["INCOMPATIBLE",1]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true},{"actual":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}}],"check":"ordered trace 3","expected":[{"frames":[],"phase":"receiving","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":false}},{"frames":[],"phase":"verifying","registers":{"activations":0,"allocated":true,"live":[-1],"staging":[0,1,2,3],"verified":true}},{"frames":[],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}},{"frames":[["MANIFEST_REQUEST",1]],"phase":"manifest","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[],"verified":true}}],"passed":true},{"actual":[],"check":"empty input","expected":[],"passed":true},{"actual":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"check":"unknown event","expected":[{"frames":[["reject",[1,2,3]]],"phase":"idle","registers":{"activations":0,"allocated":false,"live":[-1],"staging":[0],"verified":false}}],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"idle/offer\", \"actual\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": true}, {\"check\": \"manifest/compatible\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"manifest/incompatible\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"INCOMPATIBLE\", 1]]}], \"passed\": true}, {\"check\": \"receiving/chunk\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/end\", \"actual\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"verifying\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/valid\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [], \"live\": [0], \"allocated\": true, \"verified\": false, \"activations\": 1}, \"frames\": []}], \"passed\": true}, {\"check\": \"verifying/invalid\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"receiving/cancel\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": []}], \"passed\": true}, {\"check\": \"installed/duplicate_end\", \"actual\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"expected\": [{\"phase\": \"installed\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"INSTALLED\", 1]]}], \"passed\": true}, {\"check\": \"idle/chunk\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"UNSOLICITED_CHUNK\", 1]]}], \"passed\": true}, {\"check\": \"ordered trace 0\", \"actual\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}], \"expected\": [{\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1]]}, {\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1], [\"MANIFEST_REQUEST\", 1], [\"INCOMPATIBLE\", 1]]}], \"passed\": true}, {\"check\": \"ordered trace 3\", \"actual\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"expected\": [{\"phase\": \"receiving\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": false, \"activations\": 0}, \"frames\": []}, {\"phase\": \"verifying\", \"registers\": {\"staging\": [0, 1, 2, 3], \"live\": [-1], \"allocated\": true, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"idle\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": []}, {\"phase\": \"manifest\", \"registers\": {\"staging\": [], \"live\": [-1], \"allocated\": false, \"verified\": true, \"activations\": 0}, \"frames\": [[\"MANIFEST_REQUEST\", 1]]}], \"passed\": true}, {\"check\": \"empty input\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"unknown event\", \"actual\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"expected\": [{\"phase\": \"idle\", \"registers\": {\"staging\": [0], \"live\": [-1], \"allocated\": false, \"verified\": false, \"activations\": 0}, \"frames\": [[\"reject\", [1, 2, 3]]]}], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}