{"abstract":"Refresh removal set includes surviving or newly added children produces the wrong hierarchical widget state in a regression fixture.","category":"Tree accessibility","checks":6,"contract":"A refresh replaces one branch child list while preserving child identity state for survivors. Removed child closures lose selection, expansion, cached data and edit sessions; descendants of surviving children remain. Fresh child order wins. Focus removed by refresh recovers to the parent; unrelated focus remains.","evaluation_group":"s3-tree-branch-refresh","failed_approach":"The partial repair `set(new)-set(d['old'])` still violates a boundary or preservation case.","family":"s3-tree_accessibility-branch-refresh-02","id":"FA-39246","implementations":{"attempt":{"sha256":"14e86868cf6f86c94b154765d715c92bc08d78f9e8ffb904aa89a731641ec1e4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    new=list(dict.fromkeys(d['incoming']))\n    removed_roots=set(new)-set(d['old'])\n    removed={x for x in d['rows'] if x in removed_roots or any(a in removed_roots for a in d['ancestors'].get(x,[]))}\n    selected=[x for x in d['selected'] if x not in removed]\n    expanded=[x for x in d['expanded'] if x not in removed]\n    cache={x:v for x,v in d['cache'].items() if x not in removed}\n    focus=d['parent'] if d['focus'] in removed else d['focus']\n    edit=None if d['edit'] in removed else d['edit']\n    added=[x for x in new if x not in d['old']]\n    versions={x:(d['revision'] if x==d['parent'] else v) for x,v in d['versions'].items()}\n    return [new,sorted(removed),selected,expanded,cache,focus,edit,added,versions]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('removed child', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0'], {'r': 6, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 6, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 6, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 6, 'outside': 2}])], 2: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 7, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 7, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 7, 'outside': 2}])], 3: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 8, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 8, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 8, 'outside': 2}])], 4: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 9, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 9, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 9, 'outside': 2}])], 5: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 10, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 10, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 10, 'outside': 2}])]}\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":"493e0cd2c2332a124e446dde2d884fa8723bca91dcdf3b3e55c65b6ab6b13cd0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    new=list(dict.fromkeys(d['incoming']))\n    removed_roots=set(d['old'])\n    removed={x for x in d['rows'] if x in removed_roots or any(a in removed_roots for a in d['ancestors'].get(x,[]))}\n    selected=[x for x in d['selected'] if x not in removed]\n    expanded=[x for x in d['expanded'] if x not in removed]\n    cache={x:v for x,v in d['cache'].items() if x not in removed}\n    focus=d['parent'] if d['focus'] in removed else d['focus']\n    edit=None if d['edit'] in removed else d['edit']\n    added=[x for x in new if x not in d['old']]\n    versions={x:(d['revision'] if x==d['parent'] else v) for x,v in d['versions'].items()}\n    return [new,sorted(removed),selected,expanded,cache,focus,edit,added,versions]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('removed child', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0'], {'r': 6, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 6, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 6, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 6, 'outside': 2}])], 2: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 7, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 7, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 7, 'outside': 2}])], 3: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 8, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 8, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 8, 'outside': 2}])], 4: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 9, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 9, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 9, 'outside': 2}])], 5: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 10, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 10, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 10, 'outside': 2}])]}\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":"dbad54050dbe278d5eca418e75d822c35e67beb99132e5b5100378c91747dfa5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(d):\n    new=list(dict.fromkeys(d['incoming']))\n    removed_roots=set(d['old'])-set(new)\n    removed={x for x in d['rows'] if x in removed_roots or any(a in removed_roots for a in d['ancestors'].get(x,[]))}\n    selected=[x for x in d['selected'] if x not in removed]\n    expanded=[x for x in d['expanded'] if x not in removed]\n    cache={x:v for x,v in d['cache'].items() if x not in removed}\n    focus=d['parent'] if d['focus'] in removed else d['focus']\n    edit=None if d['edit'] in removed else d['edit']\n    added=[x for x in new if x not in d['old']]\n    versions={x:(d['revision'] if x==d['parent'] else v) for x,v in d['versions'].items()}\n    return [new,sorted(removed),selected,expanded,cache,focus,edit,added,versions]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [('removed child', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0'], {'r': 6, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z', 'a', 'v0'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0'], {'r': 6, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 6, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 6, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 6}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 6, 'outside': 2}])], 2: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z', 'a', 'v0', 'v1'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1'], {'r': 7, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 7, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 7, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 7}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 7, 'outside': 2}])], 3: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z', 'a', 'v0', 'v1', 'v2'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2'], {'r': 8, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 8, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 8, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 8}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 8, 'outside': 2}])], 4: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z', 'a', 'v0', 'v1', 'v2', 'v3'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3'], {'r': 9, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 9, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 9, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 9}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 9, 'outside': 2}])], 5: [('removed child', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'r', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('surviving focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'aa', 'edit': 'aa', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'aa', 'aa', ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('outside focus', {'incoming': ['z', 'a', 'z', 'v0', 'v1', 'v2', 'v3', 'v4'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'outside', 'edit': None, 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z', 'a', 'v0', 'v1', 'v2', 'v3', 'v4'], ['b', 'bb'], ['aa', 'outside'], ['a'], {'aa': 1, 'outside': 3}, 'outside', None, ['z', 'v0', 'v1', 'v2', 'v3', 'v4'], {'r': 10, 'outside': 2}]), ('empty refresh', {'incoming': [], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [[], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, [], {'r': 10, 'outside': 2}]), ('same children', {'incoming': ['b', 'a'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['b', 'a'], [], ['aa', 'bb', 'outside'], ['a', 'b', 'bb'], {'aa': 1, 'bb': 2, 'outside': 3}, 'bb', 'bb', [], {'r': 10, 'outside': 2}]), ('only new children', {'incoming': ['z'], 'old': ['a', 'b'], 'rows': ['r', 'a', 'aa', 'b', 'bb', 'outside'], 'ancestors': {'a': ['r'], 'aa': ['r', 'a'], 'b': ['r'], 'bb': ['r', 'b']}, 'selected': ['aa', 'bb', 'outside'], 'expanded': ['a', 'b', 'bb'], 'cache': {'aa': 1, 'bb': 2, 'outside': 3}, 'focus': 'bb', 'edit': 'bb', 'parent': 'r', 'versions': {'r': 1, 'outside': 2}, 'revision': 10}, [['z'], ['a', 'aa', 'b', 'bb'], ['outside'], [], {'outside': 3}, 'r', None, ['z'], {'r': 10, 'outside': 2}])]}\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-branch-refresh-02","generated_at":"2026-09-29T14:43:19.313581+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 `set(d['old'])-set(new)` at this fault site while retaining the other tree state decisions.","root_cause":"The branch-refresh contract is violated at `set(d['old'])-set(new)` by replacing it with `set(d['old'])`.","sha256":"0c8536db1a55b7b84c5ba30b65b6bc04154bd4788530b9b602adba6769d64e17","title":"Tree branch refresh reconciliation: Refresh removal set includes surviving or newly added children · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":49.359,"exit_code":1,"observations":[{"actual":[["z","a","v0"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",["z","v0"],{"outside":2,"r":6}],"check":"removed child","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[["z","a","v0"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"aa","aa",["z","v0"],{"outside":2,"r":6}],"check":"surviving focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"aa","aa",["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[["z","a","v0"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"check":"outside focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[[],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"check":"empty refresh","expected":[[],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"passed":false},{"actual":[["b","a"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"check":"same children","expected":[["b","a"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"passed":true},{"actual":[["z"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",["z"],{"outside":2,"r":6}],"check":"only new children","expected":[["z"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z"],{"outside":2,"r":6}],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"removed child\", \"actual\": [[\"z\", \"a\", \"v0\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"surviving focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"aa\", \"aa\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"aa\", \"aa\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"outside focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"empty refresh\", \"actual\": [[], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"expected\": [[], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"same children\", \"actual\": [[\"b\", \"a\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"b\", \"a\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"only new children\", \"actual\": [[\"z\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [\"z\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":49.264,"exit_code":1,"observations":[{"actual":[["z","a","v0"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"check":"removed child","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[["z","a","v0"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"check":"surviving focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"aa","aa",["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[["z","a","v0"],["a","aa","b","bb"],["outside"],[],{"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"check":"outside focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"passed":false},{"actual":[[],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"check":"empty refresh","expected":[[],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"passed":true},{"actual":[["b","a"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"check":"same children","expected":[["b","a"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"passed":false},{"actual":[["z"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z"],{"outside":2,"r":6}],"check":"only new children","expected":[["z"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z"],{"outside":2,"r":6}],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"removed child\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"surviving focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"aa\", \"aa\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"outside focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"empty refresh\", \"actual\": [[], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"expected\": [[], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"same children\", \"actual\": [[\"b\", \"a\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"b\", \"a\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"passed\": false}, {\"check\": \"only new children\", \"actual\": [[\"z\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\"], {\"r\": 6, \"outside\": 2}], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":45.026,"exit_code":0,"observations":[{"actual":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"check":"removed child","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"r",null,["z","v0"],{"outside":2,"r":6}],"passed":true},{"actual":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"aa","aa",["z","v0"],{"outside":2,"r":6}],"check":"surviving focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"aa","aa",["z","v0"],{"outside":2,"r":6}],"passed":true},{"actual":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"check":"outside focus","expected":[["z","a","v0"],["b","bb"],["aa","outside"],["a"],{"aa":1,"outside":3},"outside",null,["z","v0"],{"outside":2,"r":6}],"passed":true},{"actual":[[],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"check":"empty refresh","expected":[[],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,[],{"outside":2,"r":6}],"passed":true},{"actual":[["b","a"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"check":"same children","expected":[["b","a"],[],["aa","bb","outside"],["a","b","bb"],{"aa":1,"bb":2,"outside":3},"bb","bb",[],{"outside":2,"r":6}],"passed":true},{"actual":[["z"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z"],{"outside":2,"r":6}],"check":"only new children","expected":[["z"],["a","aa","b","bb"],["outside"],[],{"outside":3},"r",null,["z"],{"outside":2,"r":6}],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"removed child\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"r\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"surviving focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"aa\", \"aa\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"aa\", \"aa\", [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"outside focus\", \"actual\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\", \"a\", \"v0\"], [\"b\", \"bb\"], [\"aa\", \"outside\"], [\"a\"], {\"aa\": 1, \"outside\": 3}, \"outside\", null, [\"z\", \"v0\"], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"empty refresh\", \"actual\": [[], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"expected\": [[], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"same children\", \"actual\": [[\"b\", \"a\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"b\", \"a\"], [], [\"aa\", \"bb\", \"outside\"], [\"a\", \"b\", \"bb\"], {\"aa\": 1, \"bb\": 2, \"outside\": 3}, \"bb\", \"bb\", [], {\"r\": 6, \"outside\": 2}], \"passed\": true}, {\"check\": \"only new children\", \"actual\": [[\"z\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\"], {\"r\": 6, \"outside\": 2}], \"expected\": [[\"z\"], [\"a\", \"aa\", \"b\", \"bb\"], [\"outside\"], [], {\"outside\": 3}, \"r\", null, [\"z\"], {\"r\": 6, \"outside\": 2}], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}