{"abstract":"Apply a configured redirect query transformation without changing retained value order: the addition cardinality branch emits an incorrect decision.","category":"HTTP redirects","checks":7,"contract":"Apply a configured redirect query transformation without changing retained value order. The explicit fixture inputs and outputs define a bounded offline policy; request identity must accompany the decision.","evaluation_group":"s3-http-redirects-query-policy-transform","failed_approach":"The partial repair uses 'len(pairs)' and still fails an explicit boundary or control.","family":"s3-http-redirects-query-policy-transform-addition-cardinality","id":"FA-28726","implementations":{"attempt":{"sha256":"02c6b53b511653ef4b7da6faffd471c56cc7a1892bea7596ec6bc9b2f643d818","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom urllib.parse import urlsplit, unquote, quote\nimport posixpath\nimport re\nN = 1\nobservations = []\ndef solve(request, pairs, removed, additions, replace, anchor):\n    return {'request': request, 'decision': [[p for p in pairs if p[0] not in removed], pairs+additions, ([p for p in pairs if p[0] not in {a[0] for a in additions}] if replace else pairs)+additions, [p[0] if p[1] is None else p[0]+'='+p[1] for p in pairs], '' if anchor is None else '#'+anchor, [p[0] for p in pairs], [p for p in pairs if p[1] is not None], len(pairs), [x for x in removed if x not in {p[0] for p in pairs}], '?' if pairs or additions else '']} \ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve('/requests/' + str(N) + '/0', [['a', '1'], ['b', '2'], ['a', '3']], ['b'], [['a', '4']], False, 'section'), {'request': '/requests/' + str(N) + '/0', 'decision': [[['a', '1'], ['a', '3']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], ['a=1', 'b=2', 'a=3'], '#section', ['a', 'b', 'a'], [['a', '1'], ['b', '2'], ['a', '3']], 1, [], '?']})\ncheck('fixture 2', solve('/requests/' + str(N) + '/1', [['a', '1'], ['a', '2']], [], [['a', '3']], True, ''), {'request': '/requests/' + str(N) + '/1', 'decision': [[['a', '1'], ['a', '2']], [['a', '1'], ['a', '2'], ['a', '3']], [['a', '3']], ['a=1', 'a=2'], '#', ['a', 'a'], [['a', '1'], ['a', '2']], 1, [], '?']})\ncheck('fixture 3', solve('/requests/' + str(N) + '/2', [], [], [['q', '']], False, None), {'request': '/requests/' + str(N) + '/2', 'decision': [[], [['q', '']], [['q', '']], [], '', [], [], 1, [], '?']})\ncheck('fixture 4', solve('/requests/' + str(N) + '/3', [['x', ''], ['flag', None]], ['x'], [], True, 'z'), {'request': '/requests/' + str(N) + '/3', 'decision': [[['flag', None]], [['x', ''], ['flag', None]], [['x', ''], ['flag', None]], ['x=', 'flag'], '#z', ['x', 'flag'], [['x', '']], 0, [], '?']})\ncheck('fixture 5', solve('/requests/' + str(N) + '/4', [['b', '2'], ['a', '1']], ['absent'], [['c', '3'], ['c', '4']], False, '#x'), {'request': '/requests/' + str(N) + '/4', 'decision': [[['b', '2'], ['a', '1']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], ['b=2', 'a=1'], '##x', ['b', 'a'], [['b', '2'], ['a', '1']], 2, ['absent'], '?']})\ncheck('fixture 6', solve('/requests/' + str(N) + '/5', [['a', '1']], ['a'], [['a', '2']], True, None), {'request': '/requests/' + str(N) + '/5', 'decision': [[], [['a', '1'], ['a', '2']], [['a', '2']], ['a=1'], '', ['a'], [['a', '1']], 1, [], '?']})\ncheck('fixture 7', solve('/requests/' + str(N) + '/6', [], [], [], False, None), {'request': '/requests/' + str(N) + '/6', 'decision': [[], [], [], [], '', [], [], 0, [], '']})\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":"71e53e48234b73b8c8ad1c1b1924f773e985a31a715b782df0f97945bc62aaf6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom urllib.parse import urlsplit, unquote, quote\nimport posixpath\nimport re\nN = 1\nobservations = []\ndef solve(request, pairs, removed, additions, replace, anchor):\n    return {'request': request, 'decision': [[p for p in pairs if p[0] not in removed], pairs+additions, ([p for p in pairs if p[0] not in {a[0] for a in additions}] if replace else pairs)+additions, [p[0] if p[1] is None else p[0]+'='+p[1] for p in pairs], '' if anchor is None else '#'+anchor, [p[0] for p in pairs], [p for p in pairs if p[1] is not None], len(set(p[0] for p in additions)), [x for x in removed if x not in {p[0] for p in pairs}], '?' if pairs or additions else '']} \ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve('/requests/' + str(N) + '/0', [['a', '1'], ['b', '2'], ['a', '3']], ['b'], [['a', '4']], False, 'section'), {'request': '/requests/' + str(N) + '/0', 'decision': [[['a', '1'], ['a', '3']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], ['a=1', 'b=2', 'a=3'], '#section', ['a', 'b', 'a'], [['a', '1'], ['b', '2'], ['a', '3']], 1, [], '?']})\ncheck('fixture 2', solve('/requests/' + str(N) + '/1', [['a', '1'], ['a', '2']], [], [['a', '3']], True, ''), {'request': '/requests/' + str(N) + '/1', 'decision': [[['a', '1'], ['a', '2']], [['a', '1'], ['a', '2'], ['a', '3']], [['a', '3']], ['a=1', 'a=2'], '#', ['a', 'a'], [['a', '1'], ['a', '2']], 1, [], '?']})\ncheck('fixture 3', solve('/requests/' + str(N) + '/2', [], [], [['q', '']], False, None), {'request': '/requests/' + str(N) + '/2', 'decision': [[], [['q', '']], [['q', '']], [], '', [], [], 1, [], '?']})\ncheck('fixture 4', solve('/requests/' + str(N) + '/3', [['x', ''], ['flag', None]], ['x'], [], True, 'z'), {'request': '/requests/' + str(N) + '/3', 'decision': [[['flag', None]], [['x', ''], ['flag', None]], [['x', ''], ['flag', None]], ['x=', 'flag'], '#z', ['x', 'flag'], [['x', '']], 0, [], '?']})\ncheck('fixture 5', solve('/requests/' + str(N) + '/4', [['b', '2'], ['a', '1']], ['absent'], [['c', '3'], ['c', '4']], False, '#x'), {'request': '/requests/' + str(N) + '/4', 'decision': [[['b', '2'], ['a', '1']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], ['b=2', 'a=1'], '##x', ['b', 'a'], [['b', '2'], ['a', '1']], 2, ['absent'], '?']})\ncheck('fixture 6', solve('/requests/' + str(N) + '/5', [['a', '1']], ['a'], [['a', '2']], True, None), {'request': '/requests/' + str(N) + '/5', 'decision': [[], [['a', '1'], ['a', '2']], [['a', '2']], ['a=1'], '', ['a'], [['a', '1']], 1, [], '?']})\ncheck('fixture 7', solve('/requests/' + str(N) + '/6', [], [], [], False, None), {'request': '/requests/' + str(N) + '/6', 'decision': [[], [], [], [], '', [], [], 0, [], '']})\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":"aed87be89cdccccfb65d81facdfdc388216327c16f312ff4f80570731d2340f2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom urllib.parse import urlsplit, unquote, quote\nimport posixpath\nimport re\nN = 1\nobservations = []\ndef solve(request, pairs, removed, additions, replace, anchor):\n    return {'request': request, 'decision': [[p for p in pairs if p[0] not in removed], pairs+additions, ([p for p in pairs if p[0] not in {a[0] for a in additions}] if replace else pairs)+additions, [p[0] if p[1] is None else p[0]+'='+p[1] for p in pairs], '' if anchor is None else '#'+anchor, [p[0] for p in pairs], [p for p in pairs if p[1] is not None], len(additions), [x for x in removed if x not in {p[0] for p in pairs}], '?' if pairs or additions else '']} \ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve('/requests/' + str(N) + '/0', [['a', '1'], ['b', '2'], ['a', '3']], ['b'], [['a', '4']], False, 'section'), {'request': '/requests/' + str(N) + '/0', 'decision': [[['a', '1'], ['a', '3']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], [['a', '1'], ['b', '2'], ['a', '3'], ['a', '4']], ['a=1', 'b=2', 'a=3'], '#section', ['a', 'b', 'a'], [['a', '1'], ['b', '2'], ['a', '3']], 1, [], '?']})\ncheck('fixture 2', solve('/requests/' + str(N) + '/1', [['a', '1'], ['a', '2']], [], [['a', '3']], True, ''), {'request': '/requests/' + str(N) + '/1', 'decision': [[['a', '1'], ['a', '2']], [['a', '1'], ['a', '2'], ['a', '3']], [['a', '3']], ['a=1', 'a=2'], '#', ['a', 'a'], [['a', '1'], ['a', '2']], 1, [], '?']})\ncheck('fixture 3', solve('/requests/' + str(N) + '/2', [], [], [['q', '']], False, None), {'request': '/requests/' + str(N) + '/2', 'decision': [[], [['q', '']], [['q', '']], [], '', [], [], 1, [], '?']})\ncheck('fixture 4', solve('/requests/' + str(N) + '/3', [['x', ''], ['flag', None]], ['x'], [], True, 'z'), {'request': '/requests/' + str(N) + '/3', 'decision': [[['flag', None]], [['x', ''], ['flag', None]], [['x', ''], ['flag', None]], ['x=', 'flag'], '#z', ['x', 'flag'], [['x', '']], 0, [], '?']})\ncheck('fixture 5', solve('/requests/' + str(N) + '/4', [['b', '2'], ['a', '1']], ['absent'], [['c', '3'], ['c', '4']], False, '#x'), {'request': '/requests/' + str(N) + '/4', 'decision': [[['b', '2'], ['a', '1']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], [['b', '2'], ['a', '1'], ['c', '3'], ['c', '4']], ['b=2', 'a=1'], '##x', ['b', 'a'], [['b', '2'], ['a', '1']], 2, ['absent'], '?']})\ncheck('fixture 6', solve('/requests/' + str(N) + '/5', [['a', '1']], ['a'], [['a', '2']], True, None), {'request': '/requests/' + str(N) + '/5', 'decision': [[], [['a', '1'], ['a', '2']], [['a', '2']], ['a=1'], '', ['a'], [['a', '1']], 1, [], '?']})\ncheck('fixture 7', solve('/requests/' + str(N) + '/6', [], [], [], False, None), {'request': '/requests/' + str(N) + '/6', 'decision': [[], [], [], [], '', [], [], 0, [], '']})\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 offline redirect policy, not a complete HTTP, browser, URL, cache, or security implementation. Numbered variants vary request correlation identity. 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-http-redirects-query-policy-transform-addition-cardinality","generated_at":"2026-09-29T14:41:36.459363+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Models a redirect controller decision before following a target or exposing a redirect result.","repair":"At this decision use 'len(additions)', preserving the other controller outputs.","root_cause":"The addition-cardinality decision uses 'len(set(p[0] for p in additions))'; this violates the stipulated controller policy.","sha256":"4cc50e41f7498f3af51960fc000ca0c917641675124f15ee5531dd25d0872150","title":"Apply a configured redirect query transformation without changing retained value order: addition cardinality · case 01","variant":1,"variant_policy":"N changes request correlation identity. Policy boundary fixtures are reused; numbered variants are not independent examples.","verification":{"attempt":{"elapsed_ms":41.682,"exit_code":1,"observations":[{"actual":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],3,[],"?"],"request":"/requests/1/0"},"check":"fixture 1","expected":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],1,[],"?"],"request":"/requests/1/0"},"passed":false},{"actual":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],2,[],"?"],"request":"/requests/1/1"},"check":"fixture 2","expected":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],1,[],"?"],"request":"/requests/1/1"},"passed":false},{"actual":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],0,[],"?"],"request":"/requests/1/2"},"check":"fixture 3","expected":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],1,[],"?"],"request":"/requests/1/2"},"passed":false},{"actual":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],2,[],"?"],"request":"/requests/1/3"},"check":"fixture 4","expected":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],0,[],"?"],"request":"/requests/1/3"},"passed":false},{"actual":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],2,["absent"],"?"],"request":"/requests/1/4"},"check":"fixture 5","expected":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],2,["absent"],"?"],"request":"/requests/1/4"},"passed":true},{"actual":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"check":"fixture 6","expected":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"passed":true},{"actual":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"check":"fixture 7","expected":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 3, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 1, [], \"?\"]}, \"passed\": false}, {\"check\": \"fixture 2\", \"actual\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 2, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 1, [], \"?\"]}, \"passed\": false}, {\"check\": \"fixture 3\", \"actual\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 0, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 1, [], \"?\"]}, \"passed\": false}, {\"check\": \"fixture 4\", \"actual\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 2, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 0, [], \"?\"]}, \"passed\": false}, {\"check\": \"fixture 5\", \"actual\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 2, [\"absent\"], \"?\"]}, \"expected\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 2, [\"absent\"], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 6\", \"actual\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"expected\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.87,"exit_code":1,"observations":[{"actual":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],1,[],"?"],"request":"/requests/1/0"},"check":"fixture 1","expected":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],1,[],"?"],"request":"/requests/1/0"},"passed":true},{"actual":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],1,[],"?"],"request":"/requests/1/1"},"check":"fixture 2","expected":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],1,[],"?"],"request":"/requests/1/1"},"passed":true},{"actual":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],1,[],"?"],"request":"/requests/1/2"},"check":"fixture 3","expected":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],1,[],"?"],"request":"/requests/1/2"},"passed":true},{"actual":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],0,[],"?"],"request":"/requests/1/3"},"check":"fixture 4","expected":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],0,[],"?"],"request":"/requests/1/3"},"passed":true},{"actual":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],1,["absent"],"?"],"request":"/requests/1/4"},"check":"fixture 5","expected":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],2,["absent"],"?"],"request":"/requests/1/4"},"passed":false},{"actual":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"check":"fixture 6","expected":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"passed":true},{"actual":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"check":"fixture 7","expected":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 2\", \"actual\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 3\", \"actual\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 0, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 0, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 5\", \"actual\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 1, [\"absent\"], \"?\"]}, \"expected\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 2, [\"absent\"], \"?\"]}, \"passed\": false}, {\"check\": \"fixture 6\", \"actual\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"expected\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.009,"exit_code":0,"observations":[{"actual":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],1,[],"?"],"request":"/requests/1/0"},"check":"fixture 1","expected":{"decision":[[["a","1"],["a","3"]],[["a","1"],["b","2"],["a","3"],["a","4"]],[["a","1"],["b","2"],["a","3"],["a","4"]],["a=1","b=2","a=3"],"#section",["a","b","a"],[["a","1"],["b","2"],["a","3"]],1,[],"?"],"request":"/requests/1/0"},"passed":true},{"actual":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],1,[],"?"],"request":"/requests/1/1"},"check":"fixture 2","expected":{"decision":[[["a","1"],["a","2"]],[["a","1"],["a","2"],["a","3"]],[["a","3"]],["a=1","a=2"],"#",["a","a"],[["a","1"],["a","2"]],1,[],"?"],"request":"/requests/1/1"},"passed":true},{"actual":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],1,[],"?"],"request":"/requests/1/2"},"check":"fixture 3","expected":{"decision":[[],[["q",""]],[["q",""]],[],"",[],[],1,[],"?"],"request":"/requests/1/2"},"passed":true},{"actual":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],0,[],"?"],"request":"/requests/1/3"},"check":"fixture 4","expected":{"decision":[[["flag",null]],[["x",""],["flag",null]],[["x",""],["flag",null]],["x=","flag"],"#z",["x","flag"],[["x",""]],0,[],"?"],"request":"/requests/1/3"},"passed":true},{"actual":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],2,["absent"],"?"],"request":"/requests/1/4"},"check":"fixture 5","expected":{"decision":[[["b","2"],["a","1"]],[["b","2"],["a","1"],["c","3"],["c","4"]],[["b","2"],["a","1"],["c","3"],["c","4"]],["b=2","a=1"],"##x",["b","a"],[["b","2"],["a","1"]],2,["absent"],"?"],"request":"/requests/1/4"},"passed":true},{"actual":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"check":"fixture 6","expected":{"decision":[[],[["a","1"],["a","2"]],[["a","2"]],["a=1"],"",["a"],[["a","1"]],1,[],"?"],"request":"/requests/1/5"},"passed":true},{"actual":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"check":"fixture 7","expected":{"decision":[[],[],[],[],"",[],[],0,[],""],"request":"/requests/1/6"},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/0\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"3\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"], [\"a\", \"4\"]], [\"a=1\", \"b=2\", \"a=3\"], \"#section\", [\"a\", \"b\", \"a\"], [[\"a\", \"1\"], [\"b\", \"2\"], [\"a\", \"3\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 2\", \"actual\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/1\", \"decision\": [[[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"1\"], [\"a\", \"2\"], [\"a\", \"3\"]], [[\"a\", \"3\"]], [\"a=1\", \"a=2\"], \"#\", [\"a\", \"a\"], [[\"a\", \"1\"], [\"a\", \"2\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 3\", \"actual\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/2\", \"decision\": [[], [[\"q\", \"\"]], [[\"q\", \"\"]], [], \"\", [], [], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 0, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/3\", \"decision\": [[[\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [[\"x\", \"\"], [\"flag\", null]], [\"x=\", \"flag\"], \"#z\", [\"x\", \"flag\"], [[\"x\", \"\"]], 0, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 5\", \"actual\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 2, [\"absent\"], \"?\"]}, \"expected\": {\"request\": \"/requests/1/4\", \"decision\": [[[\"b\", \"2\"], [\"a\", \"1\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [[\"b\", \"2\"], [\"a\", \"1\"], [\"c\", \"3\"], [\"c\", \"4\"]], [\"b=2\", \"a=1\"], \"##x\", [\"b\", \"a\"], [[\"b\", \"2\"], [\"a\", \"1\"]], 2, [\"absent\"], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 6\", \"actual\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"expected\": {\"request\": \"/requests/1/5\", \"decision\": [[], [[\"a\", \"1\"], [\"a\", \"2\"]], [[\"a\", \"2\"]], [\"a=1\"], \"\", [\"a\"], [[\"a\", \"1\"]], 1, [], \"?\"]}, \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"expected\": {\"request\": \"/requests/1/6\", \"decision\": [[], [], [], [], \"\", [], [], 0, [], \"\"]}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}