{"abstract":"Accepts extra positional arguments despite having no variadic positional parameter and changes the required Python-language result.","category":"Call argument binding","checks":5,"contract":"Call f(a, /, **rest), returning the positional a and the ordered [name,value] keyword pairs. A keyword named a belongs to rest. Inputs use the finite Python types shown in the fixtures. An error string denotes the specified caught exception, not an unhandled process failure.","evaluation_group":"xl-positional-name-in-varkw","failed_approach":"The alternative still fails because it lets the keyword named a overwrite the positional-only value.","family":"xl-positional-name-in-varkw-extra-position-capture","id":"FA-4921","implementations":{"attempt":{"sha256":"f90f884ad01ecfc1c26b7d81b5b0fcbb9b402ae363006ae6686b15cd04337c29","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(args, kwargs):\n    def f(a, /, **rest):\n        return [rest.get(\"a\",a),[[k,v] for k,v in rest.items()]]\n    try:\n        return f(*args, **kwargs)\n    except TypeError:\n        return \"TypeError\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('same spelling legal', solve([1], {'a': 2}), [1, [['a', 2]]])\ncheck('ordered kwargs', solve([1], {'z': 0, 'a': 3, 'b': None}), [1, [['z', 0], ['a', 3], ['b', None]]])\ncheck('no keywords', solve([None], {}), [None, []])\ncheck('keyword cannot supply positional', solve([], {'a': 2}), 'TypeError')\ncheck('too many positions', solve([1, 2], {}), 'TypeError')\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":"156cc16bf75a989e435d0a68485851e75958f954bd76909d0f4fe8f568f9fcf9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(args, kwargs):\n    def f(a, /, *tail, **rest):\n        return [a,[[k,v] for k,v in rest.items()]]\n    try:\n        return f(*args, **kwargs)\n    except TypeError:\n        return \"TypeError\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('same spelling legal', solve([1], {'a': 2}), [1, [['a', 2]]])\ncheck('ordered kwargs', solve([1], {'z': 0, 'a': 3, 'b': None}), [1, [['z', 0], ['a', 3], ['b', None]]])\ncheck('no keywords', solve([None], {}), [None, []])\ncheck('keyword cannot supply positional', solve([], {'a': 2}), 'TypeError')\ncheck('too many positions', solve([1, 2], {}), 'TypeError')\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":"ef97a8c58608fd9b26082c9be6909a0f7cf0346da7ea7de59624a23f50058912","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(args, kwargs):\n    def f(a, /, **rest):\n        return [a,[[k,v] for k,v in rest.items()]]\n    try:\n        return f(*args, **kwargs)\n    except TypeError:\n        return \"TypeError\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('same spelling legal', solve([1], {'a': 2}), [1, [['a', 2]]])\ncheck('ordered kwargs', solve([1], {'z': 0, 'a': 3, 'b': None}), [1, [['z', 0], ['a', 3], ['b', None]]])\ncheck('no keywords', solve([None], {}), [None, []])\ncheck('keyword cannot supply positional', solve([], {'a': 2}), 'TypeError')\ncheck('too many positions', solve([1, 2], {}), 'TypeError')\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 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":"xl-positional-name-in-varkw-extra-position-capture","generated_at":"2026-09-29T14:37:44.279838+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Runs Python standard-library language operations in a deterministic local reproducer. Literal expected answers are authored independently. Related defects share an evaluation group to avoid benchmark split leakage.","repair":"Call f(a, /, **rest), returning the positional a and the ordered [name,value] keyword pairs. A keyword named a belongs to rest.","root_cause":"Accepts extra positional arguments despite having no variadic positional parameter. The executable reproducer isolates this operation from the rest of the contract.","sha256":"78da88244b263492cde4d191f1e3a0ed759d9cb23a882a3f1f53ac9c881186b4","title":"Positional name in varkw: Accepts extra positional arguments despite having no variadic positional parameter · case 01","variant":1,"variant_policy":"The five numbered cases rerun the same authored boundary fixtures; they are reproducibility runs, not independent input variants.","verification":{"attempt":{"elapsed_ms":39.736,"exit_code":1,"observations":[{"actual":[2,[["a",2]]],"check":"same spelling legal","expected":[1,[["a",2]]],"passed":false},{"actual":[3,[["z",0],["a",3],["b",null]]],"check":"ordered kwargs","expected":[1,[["z",0],["a",3],["b",null]]],"passed":false},{"actual":[null,[]],"check":"no keywords","expected":[null,[]],"passed":true},{"actual":"TypeError","check":"keyword cannot supply positional","expected":"TypeError","passed":true},{"actual":"TypeError","check":"too many positions","expected":"TypeError","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same spelling legal\", \"actual\": [2, [[\"a\", 2]]], \"expected\": [1, [[\"a\", 2]]], \"passed\": false}, {\"check\": \"ordered kwargs\", \"actual\": [3, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"expected\": [1, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"passed\": false}, {\"check\": \"no keywords\", \"actual\": [null, []], \"expected\": [null, []], \"passed\": true}, {\"check\": \"keyword cannot supply positional\", \"actual\": \"TypeError\", \"expected\": \"TypeError\", \"passed\": true}, {\"check\": \"too many positions\", \"actual\": \"TypeError\", \"expected\": \"TypeError\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.12,"exit_code":1,"observations":[{"actual":[1,[["a",2]]],"check":"same spelling legal","expected":[1,[["a",2]]],"passed":true},{"actual":[1,[["z",0],["a",3],["b",null]]],"check":"ordered kwargs","expected":[1,[["z",0],["a",3],["b",null]]],"passed":true},{"actual":[null,[]],"check":"no keywords","expected":[null,[]],"passed":true},{"actual":"TypeError","check":"keyword cannot supply positional","expected":"TypeError","passed":true},{"actual":[1,[]],"check":"too many positions","expected":"TypeError","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same spelling legal\", \"actual\": [1, [[\"a\", 2]]], \"expected\": [1, [[\"a\", 2]]], \"passed\": true}, {\"check\": \"ordered kwargs\", \"actual\": [1, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"expected\": [1, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"passed\": true}, {\"check\": \"no keywords\", \"actual\": [null, []], \"expected\": [null, []], \"passed\": true}, {\"check\": \"keyword cannot supply positional\", \"actual\": \"TypeError\", \"expected\": \"TypeError\", \"passed\": true}, {\"check\": \"too many positions\", \"actual\": [1, []], \"expected\": \"TypeError\", \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.729,"exit_code":0,"observations":[{"actual":[1,[["a",2]]],"check":"same spelling legal","expected":[1,[["a",2]]],"passed":true},{"actual":[1,[["z",0],["a",3],["b",null]]],"check":"ordered kwargs","expected":[1,[["z",0],["a",3],["b",null]]],"passed":true},{"actual":[null,[]],"check":"no keywords","expected":[null,[]],"passed":true},{"actual":"TypeError","check":"keyword cannot supply positional","expected":"TypeError","passed":true},{"actual":"TypeError","check":"too many positions","expected":"TypeError","passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same spelling legal\", \"actual\": [1, [[\"a\", 2]]], \"expected\": [1, [[\"a\", 2]]], \"passed\": true}, {\"check\": \"ordered kwargs\", \"actual\": [1, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"expected\": [1, [[\"z\", 0], [\"a\", 3], [\"b\", null]]], \"passed\": true}, {\"check\": \"no keywords\", \"actual\": [null, []], \"expected\": [null, []], \"passed\": true}, {\"check\": \"keyword cannot supply positional\", \"actual\": \"TypeError\", \"expected\": \"TypeError\", \"passed\": true}, {\"check\": \"too many positions\", \"actual\": \"TypeError\", \"expected\": \"TypeError\", \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}