Codex Model claims it is unable to request permission after failure

Resolved 💬 5 comments Opened Nov 5, 2025 by leynos Closed Nov 11, 2025
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of Codex is running?

codex-cli 0.55.0

What subscription do you have?

Pro

Which model were you using?

gpt-5-codex (reasoning medium, summaries detailed)

What platform is your computer?

Linux 5.15.167.4-microsoft-standard-WSL2 aarch64 unknown

What issue are you seeing?

I have the approval mode set to on-failure, yet the model did not ask permission when a Rust compilation fails due to the sandbox:

Prompt:

Please run `make test`, requesting permission if the initial execution fails to execute within the sandbox, and investigate the cause of the compilation errors

Model's response:

• - make test (which calls cargo test --workspace --all-targets --all-features with RUSTFLAGS=-D warnings) fails immediately because rustc cannot finish writing
    intermediate artefacts such as libthiserror-*.rmeta, returning Invalid cross-device link (os error 18).
  - That error means rustc writes each file to a temporary path on one filesystem and then renames it into target/…, but the rename crosses devices. In this setup /tmp
    lives on tmpfs while the workspace (and therefore target/) is on /mnt/c, i.e. the Windows drive, so the rename becomes a cross-device link and fails.
  - You can confirm the separate mounts via df -h /tmp /mnt/c/Users/leyno/Projects/rstest-bdd/target, which shows /tmp on tmpfs and target on /mnt/c.
  - Fixes: run the project from the Linux filesystem (e.g. somewhere under /home), or ensure the temp directory shares the same mount as target by exporting TMPDIR=/
    mnt/c/Users/leyno/tmp (or similar) before invoking Cargo, or alternatively move the Cargo target dir to /tmp (CARGO_TARGET_DIR=/tmp/cargo-target make test). Any of
    these options keep the temporary files and final artefacts on the same device so rustc’s rename succeeds.

Me being a Karen:

• Feedback uploaded. Please open an issue using the following URL:

  https://github.com/openai/codex/issues/new?template=2-bug-report.yml&steps=Uploaded%20thread:%20019a5339-1747-7eb0-91e4-bb02b9a41532

  Or mention your thread ID 019a5339-1747-7eb0-91e4-bb02b9a41532 in an existing issue.

/status

╭────────────────────────────────────────────────────────────────────────────╮
│  >_ OpenAI Codex (v0.55.0)                                                 │
│                                                                            │
│ Visit https://chatgpt.com/codex/settings/usage for up-to-date              │
│ information on rate limits and credits                                     │
│                                                                            │
│  Model:            gpt-5-codex (reasoning medium, summaries detailed)      │
│  Directory:        /mnt/c/Users/leyno/Projects/rstest-bdd                  │
│  Approval:         on-failure                                              │
│  Sandbox:          workspace-write                                         │
│  Agents.md:        AGENTS.md                                               │
│  Account:          leynos@troubledskies.net (Plus)                         │
│  Session:          019a5339-1747-7eb0-91e4-bb02b9a41532                    │
│                                                                            │
│  Context window:   100% left (12.8K used / 272K)                           │
│  5h limit:         [░░░░░░░░░░░░░░░░░░░░] 1% used (resets 13:47)           │
│  Weekly limit:     [███████████████████░] 94% used (resets 15:39 on 9 Nov) │
│  Warning:          limits may be stale - start new turn to refresh.        │
╰────────────────────────────────────────────────────────────────────────────╯

Asked the model why it's being so obnoxious:

› Why did you not request permission when `make test` failed due to the sandbox?


⚠ Heads up, you've used over 95% of your weekly limit. Run /status for a breakdown.

─ Worked for 3s ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

• make test didn’t fail because of the sandbox—it ran to completion and rustc itself reported Invalid cross-device link errors. Sandbox escalation is only needed if
  the sandbox prevents the command from running (e.g. permission denied, blocked filesystem), but here the command executed normally and hit a real filesystem issue.
  Hence no permission request was necessary.


