Codex Desktop floods logs with EPERM Chrome scandir errors when Full Disk Access is not granted

Open 💬 1 comment Opened Jun 24, 2026 by leanderfortune-arch

Summary

When the Codex desktop app does not have permission to read the Chrome profile directory, BundledPluginsMarketplace retries scandir on ~/Library/Application Support/Google/Chrome repeatedly, logging a full multi-line stack trace on every failure (several times per minute). There is no in-app prompt or warning about the missing permission — it silently spins in the background, writing ~1 KB per failure to disk continuously.

Environment

  • Codex Desktop: 26.616.81150 (build 4306)
  • macOS: 27.0
  • Chrome installed, but Codex.app not granted Full Disk Access

Repro

  1. Have Google Chrome installed.
  2. Run Codex Desktop without granting it Full Disk Access (or access to the Chrome folder).
  3. Tail ~/Library/Logs/com.openai.codex/<date>/codex-desktop-*-t0-*.log.

Actual

Log fills with repeating entries, each carrying a full stack trace:

warning [BundledPluginsMarketplace] bundled_plugins_chrome_extension_sync_state_read_failed
errorCode=EPERM errorMessage="EPERM: operation not permitted, scandir
'/Users/<user>/Library/Application Support/Google/Chrome'" errorName=Error
errorStack="Error: EPERM: ... at readdirSync (node:fs:1569:26) ..."

Hundreds of these accumulate; combined with continuous INFO polling it produced multiple MB of log writes in a single day on my machine.

Expected

  • Detect the EPERM once, surface a one-time UI hint ("grant Full Disk Access to sync the Chrome extension"), then back off — don't retry-and-log on a tight loop.
  • Don't emit a full stack trace for an expected permission error; a single warning is enough.
  • Ideally skip the Chrome sync entirely if the user isn't using the Chrome extension.

Impact

Silent, continuous background disk writes with zero user-facing indication that anything is wrong or that a permission is missing.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