{"abstract":"Required keys may be omitted.","category":"Configuration","checks":9,"contract":"Return errors in key order for missing required keys, unknown keys, exact type mismatch, disallowed values, and invalid bounds. Booleans must not satisfy integer type.","evaluation_group":"xt-config-validation","failed_approach":"The attempted repair substitutes if not required:. Fixture 2 still yields [] instead of [('a', 'missing')].","family":"xt-config-validation-required-key","id":"FA-9611","implementations":{"attempt":{"sha256":"cdb20d2cf7d97995e5326ae8dadaa4448f1cfe8c1e493a15ff55b07c20b3c5ab","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(data, schema):\n    errors = []\n    for key in sorted(set(data) | set(schema)):\n        if key not in schema: errors.append((key, 'unknown')); continue\n        required, kind, choices, minimum = schema[key]\n        if key not in data:\n            if not required: errors.append((key, 'missing'))\n            continue\n        value = data[key]\n        if type(value).__name__ != kind: errors.append((key, 'type')); continue\n        if choices is not None and value not in choices: errors.append((key, 'choice'))\n        if minimum is not None and value < minimum: errors.append((key, 'minimum'))\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve({}, {}), [])\ncheck('fixture 2', solve({}, {'a': (True, 'int', None, None)}), [('a', 'missing')])\ncheck('fixture 3', solve({}, {'a': (False, 'int', None, None)}), [])\ncheck('fixture 4', solve({'x': 1}, {}), [('x', 'unknown')])\ncheck('fixture 5', solve({'a': True}, {'a': (True, 'int', None, None)}), [('a', 'type')])\ncheck('fixture 6', solve({'a': 2}, {'a': (True, 'int', [1, 3], None)}), [('a', 'choice')])\ncheck('fixture 7', solve({'a': 1}, {'a': (True, 'int', None, 2)}), [('a', 'minimum')])\ncheck('fixture 8', solve({'a': 2}, {'a': (True, 'int', None, 2)}), [])\ncheck('fixture 9', solve({'a': 'x'}, {'a': (True, 'str', ['x'], None)}), [])\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":"0baa41b6388c3beb6ae7eda2a31c1ad2b0be7e4e9ea06871dccebca6046c9a63","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(data, schema):\n    errors = []\n    for key in sorted(set(data) | set(schema)):\n        if key not in schema: errors.append((key, 'unknown')); continue\n        required, kind, choices, minimum = schema[key]\n        if key not in data:\n            if False: errors.append((key, 'missing'))\n            continue\n        value = data[key]\n        if type(value).__name__ != kind: errors.append((key, 'type')); continue\n        if choices is not None and value not in choices: errors.append((key, 'choice'))\n        if minimum is not None and value < minimum: errors.append((key, 'minimum'))\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve({}, {}), [])\ncheck('fixture 2', solve({}, {'a': (True, 'int', None, None)}), [('a', 'missing')])\ncheck('fixture 3', solve({}, {'a': (False, 'int', None, None)}), [])\ncheck('fixture 4', solve({'x': 1}, {}), [('x', 'unknown')])\ncheck('fixture 5', solve({'a': True}, {'a': (True, 'int', None, None)}), [('a', 'type')])\ncheck('fixture 6', solve({'a': 2}, {'a': (True, 'int', [1, 3], None)}), [('a', 'choice')])\ncheck('fixture 7', solve({'a': 1}, {'a': (True, 'int', None, 2)}), [('a', 'minimum')])\ncheck('fixture 8', solve({'a': 2}, {'a': (True, 'int', None, 2)}), [])\ncheck('fixture 9', solve({'a': 'x'}, {'a': (True, 'str', ['x'], None)}), [])\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":"166c9af4fb28fcc3a677649a25e82b977cb9bc0bddede2fedacf963ad200a441","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(data, schema):\n    errors = []\n    for key in sorted(set(data) | set(schema)):\n        if key not in schema: errors.append((key, 'unknown')); continue\n        required, kind, choices, minimum = schema[key]\n        if key not in data:\n            if required: errors.append((key, 'missing'))\n            continue\n        value = data[key]\n        if type(value).__name__ != kind: errors.append((key, 'type')); continue\n        if choices is not None and value not in choices: errors.append((key, 'choice'))\n        if minimum is not None and value < minimum: errors.append((key, 'minimum'))\n    return errors\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('fixture 1', solve({}, {}), [])\ncheck('fixture 2', solve({}, {'a': (True, 'int', None, None)}), [('a', 'missing')])\ncheck('fixture 3', solve({}, {'a': (False, 'int', None, None)}), [])\ncheck('fixture 4', solve({'x': 1}, {}), [('x', 'unknown')])\ncheck('fixture 5', solve({'a': True}, {'a': (True, 'int', None, None)}), [('a', 'type')])\ncheck('fixture 6', solve({'a': 2}, {'a': (True, 'int', [1, 3], None)}), [('a', 'choice')])\ncheck('fixture 7', solve({'a': 1}, {'a': (True, 'int', None, 2)}), [('a', 'minimum')])\ncheck('fixture 8', solve({'a': 2}, {'a': (True, 'int', None, 2)}), [])\ncheck('fixture 9', solve({'a': 'x'}, {'a': (True, 'str', ['x'], None)}), [])\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":"xt-config-validation-required-key","generated_at":"2026-09-29T14:38:31.535445+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline model of configuration schema diagnostics, suitable for testing build and release tooling without external services.","repair":"Report absent required keys only.","root_cause":"The implementation substitutes if False: for if required:, so required keys may be omitted.","sha256":"4289b0241c0cb8e507e50719c2aaf45c0e06e80e529d9ee62f535a3bf54e058a","title":"Configuration schema diagnostics: Required keys may be omitted · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":37.102,"exit_code":1,"observations":[{"actual":[],"check":"fixture 1","expected":[],"passed":true},{"actual":[],"check":"fixture 2","expected":[["a","missing"]],"passed":false},{"actual":[["a","missing"]],"check":"fixture 3","expected":[],"passed":false},{"actual":[["x","unknown"]],"check":"fixture 4","expected":[["x","unknown"]],"passed":true},{"actual":[["a","type"]],"check":"fixture 5","expected":[["a","type"]],"passed":true},{"actual":[["a","choice"]],"check":"fixture 6","expected":[["a","choice"]],"passed":true},{"actual":[["a","minimum"]],"check":"fixture 7","expected":[["a","minimum"]],"passed":true},{"actual":[],"check":"fixture 8","expected":[],"passed":true},{"actual":[],"check":"fixture 9","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 2\", \"actual\": [], \"expected\": [[\"a\", \"missing\"]], \"passed\": false}, {\"check\": \"fixture 3\", \"actual\": [[\"a\", \"missing\"]], \"expected\": [], \"passed\": false}, {\"check\": \"fixture 4\", \"actual\": [[\"x\", \"unknown\"]], \"expected\": [[\"x\", \"unknown\"]], \"passed\": true}, {\"check\": \"fixture 5\", \"actual\": [[\"a\", \"type\"]], \"expected\": [[\"a\", \"type\"]], \"passed\": true}, {\"check\": \"fixture 6\", \"actual\": [[\"a\", \"choice\"]], \"expected\": [[\"a\", \"choice\"]], \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": [[\"a\", \"minimum\"]], \"expected\": [[\"a\", \"minimum\"]], \"passed\": true}, {\"check\": \"fixture 8\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 9\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.647,"exit_code":1,"observations":[{"actual":[],"check":"fixture 1","expected":[],"passed":true},{"actual":[],"check":"fixture 2","expected":[["a","missing"]],"passed":false},{"actual":[],"check":"fixture 3","expected":[],"passed":true},{"actual":[["x","unknown"]],"check":"fixture 4","expected":[["x","unknown"]],"passed":true},{"actual":[["a","type"]],"check":"fixture 5","expected":[["a","type"]],"passed":true},{"actual":[["a","choice"]],"check":"fixture 6","expected":[["a","choice"]],"passed":true},{"actual":[["a","minimum"]],"check":"fixture 7","expected":[["a","minimum"]],"passed":true},{"actual":[],"check":"fixture 8","expected":[],"passed":true},{"actual":[],"check":"fixture 9","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 2\", \"actual\": [], \"expected\": [[\"a\", \"missing\"]], \"passed\": false}, {\"check\": \"fixture 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": [[\"x\", \"unknown\"]], \"expected\": [[\"x\", \"unknown\"]], \"passed\": true}, {\"check\": \"fixture 5\", \"actual\": [[\"a\", \"type\"]], \"expected\": [[\"a\", \"type\"]], \"passed\": true}, {\"check\": \"fixture 6\", \"actual\": [[\"a\", \"choice\"]], \"expected\": [[\"a\", \"choice\"]], \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": [[\"a\", \"minimum\"]], \"expected\": [[\"a\", \"minimum\"]], \"passed\": true}, {\"check\": \"fixture 8\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 9\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":37.479,"exit_code":0,"observations":[{"actual":[],"check":"fixture 1","expected":[],"passed":true},{"actual":[["a","missing"]],"check":"fixture 2","expected":[["a","missing"]],"passed":true},{"actual":[],"check":"fixture 3","expected":[],"passed":true},{"actual":[["x","unknown"]],"check":"fixture 4","expected":[["x","unknown"]],"passed":true},{"actual":[["a","type"]],"check":"fixture 5","expected":[["a","type"]],"passed":true},{"actual":[["a","choice"]],"check":"fixture 6","expected":[["a","choice"]],"passed":true},{"actual":[["a","minimum"]],"check":"fixture 7","expected":[["a","minimum"]],"passed":true},{"actual":[],"check":"fixture 8","expected":[],"passed":true},{"actual":[],"check":"fixture 9","expected":[],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"fixture 1\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 2\", \"actual\": [[\"a\", \"missing\"]], \"expected\": [[\"a\", \"missing\"]], \"passed\": true}, {\"check\": \"fixture 3\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 4\", \"actual\": [[\"x\", \"unknown\"]], \"expected\": [[\"x\", \"unknown\"]], \"passed\": true}, {\"check\": \"fixture 5\", \"actual\": [[\"a\", \"type\"]], \"expected\": [[\"a\", \"type\"]], \"passed\": true}, {\"check\": \"fixture 6\", \"actual\": [[\"a\", \"choice\"]], \"expected\": [[\"a\", \"choice\"]], \"passed\": true}, {\"check\": \"fixture 7\", \"actual\": [[\"a\", \"minimum\"]], \"expected\": [[\"a\", \"minimum\"]], \"passed\": true}, {\"check\": \"fixture 8\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"fixture 9\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}