openai / openai/codex

[macOS][In-app Browser] Opening Google times out after 30 seconds and leaves about:blank (26.901.20858)

Open
#42,459 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app browser bug tool-calls
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of the Codex App are you using?

26.901.20858 (build 7658), read from the installed app's Info.plist.
The installed app is named ChatGPT.app and has bundle identifier com.openai.codex.

What subscription do you have?

Not recorded in this test.

What platform is your computer?

macOS 26.6.2 (build 25G83), Apple Silicon.

uname -mprs: Darwin 25.6.0 arm64 arm

What issue are you seeing?

During a single speed test using only the desktop app's built-in browser through mcp__cua_repl, opening Google timed out after 30.0514 seconds and reset the JavaScript kernel. The resulting tab remained at about:blank.

The exact call was:

var tab = await cua.createBrowserTab("iab", "https://www.google.com", { visible: true });

The tool used its default 30,000 ms execution timeout and returned:

js execution timed out; kernel reset, rerun your request

After the reset, cua.getState() showed a Codex In-app Browser tab with both title and URL equal to about:blank. Attaching to that tab and reading its DOM returned an empty string. The Google navigation was not retried.

What steps can reproduce the bug?

These are the steps from the observed run; repeatability has not been established:

  1. In a desktop task, use mcp__cua_repl with the default 30-second tool timeout.
  2. Run the cua.createBrowserTab call above as the first CUA call.
  3. Observe the timeout and kernel-reset error.
  4. Call await cua.getState() after the reset and inspect the created tab's URL.
  5. Attach to that tab using cua.getTab and read it with tab.playwright.domSnapshot().

The intended benchmark was: open Google, read the DOM, enter grok latest news, press Enter, read search results, click a result and confirm navigation, then create an about:blank tab and separately measure DOM reading and screenshot capture. The search-dependent steps could not proceed because Google did not open.

Measurements

API duration was measured around awaited calls using Date.now() where possible. Tool duration is the tool-reported wall time, excluding model thinking time. The first call timed out before an API duration could be collected. These are single samples, not averages.

Operation API duration Tool wall time Outcome
Open Google in the in-app browser Unavailable 30.0514 s Timeout; kernel reset; tab remained about:blank
Read DOM of the resulting tab 18 ms 24.7 ms Empty DOM; not a loaded Google page
Enter search query Not run Not run Blocked by navigation failure
Press Enter to search Not run Not run Blocked by navigation failure
Read search-results DOM Not run Not run Blocked by navigation failure
Click a result and confirm destination Not run Not run Blocked by navigation failure
Create a new about:blank tab 208 ms 263.2 ms Success
Read the new blank tab's DOM API not invoked 8.8 ms Test-script ReferenceError; excluded from browser performance results
Capture the new blank tab's screenshot 22 ms 30.4 ms Success; returned image bytes

The new blank tab's DOM measurement failed with ReferenceError: blank is not defined because of an agent-authored test-script variable error. This is not being reported as a browser defect. The new blank tab was subsequently attached to for the separate screenshot test; the failed DOM measurement was not retried.

What is the expected behavior?

Opening a URL through the built-in browser should either load the requested page or return an actionable navigation error. In this run, the only error was a generic tool execution timeout followed by a kernel reset, leaving the tab at about:blank and preventing the requested workflow from continuing.

Additional information
  • Only one approximately 30-second delay was observed. This report does not claim repeated 30-second delays or consistent reproduction.
  • The agent did not restart the desktop app before or during the test. Whether the user restarted it before the session is unknown. The tool's automatic JavaScript kernel reset was not an app restart.
  • Browser measurements used only mcp__cua_repl, cua, and the in-app tab's playwright/screenshot APIs. No external browser, terminal Playwright, or search tool was substituted.
  • No failed benchmark operation was retried. No root-cause investigation or network diagnosis was performed, so this report does not establish whether the timeout originated in navigation, initialization, network conditions, or another component.
  • Related reports with different platforms or triggers: #40048 (Windows browser-control failures, including a kernel timeout) and #36703 (macOS UI stalls when opening an active Browser task). This report records a macOS URL-opening timeout on the version above, not the task-switching stall described in #36703.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the report with mcp__cua_repl by calling cua.createBrowserTab("iab", "https://www.google.com", { visible: true }) as the first CUA call, then inspect the tab with cua.getState(), cua.getTab, and tab.playwright.domSnapshot(). Determine why the call times out and leaves about:blank; done means the URL loads or an actionable navigation error is returned without an unusable reset.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, playwright
Domain
desktop, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.