{"abstract":"Effective expansion omits user or forced state produces the wrong hierarchical widget state in a regression fixture.","category":"Tree accessibility","checks":6,"contract":"Undo restores the prior expansion set only for surviving branches. Non-undoable loading and filter expansions remain separate. Journal entries belong to a tree generation; stale generations are discarded. Focus restored from journal must be visible under restored expansion.","evaluation_group":"s3-tree-expansion-undo","failed_approach":"The partial repair `effective=forced` still violates a boundary or preservation case.","family":"s3-tree_accessibility-expansion-undo-05","id":"FA-38961","implementations":{"attempt":{"sha256":"367533688b51b407a07ed4f00280ba2487b52ec88746d67c3248bf40eee4bdf0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    valid=bool(d['journal']) and d['journal'][-1]['generation']==d['generation']\n    entry=d['journal'][-1] if valid else None\n    restored=set(entry['before'])&set(d['branches']) if valid else set(d['open'])\n    forced=set(d['filter_open'])|set(d['load_open'])\n    effective=forced\n    journal=d['journal'][:-1] if d['journal'] else []\n    redo=d['redo']+[entry] if valid else d['redo']\n    visible=[x for x in d['rows'] if all(a in effective for a in d['ancestors'].get(x,[]))]\n    candidate=entry['focus'] if valid else d['focus']\n    focus=candidate if candidate in visible else (visible[0] if visible else None)\n    return [sorted(restored),sorted(effective),journal,redo,visible,focus]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('undo latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 0, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 1, 'journal': [{'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 2: [('undo latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 2, 'journal': [{'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 3: [('undo latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 3, 'journal': [{'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 4: [('undo latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 4, 'journal': [{'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 5: [('undo latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 5, 'journal': [{'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])]}\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":"870187852012ac4e1e4b3416fc0c86b70286d0188511421afd8214d2edf0e5f9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    valid=bool(d['journal']) and d['journal'][-1]['generation']==d['generation']\n    entry=d['journal'][-1] if valid else None\n    restored=set(entry['before'])&set(d['branches']) if valid else set(d['open'])\n    forced=set(d['filter_open'])|set(d['load_open'])\n    effective=restored\n    journal=d['journal'][:-1] if d['journal'] else []\n    redo=d['redo']+[entry] if valid else d['redo']\n    visible=[x for x in d['rows'] if all(a in effective for a in d['ancestors'].get(x,[]))]\n    candidate=entry['focus'] if valid else d['focus']\n    focus=candidate if candidate in visible else (visible[0] if visible else None)\n    return [sorted(restored),sorted(effective),journal,redo,visible,focus]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('undo latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 0, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 1, 'journal': [{'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 2: [('undo latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 2, 'journal': [{'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 3: [('undo latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 3, 'journal': [{'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 4: [('undo latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 4, 'journal': [{'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 5: [('undo latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 5, 'journal': [{'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])]}\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":"1bdd690eef5fa6189c059d0d65ce5bd54746f87e82100223d5f9f94a7d99e4bf","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    valid=bool(d['journal']) and d['journal'][-1]['generation']==d['generation']\n    entry=d['journal'][-1] if valid else None\n    restored=set(entry['before'])&set(d['branches']) if valid else set(d['open'])\n    forced=set(d['filter_open'])|set(d['load_open'])\n    effective=restored|forced\n    journal=d['journal'][:-1] if d['journal'] else []\n    redo=d['redo']+[entry] if valid else d['redo']\n    visible=[x for x in d['rows'] if all(a in effective for a in d['ancestors'].get(x,[]))]\n    candidate=entry['focus'] if valid else d['focus']\n    focus=candidate if candidate in visible else (visible[0] if visible else None)\n    return [sorted(restored),sorted(effective),journal,redo,visible,focus]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('undo latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 0, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 1, 'journal': [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 1, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 1, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 1, 'journal': [{'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 1, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 1, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 2: [('undo latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 1, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 2, 'journal': [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 2, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 2, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 2, 'journal': [{'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 2, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 2, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 3: [('undo latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 2, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 3, 'journal': [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 3, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 3, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 3, 'journal': [{'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 3, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 3, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 4: [('undo latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 3, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 4, 'journal': [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 4, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 4, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 4, 'journal': [{'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 4, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 4, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])], 5: [('undo latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'q', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q', 's'], 'b']), ('stale latest', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 4, 'before': ['a'], 'after': [], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}], ['r', 'q', 's'], 's']), ('no journal', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 's']), ('no forced', {'generation': 5, 'journal': [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [['a', 'r'], ['a', 'r'], [{'generation': 5, 'before': ['r'], 'after': ['a'], 'focus': 'r'}], [{'old': True}, {'generation': 5, 'before': ['r', 'a', 'gone'], 'after': ['r'], 'focus': 'b'}], ['r', 'a', 'b', 'q'], 'b']), ('hidden journal focus', {'generation': 5, 'journal': [{'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': [], 'load_open': [], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 's'}, [[], [], [], [{'old': True}, {'generation': 5, 'before': [], 'after': ['r'], 'focus': 'b'}], ['r', 'q'], 'r']), ('outside focus', {'generation': 5, 'journal': [], 'branches': ['r', 'a', 'q'], 'open': ['q'], 'filter_open': ['q'], 'load_open': ['a'], 'redo': [{'old': True}], 'rows': ['r', 'a', 'b', 'q', 's'], 'ancestors': {'a': ['r'], 'b': ['r', 'a'], 's': ['q']}, 'focus': 'q'}, [['q'], ['a', 'q'], [], [{'old': True}], ['r', 'q', 's'], 'q'])]}\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-expansion-undo-05","generated_at":"2026-09-29T14:43:16.553143+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 `effective=restored|forced` at this fault site while retaining the other tree state decisions.","root_cause":"The expansion-undo contract is violated at `effective=restored|forced` by replacing it with `effective=restored`.","sha256":"af0eed80211727be18b16c8f446eeb7effe61ea0031e9e3ccce10b8824c9a762","title":"Tree expansion undo journal: Effective expansion omits user or forced state · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":44.581,"exit_code":1,"observations":[{"actual":[["a","r"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","q","s"],"r"],"check":"undo latest","expected":[["a","r"],["a","q","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q","s"],"b"],"passed":false},{"actual":[["q"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"check":"stale latest","expected":[["q"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"passed":true},{"actual":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"s"],"check":"no journal","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"s"],"passed":true},{"actual":[["a","r"],[],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","q"],"r"],"check":"no forced","expected":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"passed":false},{"actual":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"check":"hidden journal focus","expected":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"passed":true},{"actual":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"q"],"check":"outside focus","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"q"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"undo latest\", \"actual\": [[\"a\", \"r\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\", \"s\"], \"r\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"q\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\", \"s\"], \"b\"], \"passed\": false}, {\"check\": \"stale latest\", \"actual\": [[\"q\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": true}, {\"check\": \"no journal\", \"actual\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": true}, {\"check\": \"no forced\", \"actual\": [[\"a\", \"r\"], [], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"passed\": false}, {\"check\": \"hidden journal focus\", \"actual\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"expected\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.614,"exit_code":1,"observations":[{"actual":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"check":"undo latest","expected":[["a","r"],["a","q","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q","s"],"b"],"passed":false},{"actual":[["q"],["q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"check":"stale latest","expected":[["q"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"passed":false},{"actual":[["q"],["q"],[],[{"old":true}],["r","q","s"],"s"],"check":"no journal","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"s"],"passed":false},{"actual":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"check":"no forced","expected":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"passed":true},{"actual":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"check":"hidden journal focus","expected":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"passed":true},{"actual":[["q"],["q"],[],[{"old":true}],["r","q","s"],"q"],"check":"outside focus","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"q"],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"undo latest\", \"actual\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"q\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\", \"s\"], \"b\"], \"passed\": false}, {\"check\": \"stale latest\", \"actual\": [[\"q\"], [\"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": false}, {\"check\": \"no journal\", \"actual\": [[\"q\"], [\"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": false}, {\"check\": \"no forced\", \"actual\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"passed\": true}, {\"check\": \"hidden journal focus\", \"actual\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"expected\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [[\"q\"], [\"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.874,"exit_code":0,"observations":[{"actual":[["a","r"],["a","q","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q","s"],"b"],"check":"undo latest","expected":[["a","r"],["a","q","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q","s"],"b"],"passed":true},{"actual":[["q"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"check":"stale latest","expected":[["q"],["a","q"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true}],["r","q","s"],"s"],"passed":true},{"actual":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"s"],"check":"no journal","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"s"],"passed":true},{"actual":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"check":"no forced","expected":[["a","r"],["a","r"],[{"after":["a"],"before":["r"],"focus":"r","generation":1}],[{"old":true},{"after":["r"],"before":["r","a","gone"],"focus":"b","generation":1}],["r","a","b","q"],"b"],"passed":true},{"actual":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"check":"hidden journal focus","expected":[[],[],[],[{"old":true},{"after":["r"],"before":[],"focus":"b","generation":1}],["r","q"],"r"],"passed":true},{"actual":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"q"],"check":"outside focus","expected":[["q"],["a","q"],[],[{"old":true}],["r","q","s"],"q"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"undo latest\", \"actual\": [[\"a\", \"r\"], [\"a\", \"q\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\", \"s\"], \"b\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"q\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\", \"s\"], \"b\"], \"passed\": true}, {\"check\": \"stale latest\", \"actual\": [[\"q\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": true}, {\"check\": \"no journal\", \"actual\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"s\"], \"passed\": true}, {\"check\": \"no forced\", \"actual\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"expected\": [[\"a\", \"r\"], [\"a\", \"r\"], [{\"generation\": 1, \"before\": [\"r\"], \"after\": [\"a\"], \"focus\": \"r\"}], [{\"old\": true}, {\"generation\": 1, \"before\": [\"r\", \"a\", \"gone\"], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"a\", \"b\", \"q\"], \"b\"], \"passed\": true}, {\"check\": \"hidden journal focus\", \"actual\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"expected\": [[], [], [], [{\"old\": true}, {\"generation\": 1, \"before\": [], \"after\": [\"r\"], \"focus\": \"b\"}], [\"r\", \"q\"], \"r\"], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"expected\": [[\"q\"], [\"a\", \"q\"], [], [{\"old\": true}], [\"r\", \"q\", \"s\"], \"q\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}