[desktop] Chrome file upload returns "Not allowed" despite Uploads set to Always allow
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- PR merge metrics
- PR metrics pending
Description
Summary
Codex Desktop's Google Chrome computer-use integration cannot upload a local file even though the integration's Uploads permission is set to Always allow. The Chrome extension's Allow access to file URLs setting was already enabled before the failure.
Reproduction
- In Codex Desktop, open Settings → Computer use → Google Chrome.
- Confirm the extension is installed and Uploads is set to Always allow.
- Start a Chrome computer-use task on a page with a hidden
<input type="file">and a visible associated label/button. - Wait for the
filechooser, click the visible upload control, and callfileChooser.setFiles(...)with a valid local PDF.
Actual result
The chooser opens, but the upload fails with:
{"code":-32000,"message":"Not allowed"}
fileChooser.setFiles failed
The user reports this permission has been enabled for a long time. Restarting/reconnecting the Chrome task did not resolve it.
Expected result
With file-URL access enabled and Codex Desktop's Uploads permission set to Always allow, a user-authorized upload of a valid local PDF should complete without a permission error.
Environment
- Codex Desktop: 26.803.61601 (build 6396)
- macOS: 15.6.1
- Google Chrome: 151.0.7922.138
- Chrome integration installed
- Approval, History, Downloads, and Uploads all set to Always allow
Evidence
A screenshot was captured showing the installed Chrome integration and all four permissions set to Always allow. The issue-creation connector does not support attaching the local screenshot.
Possibly related: #21597. This report adds the permission-state evidence and a bounded Not allowed failure rather than only a hang/timeout.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the failure through the Google Chrome computer-use integration, starting with the filechooser.setFiles flow and the Uploads permission check. Trace how the integration handles the reported Not allowed response; done means a user-authorized valid local PDF upload succeeds when both permissions are enabled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100