{"record":{"id":"e38ab5bb0848e011","repo":"openai/codex","slug":"query-keys-must-not-be-empty","errorCode":null,"errorMessage":"query keys must not be empty","messagePattern":"query keys must not be empty","errorType":"validation","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/network-proxy/src/mitm_hook.rs","lineNumber":566,"sourceCode":"\nfn normalize_methods(methods: &[String]) -> Result<Vec<String>> {\n    methods\n        .iter()\n        .map(|method| {\n            let normalized = method.trim().to_ascii_uppercase();\n            if normalized.is_empty() {\n                return Err(anyhow!(\"methods must not contain empty entries\"));\n            }\n            Ok(normalized)\n        })\n        .collect()\n}\n\nfn validate_query_constraints(query: &BTreeMap<String, Vec<String>>) -> Result<()> {\n    for (name, values) in query {\n        let normalized = normalize_query_name(name)?;\n        if normalized.is_empty() {\n            return Err(anyhow!(\"query keys must not be empty\"));\n        }\n        if values.is_empty() {\n            return Err(anyhow!(\n                \"query key {name:?} must list at least one allowed value\"\n            ));\n        }\n        let _ = compile_value_matchers(values)\n            .with_context(|| format!(\"invalid matcher for query key {name:?}\"))?;\n    }\n    Ok(())\n}\n\nfn normalize_query_name(name: &str) -> Result<String> {\n    if name.is_empty() {\n        return Err(anyhow!(\"query keys must not be empty\"));\n    }\n    Ok(name.to_string())\n}","sourceCodeStart":548,"sourceCodeEnd":584,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/network-proxy/src/mitm_hook.rs#L548-L584","documentation":"Error \"query keys must not be empty\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/network-proxy/src/mitm_hook.rs:566 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}