{"abstract":"Navigating between routes retains resource tags from the abandoned route.","category":"Client state","checks":6,"contract":"Route resource-tag adoption removes the leaving route binding, replaces the entering binding with stable deduplicated incoming tags, and preserves independently mounted route bindings.","contract_signature":"bindings, leaving, entering, incoming_tags","evaluation_group":"s3-client-state-route-resource-tags","failed_approach":"The partial repair still violates at least one explicit regression oracle.","family":"s3-client-state-route-resource-tags","id":"FA-24801","implementations":{"attempt":{"sha256":"3d95f61ce22a24dc75fd3531e8bb2b31701716a97106507af6613dba5238af8e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(bindings, leaving, entering, incoming_tags):\n    return {entering:list(dict.fromkeys(incoming_tags))}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('remove outgoing retain side route', solve({'a':['x'],'side':['s']},'a','b',['y']), {'side':['s'],'b':['y']})\ncheck('same route refresh', solve({'a':['old']},'a','a',['new']), {'a':['new']})\ncheck('new route no outgoing', solve({},'a','b',[]), {'b':[]})\ncheck('shared resource tag preserved other route', solve({'a':['x'],'side':['x']},'a','b',['x']), {'side':['x'],'b':['x']})\ncheck('duplicate incoming tags', solve({},'a','b',['x','x','y']), {'b':['x','y']})\ncheck('parameterized resource tags', solve({'old':['gone'],'side':['s']},'old','new',[str(i) for i in range(N)]), {'side':['s'],'new':[str(i) for i in range(N)]})\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":"1b4bb0619ac8c33e29a6ab9f1ad637b09fe733b8a8eac3120ce895e1630470b2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(bindings, leaving, entering, incoming_tags):\n    return {**bindings,entering:incoming_tags}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('remove outgoing retain side route', solve({'a':['x'],'side':['s']},'a','b',['y']), {'side':['s'],'b':['y']})\ncheck('same route refresh', solve({'a':['old']},'a','a',['new']), {'a':['new']})\ncheck('new route no outgoing', solve({},'a','b',[]), {'b':[]})\ncheck('shared resource tag preserved other route', solve({'a':['x'],'side':['x']},'a','b',['x']), {'side':['x'],'b':['x']})\ncheck('duplicate incoming tags', solve({},'a','b',['x','x','y']), {'b':['x','y']})\ncheck('parameterized resource tags', solve({'old':['gone'],'side':['s']},'old','new',[str(i) for i in range(N)]), {'side':['s'],'new':[str(i) for i in range(N)]})\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":"This models the stated application policy only; 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-route-resource-tags","generated_at":"2026-09-29T14:41:00.821219+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A bounded offline client-state transition with explicit lifecycle inputs.","root_cause":"The faulty implementation violates Route resource-tag adoption removes the leaving route binding, replaces the entering binding with stable deduplicated incoming tags, and preserves independently mounted route bindings.","sha256":"fdb13ff3c137891ae8eb1715a5201469f92828fc770137adb7f152ffd93c9acd","title":"Navigating between routes retains resource tags from the abandoned route · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":42.862,"exit_code":1,"observations":[{"actual":{"b":["y"]},"check":"remove outgoing retain side route","expected":{"b":["y"],"side":["s"]},"passed":false},{"actual":{"a":["new"]},"check":"same route refresh","expected":{"a":["new"]},"passed":true},{"actual":{"b":[]},"check":"new route no outgoing","expected":{"b":[]},"passed":true},{"actual":{"b":["x"]},"check":"shared resource tag preserved other route","expected":{"b":["x"],"side":["x"]},"passed":false},{"actual":{"b":["x","y"]},"check":"duplicate incoming tags","expected":{"b":["x","y"]},"passed":true},{"actual":{"new":["0"]},"check":"parameterized resource tags","expected":{"new":["0"],"side":["s"]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"remove outgoing retain side route\", \"actual\": {\"b\": [\"y\"]}, \"expected\": {\"side\": [\"s\"], \"b\": [\"y\"]}, \"passed\": false}, {\"check\": \"same route refresh\", \"actual\": {\"a\": [\"new\"]}, \"expected\": {\"a\": [\"new\"]}, \"passed\": true}, {\"check\": \"new route no outgoing\", \"actual\": {\"b\": []}, \"expected\": {\"b\": []}, \"passed\": true}, {\"check\": \"shared resource tag preserved other route\", \"actual\": {\"b\": [\"x\"]}, \"expected\": {\"side\": [\"x\"], \"b\": [\"x\"]}, \"passed\": false}, {\"check\": \"duplicate incoming tags\", \"actual\": {\"b\": [\"x\", \"y\"]}, \"expected\": {\"b\": [\"x\", \"y\"]}, \"passed\": true}, {\"check\": \"parameterized resource tags\", \"actual\": {\"new\": [\"0\"]}, \"expected\": {\"side\": [\"s\"], \"new\": [\"0\"]}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":42.555,"exit_code":1,"observations":[{"actual":{"a":["x"],"b":["y"],"side":["s"]},"check":"remove outgoing retain side route","expected":{"b":["y"],"side":["s"]},"passed":false},{"actual":{"a":["new"]},"check":"same route refresh","expected":{"a":["new"]},"passed":true},{"actual":{"b":[]},"check":"new route no outgoing","expected":{"b":[]},"passed":true},{"actual":{"a":["x"],"b":["x"],"side":["x"]},"check":"shared resource tag preserved other route","expected":{"b":["x"],"side":["x"]},"passed":false},{"actual":{"b":["x","x","y"]},"check":"duplicate incoming tags","expected":{"b":["x","y"]},"passed":false},{"actual":{"new":["0"],"old":["gone"],"side":["s"]},"check":"parameterized resource tags","expected":{"new":["0"],"side":["s"]},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"remove outgoing retain side route\", \"actual\": {\"a\": [\"x\"], \"side\": [\"s\"], \"b\": [\"y\"]}, \"expected\": {\"side\": [\"s\"], \"b\": [\"y\"]}, \"passed\": false}, {\"check\": \"same route refresh\", \"actual\": {\"a\": [\"new\"]}, \"expected\": {\"a\": [\"new\"]}, \"passed\": true}, {\"check\": \"new route no outgoing\", \"actual\": {\"b\": []}, \"expected\": {\"b\": []}, \"passed\": true}, {\"check\": \"shared resource tag preserved other route\", \"actual\": {\"a\": [\"x\"], \"side\": [\"x\"], \"b\": [\"x\"]}, \"expected\": {\"side\": [\"x\"], \"b\": [\"x\"]}, \"passed\": false}, {\"check\": \"duplicate incoming tags\", \"actual\": {\"b\": [\"x\", \"x\", \"y\"]}, \"expected\": {\"b\": [\"x\", \"y\"]}, \"passed\": false}, {\"check\": \"parameterized resource tags\", \"actual\": {\"old\": [\"gone\"], \"side\": [\"s\"], \"new\": [\"0\"]}, \"expected\": {\"side\": [\"s\"], \"new\": [\"0\"]}, \"passed\": false}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}