{"abstract":"Successful or superseded move is rolled back produces the wrong hierarchical widget state in a regression fixture.","category":"Tree accessibility","checks":7,"contract":"A failed optimistic move may roll back only while the current parent version and transaction ID match its write. Restore the subtree root at its original sibling position, restore descendant levels by inverse delta, preserve later unrelated selection, and recover focus only if the optimistic move owned it.","evaluation_group":"s3-tree-move-rollback","failed_approach":"The partial repair `rollback=owned` still violates a boundary or preservation case.","family":"s3-tree_accessibility-move-rollback-02","id":"FA-39746","implementations":{"attempt":{"sha256":"1ed80fb5a3b35f403f45446cf202e98a4b4308d90cf3023a5edfddb80e49f606","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    owned=d['transaction']==d['current_transaction'] and d['written_version']==d['current_version']\n    rollback=owned\n    parent=d['old_parent'] if rollback else d['new_parent']\n    source=list(d['source'])\n    if rollback: source=source[:d['old_index']]+[d['root']]+source[d['old_index']:]\n    target=[x for x in d['target'] if not(rollback and x==d['root'])]\n    levels={x:v-d['delta'] if rollback and x in d['closure'] else v for x,v in d['levels'].items()}\n    focus=d['old_focus'] if rollback and d['focus']==d['owned_focus'] else d['focus']\n    selection=d['selected']\n    status='rolled-back' if rollback else ('committed' if owned and d['success'] else 'superseded')\n    return [parent,source,target,levels,focus,selection,status]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 2: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 3: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 4: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 5: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 6, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])]}\nfor label, data, expected in cases[N]:\n    check(label, solve(data), 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":"84ec442abe002327a5844d9b982600a9cf44947b492cbf0bda69ac5016313189","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    owned=d['transaction']==d['current_transaction'] and d['written_version']==d['current_version']\n    rollback=not d['success']\n    parent=d['old_parent'] if rollback else d['new_parent']\n    source=list(d['source'])\n    if rollback: source=source[:d['old_index']]+[d['root']]+source[d['old_index']:]\n    target=[x for x in d['target'] if not(rollback and x==d['root'])]\n    levels={x:v-d['delta'] if rollback and x in d['closure'] else v for x,v in d['levels'].items()}\n    focus=d['old_focus'] if rollback and d['focus']==d['owned_focus'] else d['focus']\n    selection=d['selected']\n    status='rolled-back' if rollback else ('committed' if owned and d['success'] else 'superseded')\n    return [parent,source,target,levels,focus,selection,status]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 2: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 3: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 4: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 5: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 6, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])]}\nfor label, data, expected in cases[N]:\n    check(label, solve(data), 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":"53ea74152aeac279f567b631037a2c42fca64976267bbd908b61dc3725afc7e3","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    owned=d['transaction']==d['current_transaction'] and d['written_version']==d['current_version']\n    rollback=owned and not d['success']\n    parent=d['old_parent'] if rollback else d['new_parent']\n    source=list(d['source'])\n    if rollback: source=source[:d['old_index']]+[d['root']]+source[d['old_index']:]\n    target=[x for x in d['target'] if not(rollback and x==d['root'])]\n    levels={x:v-d['delta'] if rollback and x in d['closure'] else v for x,v in d['levels'].items()}\n    focus=d['old_focus'] if rollback and d['focus']==d['owned_focus'] else d['focus']\n    selection=d['selected']\n    status='rolled-back' if rollback else ('committed' if owned and d['success'] else 'superseded')\n    return [parent,source,target,levels,focus,selection,status]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 3, 'c': 4, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 1, 'current_version': 1, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 2, 'closure': ['b', 'c'], 'levels': {'b': 3, 'c': 4, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 2: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 4, 'c': 5, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 2, 'current_version': 2, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 3, 'closure': ['b', 'c'], 'levels': {'b': 4, 'c': 5, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 3: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 5, 'c': 6, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 3, 'current_version': 3, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 4, 'closure': ['b', 'c'], 'levels': {'b': 5, 'c': 6, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 4: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 6, 'c': 7, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 4, 'current_version': 4, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 5, 'closure': ['b', 'c'], 'levels': {'b': 6, 'c': 7, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])], 5: [('owned failure', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('success', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': True, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'committed']), ('new transaction', {'transaction': 't', 'current_transaction': 'new', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('new parent version', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 6, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['q', ['a', 'z'], ['x', 'b', 'y'], {'b': 7, 'c': 8, 'outside': 0}, 'b', ['c', 'outside'], 'superseded']), ('outside focus', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 1, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'outside', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'b', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'outside', ['c', 'outside'], 'rolled-back']), ('original first', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 0, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['b', 'a', 'z'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back']), ('original last', {'transaction': 't', 'current_transaction': 't', 'written_version': 5, 'current_version': 5, 'success': False, 'old_parent': 'r', 'new_parent': 'q', 'source': ['a', 'z'], 'target': ['x', 'b', 'y'], 'root': 'b', 'old_index': 2, 'delta': 6, 'closure': ['b', 'c'], 'levels': {'b': 7, 'c': 8, 'outside': 0}, 'old_focus': 'c', 'focus': 'b', 'owned_focus': 'b', 'selected': ['c', 'outside'], 'old_selected': ['b']}, ['r', ['a', 'z', 'b'], ['x', 'y'], {'b': 1, 'c': 2, 'outside': 0}, 'c', ['c', 'outside'], 'rolled-back'])]}\nfor label, data, expected in cases[N]:\n    check(label, solve(data), 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":"Synthetic deterministic hierarchical-widget data contract; not an implementation of a browser accessibility tree. 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-tree_accessibility-move-rollback-02","generated_at":"2026-09-29T14:43:24.312634+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Offline executable model of a hierarchical accessibility interaction; inputs are bounded and valid as stipulated. No browser, assistive technology, or normative ARIA conformance is claimed.","repair":"Restore `rollback=owned and not d['success']` at this fault site while retaining the other tree state decisions.","root_cause":"The move-rollback contract is violated at `rollback=owned and not d['success']` by replacing it with `rollback=not d['success']`.","sha256":"a8c2dd96ad0b53e1fdc81b70f23907af1d91380dfd60181c9e2fa7b6740481ce","title":"Optimistic subtree move rollback ownership: Successful or superseded move is rolled back · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":43.044,"exit_code":1,"observations":[{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"owned failure","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"success","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"committed"],"passed":false},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"check":"new transaction","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":true},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"check":"new parent version","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":true},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"check":"outside focus","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original first","expected":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original last","expected":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"owned failure\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"success\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"committed\"], \"passed\": false}, {\"check\": \"new transaction\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": true}, {\"check\": \"new parent version\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original first\", \"actual\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original last\", \"actual\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.909,"exit_code":1,"observations":[{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"owned failure","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"committed"],"check":"success","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"committed"],"passed":true},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"new transaction","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":false},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"new parent version","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":false},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"check":"outside focus","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original first","expected":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original last","expected":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"owned failure\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"success\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"committed\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"committed\"], \"passed\": true}, {\"check\": \"new transaction\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": false}, {\"check\": \"new parent version\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": false}, {\"check\": \"outside focus\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original first\", \"actual\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original last\", \"actual\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":45.334,"exit_code":0,"observations":[{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"owned failure","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"committed"],"check":"success","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"committed"],"passed":true},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"check":"new transaction","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":true},{"actual":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"check":"new parent version","expected":["q",["a","z"],["x","b","y"],{"b":3,"c":4,"outside":0},"b",["c","outside"],"superseded"],"passed":true},{"actual":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"check":"outside focus","expected":["r",["a","b","z"],["x","y"],{"b":1,"c":2,"outside":0},"outside",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original first","expected":["r",["b","a","z"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true},{"actual":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"check":"original last","expected":["r",["a","z","b"],["x","y"],{"b":1,"c":2,"outside":0},"c",["c","outside"],"rolled-back"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"owned failure\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"success\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"committed\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"committed\"], \"passed\": true}, {\"check\": \"new transaction\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": true}, {\"check\": \"new parent version\", \"actual\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"expected\": [\"q\", [\"a\", \"z\"], [\"x\", \"b\", \"y\"], {\"b\": 3, \"c\": 4, \"outside\": 0}, \"b\", [\"c\", \"outside\"], \"superseded\"], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"b\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"outside\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original first\", \"actual\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"b\", \"a\", \"z\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}, {\"check\": \"original last\", \"actual\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"expected\": [\"r\", [\"a\", \"z\", \"b\"], [\"x\", \"y\"], {\"b\": 1, \"c\": 2, \"outside\": 0}, \"c\", [\"c\", \"outside\"], \"rolled-back\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}