In-app browser is not recoverable for an interrupted subagent after stale completion cleanup
Nobody has claimed this yet.
- 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:
- Start a subagent and have it use the Codex in-app browser.
- Interrupt that subagent while it has an active browser session.
- Send the subagent a follow-up prompt so it starts a new turn and attempts browser verification.
- 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 becausedisposeAfterSessionActivity=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
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
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