{"abstract":"State follows key through reorder.","category":"Client state","checks":70,"contract":"A component instance is identified by sibling key plus component type. Reordering preserves its state, changing type remounts, removed keys lose state, and replacement cleanup happens before mount. Operation state-follows-key-through-reorder has the six explicit input/output oracles below.","evaluation_group":"s3-client-state-keyed-render","failed_approach":"The partial repair `[state.get(k) for k,t in incoming]` still violates the explicit fixture contract.","family":"s3-client-state-keyed-render-state-follows-key-through-reorder","id":"FA-24451","implementations":{"attempt":{"sha256":"36dd3ee920e992071981a6e83c22fc8fdea1838bb1908d0c27e62507d8e3a446","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    old, incoming, state = s\n    if operation == 'type-and-key-reuse':\n        return [k for k,t in incoming if (k,t) in old]\n    if operation == 'new-instance-mounts':\n        return [k for k,t in incoming if (k,t) not in old]\n    if operation == 'old-instance-unmounts':\n        return [k for k,t in old if (k,t) not in incoming]\n    if operation == 'state-follows-key-through-reorder':\n        return [state.get(k) for k,t in incoming]\n    if operation == 'render-order-follows-incoming':\n        return [k for k,t in incoming]\n    if operation == 'changed-type-state-reset':\n        return {k:state.get(k) if (k,t) in old else None for k,t in incoming}\n    if operation == 'cleanup-before-replacement-mount':\n        return [(k,'cleanup') for k,t in old if k in dict(incoming) and (k,t) not in incoming]+[(k,'mount') for k,t in incoming if k in dict(old) and (k,t) not in old]\n    if operation == 'removed-state-pruning':\n        return {k:v for k,v in state.items() if k in dict(incoming)}\n    if operation == 'insertion-position':\n        return {k:i for i,(k,t) in enumerate(incoming)}\n    if operation == 'retained-instance-moves':\n        return [k for i,(k,t) in enumerate(incoming) if (k,t) in old and old.index((k,t))!=i]\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('type-and-key-reuse scenario 1', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('type-and-key-reuse scenario 2', solve('type-and-key-reuse', ([], [('a','card')],{})), [])\ncheck('type-and-key-reuse scenario 3', solve('type-and-key-reuse', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('type-and-key-reuse scenario 4', solve('type-and-key-reuse', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('type-and-key-reuse scenario 5', solve('type-and-key-reuse', ([('a','card')],[],{'a':N})), [])\ncheck('type-and-key-reuse scenario 6', solve('type-and-key-reuse', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a'])\ncheck('new-instance-mounts scenario 1', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('new-instance-mounts scenario 2', solve('new-instance-mounts', ([], [('a','card')],{})), ['a'])\ncheck('new-instance-mounts scenario 3', solve('new-instance-mounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('new-instance-mounts scenario 4', solve('new-instance-mounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('new-instance-mounts scenario 5', solve('new-instance-mounts', ([('a','card')],[],{'a':N})), [])\ncheck('new-instance-mounts scenario 6', solve('new-instance-mounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['b'])\ncheck('old-instance-unmounts scenario 1', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('old-instance-unmounts scenario 2', solve('old-instance-unmounts', ([], [('a','card')],{})), [])\ncheck('old-instance-unmounts scenario 3', solve('old-instance-unmounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('old-instance-unmounts scenario 4', solve('old-instance-unmounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['a'])\ncheck('old-instance-unmounts scenario 5', solve('old-instance-unmounts', ([('a','card')],[],{'a':N})), ['a'])\ncheck('old-instance-unmounts scenario 6', solve('old-instance-unmounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('state-follows-key-through-reorder scenario 1', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [2,N])\ncheck('state-follows-key-through-reorder scenario 2', solve('state-follows-key-through-reorder', ([], [('a','card')],{})), [])\ncheck('state-follows-key-through-reorder scenario 3', solve('state-follows-key-through-reorder', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('state-follows-key-through-reorder scenario 4', solve('state-follows-key-through-reorder', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [None])\ncheck('state-follows-key-through-reorder scenario 5', solve('state-follows-key-through-reorder', ([('a','card')],[],{'a':N})), [])\ncheck('state-follows-key-through-reorder scenario 6', solve('state-follows-key-through-reorder', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [False])\ncheck('render-order-follows-incoming scenario 1', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('render-order-follows-incoming scenario 2', solve('render-order-follows-incoming', ([], [('a','card')],{})), ['a'])\ncheck('render-order-follows-incoming scenario 3', solve('render-order-follows-incoming', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('render-order-follows-incoming scenario 4', solve('render-order-follows-incoming', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('render-order-follows-incoming scenario 5', solve('render-order-follows-incoming', ([('a','card')],[],{'a':N})), [])\ncheck('render-order-follows-incoming scenario 6', solve('render-order-follows-incoming', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a','b'])\ncheck('changed-type-state-reset scenario 1', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':2,'a':N})\ncheck('changed-type-state-reset scenario 2', solve('changed-type-state-reset', ([], [('a','card')],{})), {'a':None})\ncheck('changed-type-state-reset scenario 3', solve('changed-type-state-reset', ([('a','card')],[('a','panel')],{'a':0})), {'a':None})\ncheck('changed-type-state-reset scenario 4', solve('changed-type-state-reset', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('changed-type-state-reset scenario 5', solve('changed-type-state-reset', ([('a','card')],[],{'a':N})), {})\ncheck('changed-type-state-reset scenario 6', solve('changed-type-state-reset', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False,'b':None})\ncheck('cleanup-before-replacement-mount scenario 1', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('cleanup-before-replacement-mount scenario 2', solve('cleanup-before-replacement-mount', ([], [('a','card')],{})), [])\ncheck('cleanup-before-replacement-mount scenario 3', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','panel')],{'a':0})), [('a','cleanup'),('a','mount')])\ncheck('cleanup-before-replacement-mount scenario 4', solve('cleanup-before-replacement-mount', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('cleanup-before-replacement-mount scenario 5', solve('cleanup-before-replacement-mount', ([('a','card')],[],{'a':N})), [])\ncheck('cleanup-before-replacement-mount scenario 6', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('removed-state-pruning scenario 1', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'a':N,'b':2})\ncheck('removed-state-pruning scenario 2', solve('removed-state-pruning', ([], [('a','card')],{})), {})\ncheck('removed-state-pruning scenario 3', solve('removed-state-pruning', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('removed-state-pruning scenario 4', solve('removed-state-pruning', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('removed-state-pruning scenario 5', solve('removed-state-pruning', ([('a','card')],[],{'a':N})), {})\ncheck('removed-state-pruning scenario 6', solve('removed-state-pruning', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False})\ncheck('insertion-position scenario 1', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':0,'a':1})\ncheck('insertion-position scenario 2', solve('insertion-position', ([], [('a','card')],{})), {'a':0})\ncheck('insertion-position scenario 3', solve('insertion-position', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('insertion-position scenario 4', solve('insertion-position', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':0})\ncheck('insertion-position scenario 5', solve('insertion-position', ([('a','card')],[],{'a':N})), {})\ncheck('insertion-position scenario 6', solve('insertion-position', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':0,'b':1})\ncheck('retained-instance-moves scenario 1', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('retained-instance-moves scenario 2', solve('retained-instance-moves', ([], [('a','card')],{})), [])\ncheck('retained-instance-moves scenario 3', solve('retained-instance-moves', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('retained-instance-moves scenario 4', solve('retained-instance-moves', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('retained-instance-moves scenario 5', solve('retained-instance-moves', ([('a','card')],[],{'a':N})), [])\ncheck('retained-instance-moves scenario 6', solve('retained-instance-moves', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('reordering distinct state values for every seed: type-and-key-reuse', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: new-instance-mounts', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: old-instance-unmounts', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: state-follows-key-through-reorder', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [2,N+10])\ncheck('reordering distinct state values for every seed: render-order-follows-incoming', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: changed-type-state-reset', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':2,'a':N+10})\ncheck('reordering distinct state values for every seed: cleanup-before-replacement-mount', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: removed-state-pruning', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'a':N+10,'b':2})\ncheck('reordering distinct state values for every seed: insertion-position', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':0,'a':1})\ncheck('reordering distinct state values for every seed: retained-instance-moves', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\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":"edaec9afcf1883bebe430e225e3fa4ade8fa6fe7a83f854c44b7f1633a159063","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    old, incoming, state = s\n    if operation == 'type-and-key-reuse':\n        return [k for k,t in incoming if (k,t) in old]\n    if operation == 'new-instance-mounts':\n        return [k for k,t in incoming if (k,t) not in old]\n    if operation == 'old-instance-unmounts':\n        return [k for k,t in old if (k,t) not in incoming]\n    if operation == 'state-follows-key-through-reorder':\n        return [state.get(k) for k,t in old if (k,t) in incoming]\n    if operation == 'render-order-follows-incoming':\n        return [k for k,t in incoming]\n    if operation == 'changed-type-state-reset':\n        return {k:state.get(k) if (k,t) in old else None for k,t in incoming}\n    if operation == 'cleanup-before-replacement-mount':\n        return [(k,'cleanup') for k,t in old if k in dict(incoming) and (k,t) not in incoming]+[(k,'mount') for k,t in incoming if k in dict(old) and (k,t) not in old]\n    if operation == 'removed-state-pruning':\n        return {k:v for k,v in state.items() if k in dict(incoming)}\n    if operation == 'insertion-position':\n        return {k:i for i,(k,t) in enumerate(incoming)}\n    if operation == 'retained-instance-moves':\n        return [k for i,(k,t) in enumerate(incoming) if (k,t) in old and old.index((k,t))!=i]\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('type-and-key-reuse scenario 1', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('type-and-key-reuse scenario 2', solve('type-and-key-reuse', ([], [('a','card')],{})), [])\ncheck('type-and-key-reuse scenario 3', solve('type-and-key-reuse', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('type-and-key-reuse scenario 4', solve('type-and-key-reuse', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('type-and-key-reuse scenario 5', solve('type-and-key-reuse', ([('a','card')],[],{'a':N})), [])\ncheck('type-and-key-reuse scenario 6', solve('type-and-key-reuse', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a'])\ncheck('new-instance-mounts scenario 1', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('new-instance-mounts scenario 2', solve('new-instance-mounts', ([], [('a','card')],{})), ['a'])\ncheck('new-instance-mounts scenario 3', solve('new-instance-mounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('new-instance-mounts scenario 4', solve('new-instance-mounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('new-instance-mounts scenario 5', solve('new-instance-mounts', ([('a','card')],[],{'a':N})), [])\ncheck('new-instance-mounts scenario 6', solve('new-instance-mounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['b'])\ncheck('old-instance-unmounts scenario 1', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('old-instance-unmounts scenario 2', solve('old-instance-unmounts', ([], [('a','card')],{})), [])\ncheck('old-instance-unmounts scenario 3', solve('old-instance-unmounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('old-instance-unmounts scenario 4', solve('old-instance-unmounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['a'])\ncheck('old-instance-unmounts scenario 5', solve('old-instance-unmounts', ([('a','card')],[],{'a':N})), ['a'])\ncheck('old-instance-unmounts scenario 6', solve('old-instance-unmounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('state-follows-key-through-reorder scenario 1', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [2,N])\ncheck('state-follows-key-through-reorder scenario 2', solve('state-follows-key-through-reorder', ([], [('a','card')],{})), [])\ncheck('state-follows-key-through-reorder scenario 3', solve('state-follows-key-through-reorder', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('state-follows-key-through-reorder scenario 4', solve('state-follows-key-through-reorder', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [None])\ncheck('state-follows-key-through-reorder scenario 5', solve('state-follows-key-through-reorder', ([('a','card')],[],{'a':N})), [])\ncheck('state-follows-key-through-reorder scenario 6', solve('state-follows-key-through-reorder', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [False])\ncheck('render-order-follows-incoming scenario 1', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('render-order-follows-incoming scenario 2', solve('render-order-follows-incoming', ([], [('a','card')],{})), ['a'])\ncheck('render-order-follows-incoming scenario 3', solve('render-order-follows-incoming', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('render-order-follows-incoming scenario 4', solve('render-order-follows-incoming', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('render-order-follows-incoming scenario 5', solve('render-order-follows-incoming', ([('a','card')],[],{'a':N})), [])\ncheck('render-order-follows-incoming scenario 6', solve('render-order-follows-incoming', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a','b'])\ncheck('changed-type-state-reset scenario 1', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':2,'a':N})\ncheck('changed-type-state-reset scenario 2', solve('changed-type-state-reset', ([], [('a','card')],{})), {'a':None})\ncheck('changed-type-state-reset scenario 3', solve('changed-type-state-reset', ([('a','card')],[('a','panel')],{'a':0})), {'a':None})\ncheck('changed-type-state-reset scenario 4', solve('changed-type-state-reset', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('changed-type-state-reset scenario 5', solve('changed-type-state-reset', ([('a','card')],[],{'a':N})), {})\ncheck('changed-type-state-reset scenario 6', solve('changed-type-state-reset', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False,'b':None})\ncheck('cleanup-before-replacement-mount scenario 1', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('cleanup-before-replacement-mount scenario 2', solve('cleanup-before-replacement-mount', ([], [('a','card')],{})), [])\ncheck('cleanup-before-replacement-mount scenario 3', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','panel')],{'a':0})), [('a','cleanup'),('a','mount')])\ncheck('cleanup-before-replacement-mount scenario 4', solve('cleanup-before-replacement-mount', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('cleanup-before-replacement-mount scenario 5', solve('cleanup-before-replacement-mount', ([('a','card')],[],{'a':N})), [])\ncheck('cleanup-before-replacement-mount scenario 6', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('removed-state-pruning scenario 1', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'a':N,'b':2})\ncheck('removed-state-pruning scenario 2', solve('removed-state-pruning', ([], [('a','card')],{})), {})\ncheck('removed-state-pruning scenario 3', solve('removed-state-pruning', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('removed-state-pruning scenario 4', solve('removed-state-pruning', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('removed-state-pruning scenario 5', solve('removed-state-pruning', ([('a','card')],[],{'a':N})), {})\ncheck('removed-state-pruning scenario 6', solve('removed-state-pruning', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False})\ncheck('insertion-position scenario 1', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':0,'a':1})\ncheck('insertion-position scenario 2', solve('insertion-position', ([], [('a','card')],{})), {'a':0})\ncheck('insertion-position scenario 3', solve('insertion-position', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('insertion-position scenario 4', solve('insertion-position', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':0})\ncheck('insertion-position scenario 5', solve('insertion-position', ([('a','card')],[],{'a':N})), {})\ncheck('insertion-position scenario 6', solve('insertion-position', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':0,'b':1})\ncheck('retained-instance-moves scenario 1', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('retained-instance-moves scenario 2', solve('retained-instance-moves', ([], [('a','card')],{})), [])\ncheck('retained-instance-moves scenario 3', solve('retained-instance-moves', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('retained-instance-moves scenario 4', solve('retained-instance-moves', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('retained-instance-moves scenario 5', solve('retained-instance-moves', ([('a','card')],[],{'a':N})), [])\ncheck('retained-instance-moves scenario 6', solve('retained-instance-moves', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('reordering distinct state values for every seed: type-and-key-reuse', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: new-instance-mounts', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: old-instance-unmounts', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: state-follows-key-through-reorder', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [2,N+10])\ncheck('reordering distinct state values for every seed: render-order-follows-incoming', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: changed-type-state-reset', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':2,'a':N+10})\ncheck('reordering distinct state values for every seed: cleanup-before-replacement-mount', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: removed-state-pruning', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'a':N+10,'b':2})\ncheck('reordering distinct state values for every seed: insertion-position', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':0,'a':1})\ncheck('reordering distinct state values for every seed: retained-instance-moves', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\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":"8ab35c285e892b82a66289872a20ea352d897c4a69d142bb0aa001cc45a97b3a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(operation, s):\n    old, incoming, state = s\n    if operation == 'type-and-key-reuse':\n        return [k for k,t in incoming if (k,t) in old]\n    if operation == 'new-instance-mounts':\n        return [k for k,t in incoming if (k,t) not in old]\n    if operation == 'old-instance-unmounts':\n        return [k for k,t in old if (k,t) not in incoming]\n    if operation == 'state-follows-key-through-reorder':\n        return [state.get(k) for k,t in incoming if (k,t) in old]\n    if operation == 'render-order-follows-incoming':\n        return [k for k,t in incoming]\n    if operation == 'changed-type-state-reset':\n        return {k:state.get(k) if (k,t) in old else None for k,t in incoming}\n    if operation == 'cleanup-before-replacement-mount':\n        return [(k,'cleanup') for k,t in old if k in dict(incoming) and (k,t) not in incoming]+[(k,'mount') for k,t in incoming if k in dict(old) and (k,t) not in old]\n    if operation == 'removed-state-pruning':\n        return {k:v for k,v in state.items() if k in dict(incoming)}\n    if operation == 'insertion-position':\n        return {k:i for i,(k,t) in enumerate(incoming)}\n    if operation == 'retained-instance-moves':\n        return [k for i,(k,t) in enumerate(incoming) if (k,t) in old and old.index((k,t))!=i]\n    raise ValueError('unknown modeled operation')\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('type-and-key-reuse scenario 1', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('type-and-key-reuse scenario 2', solve('type-and-key-reuse', ([], [('a','card')],{})), [])\ncheck('type-and-key-reuse scenario 3', solve('type-and-key-reuse', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('type-and-key-reuse scenario 4', solve('type-and-key-reuse', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('type-and-key-reuse scenario 5', solve('type-and-key-reuse', ([('a','card')],[],{'a':N})), [])\ncheck('type-and-key-reuse scenario 6', solve('type-and-key-reuse', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a'])\ncheck('new-instance-mounts scenario 1', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('new-instance-mounts scenario 2', solve('new-instance-mounts', ([], [('a','card')],{})), ['a'])\ncheck('new-instance-mounts scenario 3', solve('new-instance-mounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('new-instance-mounts scenario 4', solve('new-instance-mounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('new-instance-mounts scenario 5', solve('new-instance-mounts', ([('a','card')],[],{'a':N})), [])\ncheck('new-instance-mounts scenario 6', solve('new-instance-mounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['b'])\ncheck('old-instance-unmounts scenario 1', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('old-instance-unmounts scenario 2', solve('old-instance-unmounts', ([], [('a','card')],{})), [])\ncheck('old-instance-unmounts scenario 3', solve('old-instance-unmounts', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('old-instance-unmounts scenario 4', solve('old-instance-unmounts', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['a'])\ncheck('old-instance-unmounts scenario 5', solve('old-instance-unmounts', ([('a','card')],[],{'a':N})), ['a'])\ncheck('old-instance-unmounts scenario 6', solve('old-instance-unmounts', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('state-follows-key-through-reorder scenario 1', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [2,N])\ncheck('state-follows-key-through-reorder scenario 2', solve('state-follows-key-through-reorder', ([], [('a','card')],{})), [])\ncheck('state-follows-key-through-reorder scenario 3', solve('state-follows-key-through-reorder', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('state-follows-key-through-reorder scenario 4', solve('state-follows-key-through-reorder', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [None])\ncheck('state-follows-key-through-reorder scenario 5', solve('state-follows-key-through-reorder', ([('a','card')],[],{'a':N})), [])\ncheck('state-follows-key-through-reorder scenario 6', solve('state-follows-key-through-reorder', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [False])\ncheck('render-order-follows-incoming scenario 1', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('render-order-follows-incoming scenario 2', solve('render-order-follows-incoming', ([], [('a','card')],{})), ['a'])\ncheck('render-order-follows-incoming scenario 3', solve('render-order-follows-incoming', ([('a','card')],[('a','panel')],{'a':0})), ['a'])\ncheck('render-order-follows-incoming scenario 4', solve('render-order-follows-incoming', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('render-order-follows-incoming scenario 5', solve('render-order-follows-incoming', ([('a','card')],[],{'a':N})), [])\ncheck('render-order-follows-incoming scenario 6', solve('render-order-follows-incoming', ([('a','card')],[('a','card'),('b','card')],{'a':False})), ['a','b'])\ncheck('changed-type-state-reset scenario 1', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':2,'a':N})\ncheck('changed-type-state-reset scenario 2', solve('changed-type-state-reset', ([], [('a','card')],{})), {'a':None})\ncheck('changed-type-state-reset scenario 3', solve('changed-type-state-reset', ([('a','card')],[('a','panel')],{'a':0})), {'a':None})\ncheck('changed-type-state-reset scenario 4', solve('changed-type-state-reset', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('changed-type-state-reset scenario 5', solve('changed-type-state-reset', ([('a','card')],[],{'a':N})), {})\ncheck('changed-type-state-reset scenario 6', solve('changed-type-state-reset', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False,'b':None})\ncheck('cleanup-before-replacement-mount scenario 1', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), [])\ncheck('cleanup-before-replacement-mount scenario 2', solve('cleanup-before-replacement-mount', ([], [('a','card')],{})), [])\ncheck('cleanup-before-replacement-mount scenario 3', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','panel')],{'a':0})), [('a','cleanup'),('a','mount')])\ncheck('cleanup-before-replacement-mount scenario 4', solve('cleanup-before-replacement-mount', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), [])\ncheck('cleanup-before-replacement-mount scenario 5', solve('cleanup-before-replacement-mount', ([('a','card')],[],{'a':N})), [])\ncheck('cleanup-before-replacement-mount scenario 6', solve('cleanup-before-replacement-mount', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('removed-state-pruning scenario 1', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'a':N,'b':2})\ncheck('removed-state-pruning scenario 2', solve('removed-state-pruning', ([], [('a','card')],{})), {})\ncheck('removed-state-pruning scenario 3', solve('removed-state-pruning', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('removed-state-pruning scenario 4', solve('removed-state-pruning', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':None})\ncheck('removed-state-pruning scenario 5', solve('removed-state-pruning', ([('a','card')],[],{'a':N})), {})\ncheck('removed-state-pruning scenario 6', solve('removed-state-pruning', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':False})\ncheck('insertion-position scenario 1', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), {'b':0,'a':1})\ncheck('insertion-position scenario 2', solve('insertion-position', ([], [('a','card')],{})), {'a':0})\ncheck('insertion-position scenario 3', solve('insertion-position', ([('a','card')],[('a','panel')],{'a':0})), {'a':0})\ncheck('insertion-position scenario 4', solve('insertion-position', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), {'b':0})\ncheck('insertion-position scenario 5', solve('insertion-position', ([('a','card')],[],{'a':N})), {})\ncheck('insertion-position scenario 6', solve('insertion-position', ([('a','card')],[('a','card'),('b','card')],{'a':False})), {'a':0,'b':1})\ncheck('retained-instance-moves scenario 1', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N,'b':2})), ['b','a'])\ncheck('retained-instance-moves scenario 2', solve('retained-instance-moves', ([], [('a','card')],{})), [])\ncheck('retained-instance-moves scenario 3', solve('retained-instance-moves', ([('a','card')],[('a','panel')],{'a':0})), [])\ncheck('retained-instance-moves scenario 4', solve('retained-instance-moves', ([('a','card'),('b','panel')],[('b','panel')],{'a':1,'b':None})), ['b'])\ncheck('retained-instance-moves scenario 5', solve('retained-instance-moves', ([('a','card')],[],{'a':N})), [])\ncheck('retained-instance-moves scenario 6', solve('retained-instance-moves', ([('a','card')],[('a','card'),('b','card')],{'a':False})), [])\ncheck('reordering distinct state values for every seed: type-and-key-reuse', solve('type-and-key-reuse', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: new-instance-mounts', solve('new-instance-mounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: old-instance-unmounts', solve('old-instance-unmounts', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: state-follows-key-through-reorder', solve('state-follows-key-through-reorder', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [2,N+10])\ncheck('reordering distinct state values for every seed: render-order-follows-incoming', solve('render-order-follows-incoming', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\ncheck('reordering distinct state values for every seed: changed-type-state-reset', solve('changed-type-state-reset', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':2,'a':N+10})\ncheck('reordering distinct state values for every seed: cleanup-before-replacement-mount', solve('cleanup-before-replacement-mount', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), [])\ncheck('reordering distinct state values for every seed: removed-state-pruning', solve('removed-state-pruning', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'a':N+10,'b':2})\ncheck('reordering distinct state values for every seed: insertion-position', solve('insertion-position', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), {'b':0,'a':1})\ncheck('reordering distinct state values for every seed: retained-instance-moves', solve('retained-instance-moves', ([('a','card'),('b','card')],[('b','card'),('a','card')],{'a':N+10,'b':2})), ['b','a'])\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":"Only the explicitly specified operations and finite deterministic records are modeled; no browser or framework conformance is claimed. 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-client-state-keyed-render-state-follows-key-through-reorder","generated_at":"2026-09-29T14:40:57.467680+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline client lifecycle model that isolates a state-management defect without DOM rendering or network services.","repair":"Apply the modeled state-follows-key-through-reorder rule: `[state.get(k) for k,t in incoming if (k,t) in old]`.","root_cause":"The state-follows-key-through-reorder client decision evaluates `[state.get(k) for k,t in old if (k,t) in incoming]` instead of `[state.get(k) for k,t in incoming if (k,t) in old]`.","sha256":"352e857ec93b1d39b2d7d52d126fb53b26336f2a1f87647e80aa5a0b48076110","title":"Keyed component instance reconciliation: State follows key through reorder · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":46.007,"exit_code":1,"observations":[{"actual":["b","a"],"check":"type-and-key-reuse scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 2","expected":[],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"type-and-key-reuse scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 5","expected":[],"passed":true},{"actual":["a"],"check":"type-and-key-reuse scenario 6","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 1","expected":[],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 3","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 4","expected":[],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 5","expected":[],"passed":true},{"actual":["b"],"check":"new-instance-mounts scenario 6","expected":["b"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 1","expected":[],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 2","expected":[],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 3","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 4","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 5","expected":["a"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 6","expected":[],"passed":true},{"actual":[2,1],"check":"state-follows-key-through-reorder scenario 1","expected":[2,1],"passed":true},{"actual":[null],"check":"state-follows-key-through-reorder scenario 2","expected":[],"passed":false},{"actual":[0],"check":"state-follows-key-through-reorder scenario 3","expected":[],"passed":false},{"actual":[null],"check":"state-follows-key-through-reorder scenario 4","expected":[null],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 5","expected":[],"passed":true},{"actual":[false,null],"check":"state-follows-key-through-reorder scenario 6","expected":[false],"passed":false},{"actual":["b","a"],"check":"render-order-follows-incoming scenario 1","expected":["b","a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 3","expected":["a"],"passed":true},{"actual":["b"],"check":"render-order-follows-incoming scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"render-order-follows-incoming scenario 5","expected":[],"passed":true},{"actual":["a","b"],"check":"render-order-follows-incoming scenario 6","expected":["a","b"],"passed":true},{"actual":{"a":1,"b":2},"check":"changed-type-state-reset scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 2","expected":{"a":null},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 3","expected":{"a":null},"passed":true},{"actual":{"b":null},"check":"changed-type-state-reset scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"changed-type-state-reset scenario 5","expected":{},"passed":true},{"actual":{"a":false,"b":null},"check":"changed-type-state-reset scenario 6","expected":{"a":false,"b":null},"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 1","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 2","expected":[],"passed":true},{"actual":[["a","cleanup"],["a","mount"]],"check":"cleanup-before-replacement-mount scenario 3","expected":[["a","cleanup"],["a","mount"]],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 4","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 5","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 6","expected":[],"passed":true},{"actual":{"a":1,"b":2},"check":"removed-state-pruning scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 2","expected":{},"passed":true},{"actual":{"a":0},"check":"removed-state-pruning scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":null},"check":"removed-state-pruning scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 5","expected":{},"passed":true},{"actual":{"a":false},"check":"removed-state-pruning scenario 6","expected":{"a":false},"passed":true},{"actual":{"a":1,"b":0},"check":"insertion-position scenario 1","expected":{"a":1,"b":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 2","expected":{"a":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":0},"check":"insertion-position scenario 4","expected":{"b":0},"passed":true},{"actual":{},"check":"insertion-position scenario 5","expected":{},"passed":true},{"actual":{"a":0,"b":1},"check":"insertion-position scenario 6","expected":{"a":0,"b":1},"passed":true},{"actual":["b","a"],"check":"retained-instance-moves scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 2","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"retained-instance-moves scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 5","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 6","expected":[],"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: type-and-key-reuse","expected":["b","a"],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: new-instance-mounts","expected":[],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: old-instance-unmounts","expected":[],"passed":true},{"actual":[2,11],"check":"reordering distinct state values for every seed: state-follows-key-through-reorder","expected":[2,11],"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: render-order-follows-incoming","expected":["b","a"],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: changed-type-state-reset","expected":{"a":11,"b":2},"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: cleanup-before-replacement-mount","expected":[],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: removed-state-pruning","expected":{"a":11,"b":2},"passed":true},{"actual":{"a":1,"b":0},"check":"reordering distinct state values for every seed: insertion-position","expected":{"a":1,"b":0},"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: retained-instance-moves","expected":["b","a"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"type-and-key-reuse scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 6\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 6\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 4\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 5\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 1\", \"actual\": [2, 1], \"expected\": [2, 1], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 2\", \"actual\": [null], \"expected\": [], \"passed\": false}, {\"check\": \"state-follows-key-through-reorder scenario 3\", \"actual\": [0], \"expected\": [], \"passed\": false}, {\"check\": \"state-follows-key-through-reorder scenario 4\", \"actual\": [null], \"expected\": [null], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 6\", \"actual\": [false, null], \"expected\": [false], \"passed\": false}, {\"check\": \"render-order-follows-incoming scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 6\", \"actual\": [\"a\", \"b\"], \"expected\": [\"a\", \"b\"], \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 1\", \"actual\": {\"b\": 2, \"a\": 1}, \"expected\": {\"b\": 2, \"a\": 1}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 2\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 3\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 6\", \"actual\": {\"a\": false, \"b\": null}, \"expected\": {\"a\": false, \"b\": null}, \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 3\", \"actual\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"expected\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"removed-state-pruning scenario 1\", \"actual\": {\"a\": 1, \"b\": 2}, \"expected\": {\"a\": 1, \"b\": 2}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 2\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 6\", \"actual\": {\"a\": false}, \"expected\": {\"a\": false}, \"passed\": true}, {\"check\": \"insertion-position scenario 1\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"insertion-position scenario 2\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 4\", \"actual\": {\"b\": 0}, \"expected\": {\"b\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"insertion-position scenario 6\", \"actual\": {\"a\": 0, \"b\": 1}, \"expected\": {\"a\": 0, \"b\": 1}, \"passed\": true}, {\"check\": \"retained-instance-moves scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: type-and-key-reuse\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: new-instance-mounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: old-instance-unmounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: state-follows-key-through-reorder\", \"actual\": [2, 11], \"expected\": [2, 11], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: render-order-follows-incoming\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: changed-type-state-reset\", \"actual\": {\"b\": 2, \"a\": 11}, \"expected\": {\"b\": 2, \"a\": 11}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: cleanup-before-replacement-mount\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: removed-state-pruning\", \"actual\": {\"a\": 11, \"b\": 2}, \"expected\": {\"a\": 11, \"b\": 2}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: insertion-position\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: retained-instance-moves\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":48.333,"exit_code":1,"observations":[{"actual":["b","a"],"check":"type-and-key-reuse scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 2","expected":[],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"type-and-key-reuse scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 5","expected":[],"passed":true},{"actual":["a"],"check":"type-and-key-reuse scenario 6","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 1","expected":[],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 3","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 4","expected":[],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 5","expected":[],"passed":true},{"actual":["b"],"check":"new-instance-mounts scenario 6","expected":["b"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 1","expected":[],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 2","expected":[],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 3","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 4","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 5","expected":["a"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 6","expected":[],"passed":true},{"actual":[1,2],"check":"state-follows-key-through-reorder scenario 1","expected":[2,1],"passed":false},{"actual":[],"check":"state-follows-key-through-reorder scenario 2","expected":[],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 3","expected":[],"passed":true},{"actual":[null],"check":"state-follows-key-through-reorder scenario 4","expected":[null],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 5","expected":[],"passed":true},{"actual":[false],"check":"state-follows-key-through-reorder scenario 6","expected":[false],"passed":true},{"actual":["b","a"],"check":"render-order-follows-incoming scenario 1","expected":["b","a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 3","expected":["a"],"passed":true},{"actual":["b"],"check":"render-order-follows-incoming scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"render-order-follows-incoming scenario 5","expected":[],"passed":true},{"actual":["a","b"],"check":"render-order-follows-incoming scenario 6","expected":["a","b"],"passed":true},{"actual":{"a":1,"b":2},"check":"changed-type-state-reset scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 2","expected":{"a":null},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 3","expected":{"a":null},"passed":true},{"actual":{"b":null},"check":"changed-type-state-reset scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"changed-type-state-reset scenario 5","expected":{},"passed":true},{"actual":{"a":false,"b":null},"check":"changed-type-state-reset scenario 6","expected":{"a":false,"b":null},"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 1","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 2","expected":[],"passed":true},{"actual":[["a","cleanup"],["a","mount"]],"check":"cleanup-before-replacement-mount scenario 3","expected":[["a","cleanup"],["a","mount"]],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 4","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 5","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 6","expected":[],"passed":true},{"actual":{"a":1,"b":2},"check":"removed-state-pruning scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 2","expected":{},"passed":true},{"actual":{"a":0},"check":"removed-state-pruning scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":null},"check":"removed-state-pruning scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 5","expected":{},"passed":true},{"actual":{"a":false},"check":"removed-state-pruning scenario 6","expected":{"a":false},"passed":true},{"actual":{"a":1,"b":0},"check":"insertion-position scenario 1","expected":{"a":1,"b":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 2","expected":{"a":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":0},"check":"insertion-position scenario 4","expected":{"b":0},"passed":true},{"actual":{},"check":"insertion-position scenario 5","expected":{},"passed":true},{"actual":{"a":0,"b":1},"check":"insertion-position scenario 6","expected":{"a":0,"b":1},"passed":true},{"actual":["b","a"],"check":"retained-instance-moves scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 2","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"retained-instance-moves scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 5","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 6","expected":[],"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: type-and-key-reuse","expected":["b","a"],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: new-instance-mounts","expected":[],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: old-instance-unmounts","expected":[],"passed":true},{"actual":[11,2],"check":"reordering distinct state values for every seed: state-follows-key-through-reorder","expected":[2,11],"passed":false},{"actual":["b","a"],"check":"reordering distinct state values for every seed: render-order-follows-incoming","expected":["b","a"],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: changed-type-state-reset","expected":{"a":11,"b":2},"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: cleanup-before-replacement-mount","expected":[],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: removed-state-pruning","expected":{"a":11,"b":2},"passed":true},{"actual":{"a":1,"b":0},"check":"reordering distinct state values for every seed: insertion-position","expected":{"a":1,"b":0},"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: retained-instance-moves","expected":["b","a"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"type-and-key-reuse scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 6\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 6\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 4\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 5\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 1\", \"actual\": [1, 2], \"expected\": [2, 1], \"passed\": false}, {\"check\": \"state-follows-key-through-reorder scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 4\", \"actual\": [null], \"expected\": [null], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 6\", \"actual\": [false], \"expected\": [false], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 6\", \"actual\": [\"a\", \"b\"], \"expected\": [\"a\", \"b\"], \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 1\", \"actual\": {\"b\": 2, \"a\": 1}, \"expected\": {\"b\": 2, \"a\": 1}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 2\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 3\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 6\", \"actual\": {\"a\": false, \"b\": null}, \"expected\": {\"a\": false, \"b\": null}, \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 3\", \"actual\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"expected\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"removed-state-pruning scenario 1\", \"actual\": {\"a\": 1, \"b\": 2}, \"expected\": {\"a\": 1, \"b\": 2}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 2\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 6\", \"actual\": {\"a\": false}, \"expected\": {\"a\": false}, \"passed\": true}, {\"check\": \"insertion-position scenario 1\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"insertion-position scenario 2\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 4\", \"actual\": {\"b\": 0}, \"expected\": {\"b\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"insertion-position scenario 6\", \"actual\": {\"a\": 0, \"b\": 1}, \"expected\": {\"a\": 0, \"b\": 1}, \"passed\": true}, {\"check\": \"retained-instance-moves scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: type-and-key-reuse\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: new-instance-mounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: old-instance-unmounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: state-follows-key-through-reorder\", \"actual\": [11, 2], \"expected\": [2, 11], \"passed\": false}, {\"check\": \"reordering distinct state values for every seed: render-order-follows-incoming\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: changed-type-state-reset\", \"actual\": {\"b\": 2, \"a\": 11}, \"expected\": {\"b\": 2, \"a\": 11}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: cleanup-before-replacement-mount\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: removed-state-pruning\", \"actual\": {\"a\": 11, \"b\": 2}, \"expected\": {\"a\": 11, \"b\": 2}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: insertion-position\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: retained-instance-moves\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":43.4,"exit_code":0,"observations":[{"actual":["b","a"],"check":"type-and-key-reuse scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 2","expected":[],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"type-and-key-reuse scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"type-and-key-reuse scenario 5","expected":[],"passed":true},{"actual":["a"],"check":"type-and-key-reuse scenario 6","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 1","expected":[],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"new-instance-mounts scenario 3","expected":["a"],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 4","expected":[],"passed":true},{"actual":[],"check":"new-instance-mounts scenario 5","expected":[],"passed":true},{"actual":["b"],"check":"new-instance-mounts scenario 6","expected":["b"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 1","expected":[],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 2","expected":[],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 3","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 4","expected":["a"],"passed":true},{"actual":["a"],"check":"old-instance-unmounts scenario 5","expected":["a"],"passed":true},{"actual":[],"check":"old-instance-unmounts scenario 6","expected":[],"passed":true},{"actual":[2,1],"check":"state-follows-key-through-reorder scenario 1","expected":[2,1],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 2","expected":[],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 3","expected":[],"passed":true},{"actual":[null],"check":"state-follows-key-through-reorder scenario 4","expected":[null],"passed":true},{"actual":[],"check":"state-follows-key-through-reorder scenario 5","expected":[],"passed":true},{"actual":[false],"check":"state-follows-key-through-reorder scenario 6","expected":[false],"passed":true},{"actual":["b","a"],"check":"render-order-follows-incoming scenario 1","expected":["b","a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 2","expected":["a"],"passed":true},{"actual":["a"],"check":"render-order-follows-incoming scenario 3","expected":["a"],"passed":true},{"actual":["b"],"check":"render-order-follows-incoming scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"render-order-follows-incoming scenario 5","expected":[],"passed":true},{"actual":["a","b"],"check":"render-order-follows-incoming scenario 6","expected":["a","b"],"passed":true},{"actual":{"a":1,"b":2},"check":"changed-type-state-reset scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 2","expected":{"a":null},"passed":true},{"actual":{"a":null},"check":"changed-type-state-reset scenario 3","expected":{"a":null},"passed":true},{"actual":{"b":null},"check":"changed-type-state-reset scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"changed-type-state-reset scenario 5","expected":{},"passed":true},{"actual":{"a":false,"b":null},"check":"changed-type-state-reset scenario 6","expected":{"a":false,"b":null},"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 1","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 2","expected":[],"passed":true},{"actual":[["a","cleanup"],["a","mount"]],"check":"cleanup-before-replacement-mount scenario 3","expected":[["a","cleanup"],["a","mount"]],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 4","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 5","expected":[],"passed":true},{"actual":[],"check":"cleanup-before-replacement-mount scenario 6","expected":[],"passed":true},{"actual":{"a":1,"b":2},"check":"removed-state-pruning scenario 1","expected":{"a":1,"b":2},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 2","expected":{},"passed":true},{"actual":{"a":0},"check":"removed-state-pruning scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":null},"check":"removed-state-pruning scenario 4","expected":{"b":null},"passed":true},{"actual":{},"check":"removed-state-pruning scenario 5","expected":{},"passed":true},{"actual":{"a":false},"check":"removed-state-pruning scenario 6","expected":{"a":false},"passed":true},{"actual":{"a":1,"b":0},"check":"insertion-position scenario 1","expected":{"a":1,"b":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 2","expected":{"a":0},"passed":true},{"actual":{"a":0},"check":"insertion-position scenario 3","expected":{"a":0},"passed":true},{"actual":{"b":0},"check":"insertion-position scenario 4","expected":{"b":0},"passed":true},{"actual":{},"check":"insertion-position scenario 5","expected":{},"passed":true},{"actual":{"a":0,"b":1},"check":"insertion-position scenario 6","expected":{"a":0,"b":1},"passed":true},{"actual":["b","a"],"check":"retained-instance-moves scenario 1","expected":["b","a"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 2","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 3","expected":[],"passed":true},{"actual":["b"],"check":"retained-instance-moves scenario 4","expected":["b"],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 5","expected":[],"passed":true},{"actual":[],"check":"retained-instance-moves scenario 6","expected":[],"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: type-and-key-reuse","expected":["b","a"],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: new-instance-mounts","expected":[],"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: old-instance-unmounts","expected":[],"passed":true},{"actual":[2,11],"check":"reordering distinct state values for every seed: state-follows-key-through-reorder","expected":[2,11],"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: render-order-follows-incoming","expected":["b","a"],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: changed-type-state-reset","expected":{"a":11,"b":2},"passed":true},{"actual":[],"check":"reordering distinct state values for every seed: cleanup-before-replacement-mount","expected":[],"passed":true},{"actual":{"a":11,"b":2},"check":"reordering distinct state values for every seed: removed-state-pruning","expected":{"a":11,"b":2},"passed":true},{"actual":{"a":1,"b":0},"check":"reordering distinct state values for every seed: insertion-position","expected":{"a":1,"b":0},"passed":true},{"actual":["b","a"],"check":"reordering distinct state values for every seed: retained-instance-moves","expected":["b","a"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"type-and-key-reuse scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"type-and-key-reuse scenario 6\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"new-instance-mounts scenario 6\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 4\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 5\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"old-instance-unmounts scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 1\", \"actual\": [2, 1], \"expected\": [2, 1], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 4\", \"actual\": [null], \"expected\": [null], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"state-follows-key-through-reorder scenario 6\", \"actual\": [false], \"expected\": [false], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 2\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 3\", \"actual\": [\"a\"], \"expected\": [\"a\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"render-order-follows-incoming scenario 6\", \"actual\": [\"a\", \"b\"], \"expected\": [\"a\", \"b\"], \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 1\", \"actual\": {\"b\": 2, \"a\": 1}, \"expected\": {\"b\": 2, \"a\": 1}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 2\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 3\", \"actual\": {\"a\": null}, \"expected\": {\"a\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"changed-type-state-reset scenario 6\", \"actual\": {\"a\": false, \"b\": null}, \"expected\": {\"a\": false, \"b\": null}, \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 3\", \"actual\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"expected\": [[\"a\", \"cleanup\"], [\"a\", \"mount\"]], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 4\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"cleanup-before-replacement-mount scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"removed-state-pruning scenario 1\", \"actual\": {\"a\": 1, \"b\": 2}, \"expected\": {\"a\": 1, \"b\": 2}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 2\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 4\", \"actual\": {\"b\": null}, \"expected\": {\"b\": null}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"removed-state-pruning scenario 6\", \"actual\": {\"a\": false}, \"expected\": {\"a\": false}, \"passed\": true}, {\"check\": \"insertion-position scenario 1\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"insertion-position scenario 2\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 3\", \"actual\": {\"a\": 0}, \"expected\": {\"a\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 4\", \"actual\": {\"b\": 0}, \"expected\": {\"b\": 0}, \"passed\": true}, {\"check\": \"insertion-position scenario 5\", \"actual\": {}, \"expected\": {}, \"passed\": true}, {\"check\": \"insertion-position scenario 6\", \"actual\": {\"a\": 0, \"b\": 1}, \"expected\": {\"a\": 0, \"b\": 1}, \"passed\": true}, {\"check\": \"retained-instance-moves scenario 1\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 2\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 4\", \"actual\": [\"b\"], \"expected\": [\"b\"], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 5\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"retained-instance-moves scenario 6\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: type-and-key-reuse\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: new-instance-mounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: old-instance-unmounts\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: state-follows-key-through-reorder\", \"actual\": [2, 11], \"expected\": [2, 11], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: render-order-follows-incoming\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: changed-type-state-reset\", \"actual\": {\"b\": 2, \"a\": 11}, \"expected\": {\"b\": 2, \"a\": 11}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: cleanup-before-replacement-mount\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: removed-state-pruning\", \"actual\": {\"a\": 11, \"b\": 2}, \"expected\": {\"a\": 11, \"b\": 2}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: insertion-position\", \"actual\": {\"b\": 0, \"a\": 1}, \"expected\": {\"b\": 0, \"a\": 1}, \"passed\": true}, {\"check\": \"reordering distinct state values for every seed: retained-instance-moves\", \"actual\": [\"b\", \"a\"], \"expected\": [\"b\", \"a\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}