{"record":{"id":"83fff614fe48ca6c","repo":"openai/codex","slug":"managed-config-file-has-no-parent-directory-83fff6","errorCode":null,"errorMessage":"Managed config file {} has no parent directory","messagePattern":"Managed config file (.+?) has no parent directory","errorType":"exception","errorClass":"io::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/config/src/loader/mod.rs","lineNumber":454,"sourceCode":"    }\n\n    for thread_config_layer in thread_config_layers {\n        insert_layer_by_precedence(&mut layers, thread_config_layer);\n    }\n\n    // Make a best-effort to support the legacy `managed_config.toml` as a\n    // config layer on top of everything else. For fields in\n    // `managed_config.toml` that do not have an equivalent in\n    // `ConfigRequirements`, note users can still override these values on a\n    // per-turn basis in the TUI and VS Code.\n    let LoadedConfigLayers {\n        managed_config,\n        managed_config_from_mdm,\n        ..\n    } = loaded_config_layers;\n    if let Some(config) = managed_config {\n        let managed_parent = config.file.as_path().parent().ok_or_else(|| {\n            io::Error::new(\n                io::ErrorKind::InvalidData,\n                format!(\n                    \"Managed config file {} has no parent directory\",\n                    config.file.as_path().display()\n                ),\n            )\n        })?;\n        let managed_config =\n            resolve_relative_paths_in_config_toml(config.managed_config, managed_parent)?;\n        layers.push(ConfigLayerEntry::new(\n            ConfigLayerSource::LegacyManagedConfigTomlFromFile { file: config.file },\n            managed_config,\n        ));\n    }\n    if let Some(config) = managed_config_from_mdm {\n        // As a general rule, config from MDM should _not_ include relative\n        // paths, starting with `./`, but a path starting with `~/` _is_ a\n        // supported use case. Because resolve_relative_paths_in_config_toml()","sourceCodeStart":436,"sourceCodeEnd":472,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/config/src/loader/mod.rs#L436-L472","documentation":"Error \"Managed config file {} has no parent directory\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/config/src/loader/mod.rs:454 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure the managed config file path has a valid parent directory."],"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"}