openai / openai/codex

In-app browser is not recoverable for an interrupted subagent after stale completion cleanup

Open
#43,210 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app browser bug subagent
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What version of the Codex App are you using (From “About Codex” dialog)?

26.901.51231

What subscription do you have?

Plus

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What issue are you seeing?

When a subagent using the Codex in-app browser is interrupted, its next turn can fail to establish a new browser connection. Codex starts a replacement IAB backend, then immediately disposes the route. Subsequent browser discovery returns No browser is available.
This appears to be caused by a stale subagent completion status ending browser activity for the same subagent task after a newer turn has already started.

What steps can reproduce the bug?
Steps to reproduce:
  1. Start a subagent and have it use the Codex in-app browser.
  2. Interrupt that subagent while it has an active browser session.
  3. Send the subagent a follow-up prompt so it starts a new turn and attempts browser verification.
  4. The subagent cannot reconnect, despite a replacement browser backend being started.
Actual behaviour:

The browser route is removed shortly after the replacement backend is started. The subagent receives:
Browser is not available: 1 No browser is available

The browser backend logs the underlying failure as:
No ChatGPT browser route is available for browser session 01a07422-128b-7cc3-b1a7-693a0ab23b26

What is the expected behavior?

The new subagent turn should establish a fresh browser route and create/reuse a tab after interruption.

Additional information
Relevant timeline
  • 00:36:10.055Z: Parent sends an interrupted subagent status.
  • 00:36:10.032Z: Codex disposes the subagent’s browser route because disposeAfterSessionActivity=true.
  • 00:37:13.214Z: A new subagent turn starts.
  • 00:37:13.202Z: Codex starts and reports ready a replacement IAB backend.
  • 00:37:13.454Z: Codex immediately disposes that browser route.
  • 00:37:32.209Z: New browser discovery fails because there is no browser route for the subagent session.

Relevant log lines:

IAB_LIFECYCLE browser_use_iab_backend_startup_ready
IAB_LIFECYCLE created browser use host
IAB_LIFECYCLE disposed browser use route
IAB_LIFECYCLE ended browser use session activity

The detailed failure was logged at:

[browser-use-iab-api] IAB_LIFECYCLE iab backend info request failed
errorMessage="No ChatGPT browser route is available for browser session 01a07422-128b-7cc3-b1a7-693a0ab23b26"

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

No source file or test is named. Start by tracing the IAB_LIFECYCLE events around browser route creation, stale subagent completion, and disposal, then reproduce the interruption and follow-up turn; done means the replacement backend retains a usable route and browser discovery can create or reuse a tab.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.