{"abstract":"The announcement trace violates the stated priority-inheritance contract.","category":"Assistive announcements","checks":7,"contract":"Messages belong to groups. Set group priority affects future selection, not stored base. Enqueue [id,group,base,text]. Group floor combines with base using max. Drain picks largest effective priority, then earliest position; repeat drains remove only winner. Drop-group removes its messages and floor. Move changes only a message group. Reset-floor removes inheritance but retains messages. Report spoken IDs and pending [id,group].","evaluation_group":"s3-announcement-priority-inheritance","failed_approach":"The attempted repair substitutes if e[0]=='floor': floors.setdefault(e[1],e[2]) and still violates a regression oracle.","family":"s3-assistive-announcements-priority-inheritance-floor-replace","id":"FA-20741","implementations":{"attempt":{"sha256":"754f09f375d63cac1c3459dd9622afffce655fa182af99c6ee4a1181ffa81ce9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    floors={}; q=[]; spoken=[]\n    for e in events:\n        if e[0]=='floor': floors.setdefault(e[1],e[2])\n        elif e[0]=='enqueue': q.append(e[1:])\n        elif e[0]=='drop':\n            q=[x for x in q if x[1]!=e[1]]\n            floors.pop(e[1],None)\n        elif e[0]=='move':\n            for x in q:\n                if x[0]==e[1]: x[1]=e[2]\n        elif e[0]=='reset': floors.pop(e[1],None)\n        elif e[0]=='drain' and q:\n            scores=[max(x[2],floors.get(x[1],0)) for x in q]\n            index=scores.index(max(scores))\n            chosen=q.pop(index)\n            spoken.append([chosen[0],chosen[3]])\n    return [spoken,[x[:2] for x in q],sorted(floors.items())]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['floor','g',4],['enqueue','a','g',N+1,'alpha'],['enqueue','b','h',6,'beta'],['drain'],['drain']]\", \"[['enqueue','a','g',1,'first'*N],['enqueue','b','g',1,'second'],['drain']]\", \"[['floor','g',9],['floor','g',1],['enqueue','a','g',2,'a'*N],['enqueue','b','h',3,'b'],['drain']]\", \"[['floor','g',9],['floor','h',3],['enqueue','a','g',1,'x'*N],['enqueue','foreign','h',2,'foreign'],['drop','g'],['enqueue','b','g',1,'new'],['enqueue','c','h',2,'keep'],['drain']]\", \"[['floor','g',9],['floor','h',4],['enqueue','a','g',1,'a'*N],['enqueue','b','h',2,'b'],['move','a','h'],['reset','g'],['drain']]\", '[]', \"[['floor','g',2],['enqueue','a','g',8,'a'*N],['enqueue','b','h',7,'b'],['drain']]\"]\nexpected = {1: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'first']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'a']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'a']], [['b', 'h']], [('g', 2)]]], 2: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aa']], [['b', 'h']], [('g', 2)]]], 3: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaa']], [['b', 'h']], [('g', 2)]]], 4: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaa']], [['b', 'h']], [('g', 2)]]], 5: [[[['a', 'alpha'], ['b', 'beta']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaaa']], [['b', 'h']], [('g', 2)]]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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":"97b97eb9f511a0c8e572fe0e706678a466d169ee9c715188639719d2f15e2f54","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    floors={}; q=[]; spoken=[]\n    for e in events:\n        if e[0]=='floor': floors[e[1]]=max(floors.get(e[1],0),e[2])\n        elif e[0]=='enqueue': q.append(e[1:])\n        elif e[0]=='drop':\n            q=[x for x in q if x[1]!=e[1]]\n            floors.pop(e[1],None)\n        elif e[0]=='move':\n            for x in q:\n                if x[0]==e[1]: x[1]=e[2]\n        elif e[0]=='reset': floors.pop(e[1],None)\n        elif e[0]=='drain' and q:\n            scores=[max(x[2],floors.get(x[1],0)) for x in q]\n            index=scores.index(max(scores))\n            chosen=q.pop(index)\n            spoken.append([chosen[0],chosen[3]])\n    return [spoken,[x[:2] for x in q],sorted(floors.items())]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['floor','g',4],['enqueue','a','g',N+1,'alpha'],['enqueue','b','h',6,'beta'],['drain'],['drain']]\", \"[['enqueue','a','g',1,'first'*N],['enqueue','b','g',1,'second'],['drain']]\", \"[['floor','g',9],['floor','g',1],['enqueue','a','g',2,'a'*N],['enqueue','b','h',3,'b'],['drain']]\", \"[['floor','g',9],['floor','h',3],['enqueue','a','g',1,'x'*N],['enqueue','foreign','h',2,'foreign'],['drop','g'],['enqueue','b','g',1,'new'],['enqueue','c','h',2,'keep'],['drain']]\", \"[['floor','g',9],['floor','h',4],['enqueue','a','g',1,'a'*N],['enqueue','b','h',2,'b'],['move','a','h'],['reset','g'],['drain']]\", '[]', \"[['floor','g',2],['enqueue','a','g',8,'a'*N],['enqueue','b','h',7,'b'],['drain']]\"]\nexpected = {1: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'first']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'a']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'a']], [['b', 'h']], [('g', 2)]]], 2: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aa']], [['b', 'h']], [('g', 2)]]], 3: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaa']], [['b', 'h']], [('g', 2)]]], 4: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaa']], [['b', 'h']], [('g', 2)]]], 5: [[[['a', 'alpha'], ['b', 'beta']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaaa']], [['b', 'h']], [('g', 2)]]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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":"0b045e13fca29327f27f5052e457874caaaa9dba403999216ff46892f52904b2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    floors={}; q=[]; spoken=[]\n    for e in events:\n        if e[0]=='floor': floors[e[1]]=e[2]\n        elif e[0]=='enqueue': q.append(e[1:])\n        elif e[0]=='drop':\n            q=[x for x in q if x[1]!=e[1]]\n            floors.pop(e[1],None)\n        elif e[0]=='move':\n            for x in q:\n                if x[0]==e[1]: x[1]=e[2]\n        elif e[0]=='reset': floors.pop(e[1],None)\n        elif e[0]=='drain' and q:\n            scores=[max(x[2],floors.get(x[1],0)) for x in q]\n            index=scores.index(max(scores))\n            chosen=q.pop(index)\n            spoken.append([chosen[0],chosen[3]])\n    return [spoken,[x[:2] for x in q],sorted(floors.items())]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['floor','g',4],['enqueue','a','g',N+1,'alpha'],['enqueue','b','h',6,'beta'],['drain'],['drain']]\", \"[['enqueue','a','g',1,'first'*N],['enqueue','b','g',1,'second'],['drain']]\", \"[['floor','g',9],['floor','g',1],['enqueue','a','g',2,'a'*N],['enqueue','b','h',3,'b'],['drain']]\", \"[['floor','g',9],['floor','h',3],['enqueue','a','g',1,'x'*N],['enqueue','foreign','h',2,'foreign'],['drop','g'],['enqueue','b','g',1,'new'],['enqueue','c','h',2,'keep'],['drain']]\", \"[['floor','g',9],['floor','h',4],['enqueue','a','g',1,'a'*N],['enqueue','b','h',2,'b'],['move','a','h'],['reset','g'],['drain']]\", '[]', \"[['floor','g',2],['enqueue','a','g',8,'a'*N],['enqueue','b','h',7,'b'],['drain']]\"]\nexpected = {1: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'first']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'a']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'a']], [['b', 'h']], [('g', 2)]]], 2: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aa']], [['b', 'h']], [('g', 2)]]], 3: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaa']], [['b', 'h']], [('g', 2)]]], 4: [[[['b', 'beta'], ['a', 'alpha']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaa']], [['b', 'h']], [('g', 2)]]], 5: [[[['a', 'alpha'], ['b', 'beta']], [], [('g', 4)]], [[['a', 'firstfirstfirstfirstfirst']], [['b', 'g']], []], [[['b', 'b']], [['a', 'g']], [('g', 1)]], [[['foreign', 'foreign']], [['b', 'g'], ['c', 'h']], [('h', 3)]], [[['a', 'aaaaa']], [['b', 'h']], [('h', 4)]], [[], [], []], [[['a', 'aaaaa']], [['b', 'h']], [('g', 2)]]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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":"Stipulated bounded policy, not a browser, speech engine, platform API, or standards conformance claim. 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-assistive-announcements-priority-inheritance-floor-replace","generated_at":"2026-09-29T14:40:21.924325+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Deterministic controlled model of assistive announcement delivery.","repair":"Restore the stated transition: if e[0]=='floor': floors[e[1]]=e[2]","root_cause":"Fault site: if e[0]=='floor': floors[e[1]]=e[2] is implemented as if e[0]=='floor': floors[e[1]]=max(floors.get(e[1],0),e[2])","sha256":"872cefe185af33655976c02a2ac10b90be2df567fdeb5b3cfc1db693960e35ae","title":"Lowered group urgency retains the earlier high floor · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.111,"exit_code":1,"observations":[{"actual":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"check":"trace-1","expected":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"passed":true},{"actual":[[["a","first"]],[["b","g"]],[]],"check":"trace-2","expected":[[["a","first"]],[["b","g"]],[]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["g",9]]],"check":"trace-3","expected":[[["b","b"]],[["a","g"]],[["g",1]]],"passed":false},{"actual":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"check":"trace-4","expected":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["h",4]]],"check":"trace-5","expected":[[["a","a"]],[["b","h"]],[["h",4]]],"passed":true},{"actual":[[],[],[]],"check":"trace-6","expected":[[],[],[]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["g",2]]],"check":"trace-7","expected":[[["a","a"]],[["b","h"]],[["g",2]]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"expected\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"expected\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 9]]], \"expected\": [[[\"b\", \"b\"]], [[\"a\", \"g\"]], [[\"g\", 1]]], \"passed\": false}, {\"check\": \"trace-4\", \"actual\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"expected\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"passed\": true}, {\"check\": \"trace-5\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [], []], \"expected\": [[], [], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.408,"exit_code":1,"observations":[{"actual":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"check":"trace-1","expected":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"passed":true},{"actual":[[["a","first"]],[["b","g"]],[]],"check":"trace-2","expected":[[["a","first"]],[["b","g"]],[]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["g",9]]],"check":"trace-3","expected":[[["b","b"]],[["a","g"]],[["g",1]]],"passed":false},{"actual":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"check":"trace-4","expected":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["h",4]]],"check":"trace-5","expected":[[["a","a"]],[["b","h"]],[["h",4]]],"passed":true},{"actual":[[],[],[]],"check":"trace-6","expected":[[],[],[]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["g",2]]],"check":"trace-7","expected":[[["a","a"]],[["b","h"]],[["g",2]]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"expected\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"expected\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 9]]], \"expected\": [[[\"b\", \"b\"]], [[\"a\", \"g\"]], [[\"g\", 1]]], \"passed\": false}, {\"check\": \"trace-4\", \"actual\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"expected\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"passed\": true}, {\"check\": \"trace-5\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [], []], \"expected\": [[], [], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.042,"exit_code":0,"observations":[{"actual":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"check":"trace-1","expected":[[["b","beta"],["a","alpha"]],[],[["g",4]]],"passed":true},{"actual":[[["a","first"]],[["b","g"]],[]],"check":"trace-2","expected":[[["a","first"]],[["b","g"]],[]],"passed":true},{"actual":[[["b","b"]],[["a","g"]],[["g",1]]],"check":"trace-3","expected":[[["b","b"]],[["a","g"]],[["g",1]]],"passed":true},{"actual":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"check":"trace-4","expected":[[["foreign","foreign"]],[["b","g"],["c","h"]],[["h",3]]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["h",4]]],"check":"trace-5","expected":[[["a","a"]],[["b","h"]],[["h",4]]],"passed":true},{"actual":[[],[],[]],"check":"trace-6","expected":[[],[],[]],"passed":true},{"actual":[[["a","a"]],[["b","h"]],[["g",2]]],"check":"trace-7","expected":[[["a","a"]],[["b","h"]],[["g",2]]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"expected\": [[[\"b\", \"beta\"], [\"a\", \"alpha\"]], [], [[\"g\", 4]]], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"expected\": [[[\"a\", \"first\"]], [[\"b\", \"g\"]], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"b\", \"b\"]], [[\"a\", \"g\"]], [[\"g\", 1]]], \"expected\": [[[\"b\", \"b\"]], [[\"a\", \"g\"]], [[\"g\", 1]]], \"passed\": true}, {\"check\": \"trace-4\", \"actual\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"expected\": [[[\"foreign\", \"foreign\"]], [[\"b\", \"g\"], [\"c\", \"h\"]], [[\"h\", 3]]], \"passed\": true}, {\"check\": \"trace-5\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"h\", 4]]], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [], []], \"expected\": [[], [], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"expected\": [[[\"a\", \"a\"]], [[\"b\", \"h\"]], [[\"g\", 2]]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}