{"record":{"id":"f181497036a0851c","repo":"openai/codex","slug":"path-contains-a-symbolic-link","errorCode":null,"errorMessage":"path contains a symbolic link","messagePattern":"path contains a symbolic link","errorType":"validation","errorClass":"io::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/exec-server/src/no_follow/unix.rs","lineNumber":199,"sourceCode":"    if components.is_empty() {\n        let root = root()?;\n        let metadata = fstat(&root).map_err(io::Error::from)?;\n        let created_at_ms = created_at_ms(&metadata);\n        file_metadata(metadata, created_at_ms)\n    } else {\n        let (parent, leaf) = parent(path)?;\n        let metadata =\n            statat(&parent, &leaf, AtFlags::SYMLINK_NOFOLLOW).map_err(io::Error::from)?;\n        let created_at_ms = created_at_ms(&metadata);\n        file_metadata(metadata, created_at_ms)\n    }\n}\n\n#[cfg(target_os = \"linux\")]\nfn file_metadata_linux(metadata: Statx) -> io::Result<FileMetadata> {\n    let kind = u32::from(metadata.stx_mode) & libc::S_IFMT;\n    if kind == libc::S_IFLNK {\n        return Err(io::Error::new(\n            io::ErrorKind::InvalidInput,\n            \"path contains a symbolic link\",\n        ));\n    }\n    let created_at_ms = if metadata.stx_mask & StatxFlags::BTIME.bits() == 0 {\n        0\n    } else {\n        unix_time_ms(metadata.stx_btime.tv_sec, metadata.stx_btime.tv_nsec)\n    };\n    Ok(FileMetadata {\n        is_directory: kind == libc::S_IFDIR,\n        is_file: kind == libc::S_IFREG,\n        is_symlink: false,\n        size: metadata.stx_size,\n        created_at_ms,\n        modified_at_ms: unix_time_ms(metadata.stx_mtime.tv_sec, metadata.stx_mtime.tv_nsec),\n    })\n}","sourceCodeStart":181,"sourceCodeEnd":217,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/exec-server/src/no_follow/unix.rs#L181-L217","documentation":"Error \"path contains a symbolic link\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/exec-server/src/no_follow/unix.rs:199 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"}