{"abstract":"An observer exception rolls back an already committed transaction; the returned lifecycle plan violates the stated transition contract.","category":"Listener lifecycle","checks":8,"contract":"Plan observer notifications around a local state transaction. Pending changes become visible only after successful outermost commit. Rollback restores the prior published revision. Change records [field,old,new] with equal endpoints are suppressed; repeated fields keep the earliest old and latest new in input order. Observer errors do not roll back an already committed state. An inner savepoint contributes child changes only on commit without rollback; parent changes survive every child outcome. Committed observer failures are [registration_position,error] records and report in stable registration order, retaining arrival order for a tied position. Inputs are finite state snapshots, including transitional and stale states; output fields are the exact independent actions/metadata defined by the corrected expression table. Numeric fixture capacities and counts vary with N.\nField definitions, each independently computed from the input snapshot: visible = s['committed'] and not s['rollback'] and s['depth']==0; changed = [r for r in s['changes'] if r[1]!=r[2]]; first_old = {k:next(r[1] for r in s['changes'] if r[0]==k) for k in dict.fromkeys(r[0] for r in s['changes'])}; last_new = {r[0]:r[2] for r in s['changes']}; order = list(dict.fromkeys(r[0] for r in s['changes'])); revision = s['published'] if s['rollback'] else s['revision']; state_rollback = s['rollback'] and not s['committed']; notify_error = sorted(s['observer_failures'],key=lambda r:r[0]); publish_durable = s['committed'] and s['durable'] and not s['rollback']; deferred = list(s['parent_changes'])+(list(s['child_changes']) if s['child_commit'] and not s['child_rollback'] else [])","evaluation_group":"s3-listener-transaction-publish","failed_approach":"The partial repair uses s['rollback']; a retained regression distinguishes it from the full transition.","family":"s3-listener-transaction-publish-state_rollback","id":"FA-42271","implementations":{"attempt":{"sha256":"92ed267b963f841aefcfa5b1fc5741297ca752603d3f0088ef81cb5c59f98132","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    return {\n        'visible': s['committed'] and not s['rollback'] and s['depth']==0,\n        'changed': [r for r in s['changes'] if r[1]!=r[2]],\n        'first_old': {k:next(r[1] for r in s['changes'] if r[0]==k) for k in dict.fromkeys(r[0] for r in s['changes'])},\n        'last_new': {r[0]:r[2] for r in s['changes']},\n        'order': list(dict.fromkeys(r[0] for r in s['changes'])),\n        'revision': s['published'] if s['rollback'] else s['revision'],\n        'state_rollback': s['rollback'],\n        'notify_error': sorted(s['observer_failures'],key=lambda r:r[0]),\n        'publish_durable': s['committed'] and s['durable'] and not s['rollback'],\n        'deferred': list(s['parent_changes'])+(list(s['child_changes']) if s['child_commit'] and not s['child_rollback'] else []),\n    }\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': False, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': True, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 3, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 2, 'revision': 3, 'published': 0, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 3, 'published': 2, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': True, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 2: [({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 6, 'published': 4, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 6, 'published': 0, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 6, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': []}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 6, 'state_rollback': False, 'notify_error': [], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': False, 'rollback': False, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 6, 'published': 4, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 3: [({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 9, 'published': 0, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 9, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6]], 'committed': False, 'rollback': False, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 1, 'revision': 0, 'published': 6, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 4: [({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 12, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': True, 'depth': 8, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 8, 'revision': 12, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 8, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 5: [({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 0, 'published': 10, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 10, 'revision': 15, 'published': 0, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 15, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 10, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})]}\nfor i,(state,expected) in enumerate(fixtures[N]):\n    check(\"transition \"+str(i), solve(state), 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":"f107a9f103c9fbb007ef3dcf21bd09b81bc562811abf92074d948ba62fa19376","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    return {\n        'visible': s['committed'] and not s['rollback'] and s['depth']==0,\n        'changed': [r for r in s['changes'] if r[1]!=r[2]],\n        'first_old': {k:next(r[1] for r in s['changes'] if r[0]==k) for k in dict.fromkeys(r[0] for r in s['changes'])},\n        'last_new': {r[0]:r[2] for r in s['changes']},\n        'order': list(dict.fromkeys(r[0] for r in s['changes'])),\n        'revision': s['published'] if s['rollback'] else s['revision'],\n        'state_rollback': s['rollback'] or s['observer_error'],\n        'notify_error': sorted(s['observer_failures'],key=lambda r:r[0]),\n        'publish_durable': s['committed'] and s['durable'] and not s['rollback'],\n        'deferred': list(s['parent_changes'])+(list(s['child_changes']) if s['child_commit'] and not s['child_rollback'] else []),\n    }\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': False, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': True, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 3, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 2, 'revision': 3, 'published': 0, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 3, 'published': 2, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': True, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 2: [({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 6, 'published': 4, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 6, 'published': 0, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 6, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': []}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 6, 'state_rollback': False, 'notify_error': [], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': False, 'rollback': False, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 6, 'published': 4, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 3: [({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 9, 'published': 0, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 9, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6]], 'committed': False, 'rollback': False, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 1, 'revision': 0, 'published': 6, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 4: [({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 12, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': True, 'depth': 8, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 8, 'revision': 12, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 8, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 5: [({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 0, 'published': 10, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 10, 'revision': 15, 'published': 0, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 15, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 10, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})]}\nfor i,(state,expected) in enumerate(fixtures[N]):\n    check(\"transition \"+str(i), solve(state), 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":"9dfdf7fbb9a28bae7bd9f23e416d556360461bf6b0934dc86ce9b9dc3257881f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    return {\n        'visible': s['committed'] and not s['rollback'] and s['depth']==0,\n        'changed': [r for r in s['changes'] if r[1]!=r[2]],\n        'first_old': {k:next(r[1] for r in s['changes'] if r[0]==k) for k in dict.fromkeys(r[0] for r in s['changes'])},\n        'last_new': {r[0]:r[2] for r in s['changes']},\n        'order': list(dict.fromkeys(r[0] for r in s['changes'])),\n        'revision': s['published'] if s['rollback'] else s['revision'],\n        'state_rollback': s['rollback'] and not s['committed'],\n        'notify_error': sorted(s['observer_failures'],key=lambda r:r[0]),\n        'publish_durable': s['committed'] and s['durable'] and not s['rollback'],\n        'deferred': list(s['parent_changes'])+(list(s['child_changes']) if s['child_commit'] and not s['child_rollback'] else []),\n    }\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = {1: [({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': False, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': True, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 3, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 2, 'revision': 3, 'published': 0, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 3, 'published': 2, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 3, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': True, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': False, 'rollback': True, 'depth': 2, 'revision': 0, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[2, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [2, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 2], ['x', 2, 3], ['y', 4, 4]], 'committed': True, 'rollback': True, 'depth': 2, 'revision': 3, 'published': 2, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 2], ['x', 2, 3]], 'first_old': {'x': 1, 'y': 4}, 'last_new': {'x': 3, 'y': 4}, 'order': ['x', 'y'], 'revision': 2, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 2: [({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 6, 'published': 4, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 6, 'published': 0, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 6, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': True, 'observer_failures': []}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 6, 'state_rollback': False, 'notify_error': [], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': False, 'rollback': False, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 6, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4]], 'first_old': {'x': 1}, 'last_new': {'x': 4}, 'order': ['x'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[4, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [4, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 4], ['x', 4, 6], ['y', 8, 8]], 'committed': True, 'rollback': True, 'depth': 4, 'revision': 6, 'published': 4, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 4], ['x', 4, 6]], 'first_old': {'x': 1, 'y': 8}, 'last_new': {'x': 6, 'y': 8}, 'order': ['x', 'y'], 'revision': 4, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 3: [({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 9, 'published': 0, 'observer_error': False, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 6, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 0, 'revision': 9, 'published': 0, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': True, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6]], 'committed': False, 'rollback': False, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6]], 'first_old': {'x': 1}, 'last_new': {'x': 6}, 'order': ['x'], 'revision': 9, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': False, 'rollback': True, 'depth': 1, 'revision': 0, 'published': 6, 'observer_error': False, 'active': False, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[6, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [6, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 6], ['x', 6, 9], ['y', 12, 12]], 'committed': True, 'rollback': True, 'depth': 6, 'revision': 9, 'published': 6, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 6], ['x', 6, 9]], 'first_old': {'x': 1, 'y': 12}, 'last_new': {'x': 9, 'y': 12}, 'order': ['x', 'y'], 'revision': 6, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 4: [({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 12, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['child']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': True, 'depth': 8, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 0, 'state_rollback': True, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 8, 'revision': 12, 'published': 0, 'observer_error': False, 'active': True, 'durable': False, 'deferred': ['late'], 'parent_changes': [], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': True, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': False, 'active': True, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[8, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 8, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [8, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 8]], 'committed': False, 'rollback': False, 'depth': 1, 'revision': 12, 'published': 8, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8]], 'first_old': {'x': 1}, 'last_new': {'x': 8}, 'order': ['x'], 'revision': 12, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 8], ['x', 8, 12], ['y', 16, 16]], 'committed': True, 'rollback': True, 'depth': 8, 'revision': 12, 'published': 8, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 8], ['x', 8, 12]], 'first_old': {'x': 1, 'y': 16}, 'last_new': {'x': 12, 'y': 16}, 'order': ['x', 'y'], 'revision': 8, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})], 5: [({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 0, 'published': 10, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 0, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': False, 'deferred': ['parent', 'child']}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': False, 'depth': 10, 'revision': 15, 'published': 0, 'observer_error': True, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': False, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': False, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': [[10, 'a'], [0, 'z'], [1, 'm']]}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [[0, 'z'], [1, 'm'], [10, 'a']], 'publish_durable': True, 'deferred': ['parent']}), ({'changes': [['x', 1, 10]], 'committed': True, 'rollback': False, 'depth': 0, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': True, 'child_rollback': False, 'observer_failures': []}, {'visible': True, 'changed': [['x', 1, 10]], 'first_old': {'x': 1}, 'last_new': {'x': 10}, 'order': ['x'], 'revision': 15, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [], 'committed': True, 'rollback': False, 'depth': 1, 'revision': 15, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 15, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']}), ({'changes': [], 'committed': False, 'rollback': False, 'depth': 0, 'revision': 0, 'published': 0, 'observer_error': False, 'active': False, 'durable': False, 'deferred': [], 'parent_changes': [], 'child_changes': [], 'child_commit': False, 'child_rollback': False, 'observer_failures': []}, {'visible': False, 'changed': [], 'first_old': {}, 'last_new': {}, 'order': [], 'revision': 0, 'state_rollback': False, 'notify_error': [], 'publish_durable': False, 'deferred': []}), ({'changes': [['x', 1, 10], ['x', 10, 15], ['y', 20, 20]], 'committed': True, 'rollback': True, 'depth': 10, 'revision': 15, 'published': 10, 'observer_error': True, 'active': True, 'durable': True, 'deferred': ['late'], 'parent_changes': ['parent'], 'child_changes': ['child'], 'child_commit': True, 'child_rollback': True, 'observer_failures': [[1, 'b'], [1, 'a']]}, {'visible': False, 'changed': [['x', 1, 10], ['x', 10, 15]], 'first_old': {'x': 1, 'y': 20}, 'last_new': {'x': 15, 'y': 20}, 'order': ['x', 'y'], 'revision': 10, 'state_rollback': False, 'notify_error': [[1, 'b'], [1, 'a']], 'publish_durable': False, 'deferred': ['parent']})]}\nfor i,(state,expected) in enumerate(fixtures[N]):\n    check(\"transition \"+str(i), solve(state), 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":"A deterministic, bounded, single-threaded transition planner. Returned plans model state changes; they do not implement a production event framework. 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-listener-transaction-publish-state_rollback","generated_at":"2026-09-29T14:43:50.123639+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Observer implementations need to preserve this state while subscriptions enter, execute, and leave their lifecycle.","repair":"Compute the state_rollback decision from the complete contract: s['rollback'] and not s['committed'].","root_cause":"The state_rollback decision in the transaction-publish listener model is computed as s['rollback'] or s['observer_error'], losing a required lifecycle condition.","sha256":"e5cd2f3a0828983f9393b3b02d33d921bd921e7ee0bbdf972f12fc9fcf2a254e","title":"An observer exception rolls back an already committed transaction · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":54.249,"exit_code":1,"observations":[{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 0","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":false},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":false,"visible":false},"check":"transition 1","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"check":"transition 2","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":false,"visible":false},"check":"transition 3","expected":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"check":"transition 4","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 5","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"check":"transition 6","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 7","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"transition 0\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": false}, {\"check\": \"transition 1\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"passed\": true}, {\"check\": \"transition 2\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 3\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": true}, {\"check\": \"transition 4\", \"actual\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"expected\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 5\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 6\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 7\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":48.441,"exit_code":1,"observations":[{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 0","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":false},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":true,"visible":false},"check":"transition 1","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":false,"visible":false},"passed":false},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"check":"transition 2","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":true,"visible":false},"check":"transition 3","expected":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":false,"visible":false},"passed":false},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"check":"transition 4","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 5","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"check":"transition 6","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 7","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"transition 0\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": false}, {\"check\": \"transition 1\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"passed\": false}, {\"check\": \"transition 2\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 3\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": false}, {\"check\": \"transition 4\", \"actual\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"expected\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 5\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 6\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 7\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":48.685,"exit_code":0,"observations":[{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"check":"transition 0","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":false,"visible":false},"check":"transition 1","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent","child"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":true,"revision":0,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"check":"transition 2","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":0,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":false,"visible":false},"check":"transition 3","expected":{"changed":[],"deferred":["parent"],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":false,"revision":3,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"check":"transition 4","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":[],"publish_durable":true,"revision":3,"state_rollback":false,"visible":true},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"check":"transition 5","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":[],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[0,"z"],[1,"m"],[2,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":true,"visible":false},"passed":true},{"actual":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"check":"transition 6","expected":{"changed":[],"deferred":[],"first_old":{},"last_new":{},"notify_error":[],"order":[],"publish_durable":false,"revision":0,"state_rollback":false,"visible":false},"passed":true},{"actual":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"check":"transition 7","expected":{"changed":[["x",1,2],["x",2,3]],"deferred":["parent"],"first_old":{"x":1,"y":4},"last_new":{"x":3,"y":4},"notify_error":[[1,"b"],[1,"a"]],"order":["x","y"],"publish_durable":false,"revision":2,"state_rollback":false,"visible":false},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"transition 0\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": true}, {\"check\": \"transition 1\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": true, \"deferred\": [\"parent\", \"child\"]}, \"passed\": true}, {\"check\": \"transition 2\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 0, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 3\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": true}, {\"check\": \"transition 4\", \"actual\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"expected\": {\"visible\": true, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 3, \"state_rollback\": false, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": true, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 5\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": true, \"notify_error\": [[0, \"z\"], [1, \"m\"], [2, \"a\"]], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 6\", \"actual\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"expected\": {\"visible\": false, \"changed\": [], \"first_old\": {}, \"last_new\": {}, \"order\": [], \"revision\": 0, \"state_rollback\": false, \"notify_error\": [], \"publish_durable\": false, \"deferred\": []}, \"passed\": true}, {\"check\": \"transition 7\", \"actual\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"expected\": {\"visible\": false, \"changed\": [[\"x\", 1, 2], [\"x\", 2, 3]], \"first_old\": {\"x\": 1, \"y\": 4}, \"last_new\": {\"x\": 3, \"y\": 4}, \"order\": [\"x\", \"y\"], \"revision\": 2, \"state_rollback\": false, \"notify_error\": [[1, \"b\"], [1, \"a\"]], \"publish_durable\": false, \"deferred\": [\"parent\"]}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}