openai/codex · error · io::Error

InvalidInput

InvalidInput

Error message

path `{path}` is not absolute

What it means

Error "path `{path}` is not absolute" thrown in openai/codex.

Source

Thrown at codex-rs/app-server-protocol/src/protocol/v2/permissions.rs:76

#[ts(export_to = "v2/")]
pub struct AdditionalFileSystemPermissions {
    /// This will be removed in favor of `entries`.
    pub read: Option<Vec<LegacyAppPathString>>,
    /// This will be removed in favor of `entries`.
    pub write: Option<Vec<LegacyAppPathString>>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    #[ts(optional)]
    pub glob_scan_max_depth: Option<NonZeroUsize>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    #[ts(optional)]
    pub entries: Option<Vec<FileSystemSandboxEntry>>,
}

fn permission_path_uri(path: LegacyAppPathString) -> io::Result<PathUri> {
    if let Ok(path) = AbsolutePathBuf::try_from(path.clone()) {
        return Ok(path.into());
    }
    PathUri::try_from(path).map_err(|err| io::Error::new(io::ErrorKind::InvalidInput, err))
}

// TODO(anp): Remove this conversion once core permission paths use PathUri.
impl From<CoreFileSystemPermissions> for AdditionalFileSystemPermissions {
    fn from(value: CoreFileSystemPermissions) -> Self {
        if let Some(LegacyReadWriteRoots { read, write }) = value.legacy_read_write_roots() {
            let mut entries = Vec::with_capacity(
                read.as_ref().map_or(0, Vec::len) + write.as_ref().map_or(0, Vec::len),
            );
            if let Some(paths) = read.as_ref() {
                entries.extend(paths.iter().map(|path| FileSystemSandboxEntry {
                    path: FileSystemPath::Path {
                        path: LegacyAppPathString::from_abs_path(path),
                    },
                    access: FileSystemAccessMode::Read,
                }));
            }
            if let Some(paths) = write.as_ref() {

View on GitHub (pinned to 339751715c)

When it happens

Trigger: Thrown at codex-rs/app-server-protocol/src/protocol/v2/permissions.rs:76 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of openai/codex@339751715c (2026-08-25). Data as JSON: /api/errors/810f90e9f7cfaeb8. Report an issue: GitHub.