fix: #2962 normalize sandbox paths and add Windows CI#2963
fix: #2962 normalize sandbox paths and add Windows CI#2963
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8ab31671c9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d01237492c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
This pull request resolves #2962 by fixing sandbox path normalization when the SDK is run from Windows against Unix-like sandbox backends.
The bug was that sandbox paths were being normalized through host
Pathsemantics. On Windows, paths that should remain remote POSIX paths such as/workspace/...or/tmp/openai-agents/...could be represented with Windows path behavior or separators before being passed into sandbox helper commands. That made Modal sandbox operations vulnerable to incorrect path strings even though the remote sandbox itself expects POSIX paths.This changes the sandbox workspace path policy to keep host filesystem paths and remote sandbox paths separate. Local path checks still use concrete host
Pathobjects, while paths sent into the sandbox are normalized asPurePosixPath. Runtime helper install paths now also use POSIX pure paths, so helper commands consistently receive Unix-style paths regardless of the platform running the test process.The new tests cover Windows-style inputs for workspace path normalization, Modal path validation, and runtime helper install paths. A Windows GitHub Actions pytest job is included as regression coverage so future pull requests exercise this behavior on an actual Windows runner.