FAILURE MAP
← Case archive

FA-38681 / Tree accessibility / Open access

Accessible subtree reparent transaction: Stable focused descendant is replaced during reparent · case 01

Stable focused descendant is replaced during reparent produces the wrong hierarchical widget state in a regression fixture.

Verified by executionVariant 1 · 6 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The reparent-state contract is violated at `focus=d['focus']` by replacing it with `focus=d['root']`.

THE FAILURE

The reparent-state contract is violated at `focus=d['focus']` by replacing it with `focus=d['root']`.

Unsuccessful approach: The partial repair `focus=d['target']` still violates a boundary or preservation case.

Case contract

The closure contains a moved subtree and the source and destination are distinct parents. Reject drops into that closure or a read-only destination. Accepted moves replace the root parent, shift every descendant level by the parent-depth delta, invalidate sibling metadata, retain ID-based selection and focus, and increment only affected parent versions.

Why this case matters

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.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    accept=d['target'] not in d['closure'] and not d['readonly']
    parent=d['target'] if accept else d['old_parent']
    delta=d['target_depth']+1-d['depths'][d['root']]
    depths={x:(v+delta if accept and x in d['closure'] else v) for x,v in d['depths'].items()}
    old_children=[x for x in d['old_children'] if not(accept and x==d['root'])]
    new_children=d['new_children'][:d['position']]+[d['root']]+d['new_children'][d['position']:] if accept else d['new_children']
    invalid=sorted(set([d['old_parent'],d['target']])) if accept else []
    versions={x:v+(1 if accept and x in invalid else 0) for x,v in d['versions'].items()}
    focus=d['root']
    selected=d['selected']
    expanded=sorted(set(d['expanded'])|({d['target']} if accept and d['reveal'] else set()))
    return [parent,depths,old_children,new_children,invalid,versions,focus,selected,expanded]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 2: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 3: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 4: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 5: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])]}
for label, data, expected in cases[N]:
    check(label, solve(data), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
accepted['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'b', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['q', 'r']]Failed
descendant target['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'b', ['c', 'a'], ['r']]['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'c', ['c', 'a'], ['r']]Failed
protected target['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'b', ['c', 'a'], ['r']]['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'c', ['c', 'a'], ['r']]Failed
no reveal['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'b', ['c', 'a'], ['r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['r']]Failed
insert first['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'b', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['q', 'r']]Failed
insert last['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'b', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'outside', ['c', 'a'], ['q', 'r']]Failed

SHA-256 / 829ed881e66ff6904742bbbe9c429b8b5f3040a193ca5cd406fcb67915d07fb3

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    accept=d['target'] not in d['closure'] and not d['readonly']
    parent=d['target'] if accept else d['old_parent']
    delta=d['target_depth']+1-d['depths'][d['root']]
    depths={x:(v+delta if accept and x in d['closure'] else v) for x,v in d['depths'].items()}
    old_children=[x for x in d['old_children'] if not(accept and x==d['root'])]
    new_children=d['new_children'][:d['position']]+[d['root']]+d['new_children'][d['position']:] if accept else d['new_children']
    invalid=sorted(set([d['old_parent'],d['target']])) if accept else []
    versions={x:v+(1 if accept and x in invalid else 0) for x,v in d['versions'].items()}
    focus=d['target']
    selected=d['selected']
    expanded=sorted(set(d['expanded'])|({d['target']} if accept and d['reveal'] else set()))
    return [parent,depths,old_children,new_children,invalid,versions,focus,selected,expanded]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 2, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 2, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 3, 'c': 4, 'q': 2, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 2: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 3, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 3, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 4, 'c': 5, 'q': 3, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 3: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 4, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 4, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 5, 'c': 6, 'q': 4, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 4: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 5, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 5, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 6, 'c': 7, 'q': 5, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])], 5: [('accepted', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('descendant target', {'target': 'c', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('protected target', {'target': 'q', 'closure': ['b', 'c'], 'readonly': True, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['r', {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'r': 3, 'q': 7, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('no reveal', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 1, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': False}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['r']]), ('insert first', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 0, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'c', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'c', ['c', 'a'], ['q', 'r']]), ('insert last', {'target': 'q', 'closure': ['b', 'c'], 'readonly': False, 'root': 'b', 'old_parent': 'r', 'target_depth': 6, 'depths': {'r': 0, 'b': 1, 'c': 2, 'q': 6, 'outside': 0}, 'old_children': ['a', 'b', 'z'], 'new_children': ['x', 'y'], 'position': 2, 'versions': {'r': 3, 'q': 7, 'outside': 8}, 'focus': 'outside', 'selected': ['c', 'a'], 'expanded': ['r'], 'reveal': True}, ['q', {'r': 0, 'b': 7, 'c': 8, 'q': 6, 'outside': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'r': 4, 'q': 8, 'outside': 8}, 'outside', ['c', 'a'], ['q', 'r']])]}
for label, data, expected in cases[N]:
    check(label, solve(data), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
accepted['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'q', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['q', 'r']]Failed
descendant target['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'c', ['c', 'a'], ['r']]['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'c', ['c', 'a'], ['r']]Passed
protected target['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'q', ['c', 'a'], ['r']]['r', {'b': 1, 'c': 2, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'b', 'z'], ['x', 'y'], [], {'outside': 8, 'q': 7, 'r': 3}, 'c', ['c', 'a'], ['r']]Failed
no reveal['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'q', ['c', 'a'], ['r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'b', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['r']]Failed
insert first['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'q', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['b', 'x', 'y'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'c', ['c', 'a'], ['q', 'r']]Failed
insert last['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'q', ['c', 'a'], ['q', 'r']]['q', {'b': 3, 'c': 4, 'outside': 0, 'q': 2, 'r': 0}, ['a', 'z'], ['x', 'y', 'b'], ['q', 'r'], {'outside': 8, 'q': 8, 'r': 4}, 'outside', ['c', 'a'], ['q', 'r']]Failed

SHA-256 / e4ffd40ef86d2aca37f2a07dc51d5b9f3a50a48e6f74ee31e617c2a13fd1b647

HELD IN THE MEMBER ARCHIVE

The verified repair and its recorded checks are member-only.

This mechanism has 6 recorded checks per implementation. The open-access tier publishes the failure and the unsuccessful fix; the repaired source that passes every check, and the observations that prove it, are available to members.

Every case sharing this mechanism uses the same contract and the same repair, so this one record is held back for all of them.

Member access is invitation-based. Sign in with your invited account to inspect the repair.

Sign in to the archive ↗

Verification & scope

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.

Observations recorded using Python 3.12.14 at 2026-09-29T14:43:13.678228+00:00.

Case digest / 4eb86d69d68e7645d951de87635adf9bd00b474fc6cfe4b0e145d803e395de85