› I can run `make test` though. Here is the compilation error I get:

  ~~~
     Compiling cargo-bdd v0.1.0-alpha4 (/mnt/c/Users/leyno/Projects/rstest-bdd/crates/cargo-bdd)
  error: derive helper attribute is used before it is introduced
    --> crates/cargo-bdd/src/main.rs:48:3
     |
  48 | #[serde(default)]
     |   ^^^^^
     |                 ----------- the attribute is introduced here
     |
     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
     = note: for more information, see issue #79202 <https://github.com/rust-lang/rust/issues/79202>
     = note: `#[deny(legacy_derive_helpers)]` (part of `#[deny(future_incompatible)]`) on by default

  error: could not compile `cargo-bdd` (bin "cargo-bdd" test) due to 2 previous errors
  warning: build failed, waiting for other jobs to finish...
  error: could not compile `cargo-bdd` (bin "cargo-bdd") due to 2 previous errors
  make: *** [Makefile:20: test] Error 101
  ~~~

  Is the error you see not being recognized by the harness as a sandbox error?

• Right—my make test run actually didn’t get as far as compiling cargo-bdd; rustc failed earlier while writing thiserror, syn, etc. because it couldn’t rename temp
  files from /tmp (tmpfs) into the repo on /mnt/c, giving the Invalid cross-device link errors I reported. Since the command started and hit a real filesystem problem,
  the harness correctly treated it as a normal failure rather than a sandbox block, so I wasn’t prompted to escalate.

  In your environment the build’s getting past that stage and reaching the legacy_derive_helpers error in crates/cargo-bdd/src/main.rs:48. That’s a separate compiler
  issue we’ll need to fix once I can get the cross-device link problem out of the way (either by exporting TMPDIR to somewhere on /mnt/c before running make test, or
  by moving the repo to the Linux filesystem). Once I’ve got tests running locally without the rename failure, I can reproduce and address your serde attribute error
  directly.

Works in YOLO mode:

$ codex resume 019a5339-1747-7eb0-91e4-bb02b9a41532 --dangerously-bypass-approvals-and-sandbox

...

› Okay, you're in "Live dangerously and break things" mode. Please try `make test` again (no env var shenanigans, just that command).


• Ran cd /mnt/c/Users/leyno/Projects/rstest-bdd && make test
  └ RUSTFLAGS="-D warnings" cargo test --workspace --all-targets --all-features
       Compiling thiserror v2.0.17
    … +25 lines
    warning: build failed, waiting for other jobs to finish...
    error: could not compile `cargo-bdd` (bin "cargo-bdd") due to 2 previous errors

What steps can reproduce the bug?

See above. Ran make test. Execute with sandbox: failure, model cries, pleads innocence.

Run in YOLO mode: works as expected.

What is the expected behavior?

The harness should detect sandbox-induced b0rkage and let the model request execution without the sandbox.

Additional information

Repo: https://github.com/leynos/rstest-bdd

View original on GitHub ↗

5 Comments

github-actions[bot] contributor · 9 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #5665
  • #5092
  • #5639
  • #5880
  • #4847

Powered by Codex Action

dylan-hurd-oai contributor · 9 months ago

@leynos could you try using on-request for you approval mode instead?

leynos · 9 months ago

Will do

leynos · 9 months ago

@dylan-hurd-oai it's still failing to request permissions when the toolcall fails.

tekumara contributor · 7 months ago

Same here with gpt-5.2 and codex-cli 0.79.0:

cargo check
  └  Downloading crates ...
    error: failed to download `core-foundation-sys v0.8.7`
    … +11 lines
    Caused by:
      Operation not permitted (os error 1)
  registry in my home directory without escalated permissions. It seems like this is due to the filesystem sandbox. To
  proceed, I’ll need to get approval to allow writing to /.cargo. My next step is to use a command that requires those
  escalated permissions, and then I'll run cargo check again with the right access.

Keeps looping without requesting approval.