Fix image extension PathUri conversion (#27711)

## Why

`main` stopped compiling when #27498 passed an `AbsolutePathBuf` to the
`ExecutorFileSystem` API migrated to `PathUri` by #27653.

## What

Convert referenced image paths to `PathUri` before filesystem reads,
declare the internal path-URI dependency, and refresh `Cargo.lock`.
This commit is contained in:
Adam Perry @ OpenAI
2026-06-11 17:15:19 -07:00
committed by GitHub
Unverified
parent 44403dd3dd
commit 1829ed1122
3 changed files with 10 additions and 1 deletions
+1
View File
@@ -3134,6 +3134,7 @@ dependencies = [
"codex-tools",
"codex-utils-absolute-path",
"codex-utils-image",
"codex-utils-path-uri",
"http 1.4.0",
"pretty_assertions",
"schemars 0.8.22",
+1
View File
@@ -23,6 +23,7 @@ codex-protocol = { workspace = true }
codex-tools = { workspace = true }
codex-utils-absolute-path = { workspace = true }
codex-utils-image = { workspace = true }
codex-utils-path-uri = { workspace = true }
http = { workspace = true }
schemars = { workspace = true }
serde = { workspace = true, features = ["derive"] }
+8 -1
View File
@@ -33,6 +33,7 @@ use codex_tools::default_namespace_description;
use codex_utils_absolute_path::AbsolutePathBuf;
use codex_utils_image::PromptImageMode;
use codex_utils_image::load_for_prompt_bytes;
use codex_utils_path_uri::PathUri;
use schemars::JsonSchema;
use schemars::r#gen::SchemaSettings;
use serde::Deserialize;
@@ -324,9 +325,15 @@ async fn image_url(
path: &AbsolutePathBuf,
environment: &ToolEnvironment,
) -> Result<ImageUrl, FunctionCallError> {
let path_uri = PathUri::from_abs_path(path).map_err(|error| {
FunctionCallError::RespondToModel(format!(
"unable to read referenced image at `{}`: {error}",
path.display()
))
})?;
let bytes = environment
.file_system
.read_file(path, Some(&environment.file_system_sandbox_context))
.read_file(&path_uri, Some(&environment.file_system_sandbox_context))
.await
.map_err(|error| {
FunctionCallError::RespondToModel(format!(