Codex Desktop shows “Conversation not found” during new-session startup with SessionStart hooks
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- PR merge metrics
- PR metrics pending
Description
What version of the Codex App are you using (From “About Codex” dialog)?
Codex App 26.803.61601 (bundled Codex CLI/app-server 0.147.0-alpha.6.5)
What subscription do you have?
Not collected / not available in this session context.
What platform is your computer?
Darwin 25.6.0 arm64 arm
What issue are you seeing?
Every time I start a new Codex Desktop session in a project with Engine installed, the app shows a red toast:
Conversation not found
This is a transient UI error: the new session is actually created, the Engine startup briefing arrives, and the conversation continues normally. It is not tied to running an Engine upgrade; it also happens on ordinary new-session startup.
The affected project has six SessionStart commands in .codex/hooks.json. The user observes the toast deterministically whenever starting a session with this setup.
What steps can reproduce the bug?
- Open a trusted local project in Codex Desktop that has a nontrivial
.codex/hooks.jsonwith multipleSessionStarthooks (the reproducing setup has six). - Start a new task/session.
- As the session initializes, observe a red “Conversation not found” toast.
- Wait briefly.
- Observe that the same session remains usable and its startup context appears normally.
The startup sequence captured in the reproducing session was:
- 18:11:43 — thread creation and user submission logged.
- 18:11:48 — thread resume response logged.
- 18:11:49 — startup briefing/context from the
SessionStarthooks arrived. - 18:11:50.951 and 18:11:50.977 — renderer/Sentry breadcrumbs logged:
Matched leaf route at location "/" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page. - The red toast appeared during this startup window.
- No corresponding warning/error or “Conversation not found” entry appeared in the backend/app-server logs, and the session continued successfully.
The hooks themselves appear healthy:
- The Engine hook test suite passes: 76 tests, OK.
- Manually running the boot hook exits 0 and emits valid
SessionStartJSON withhookSpecificOutput.additionalContext. - The project’s two Engine MCP health checks pass.
What is the expected behavior?
Starting a valid new session should not show a missing-conversation error. Codex Desktop should wait until the renderer’s conversation state/routing is ready, or suppress a transient lookup failure when the session is known to be initializing.
Additional information
This looks like a renderer/UI timing race exposed by startup-hook latency, but that is an inference, not a confirmed root cause. The exact frontend request that triggers the toast was not present in the collected backend logs.
Possibly related: #16817 describes a renderer race involving conversation state, although that issue concerns existing threads after restart rather than this transient new-session startup behavior.
A screenshot of the toast is available if needed.
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
Reproduce the startup sequence with the six SessionStart hooks in .codex/hooks.json, then inspect the renderer/Sentry breadcrumbs around thread creation, resume, and routing. Compare the behavior with the renderer race described in #16817; done means a valid new session starts without a transient “Conversation not found” toast while its startup context still appears.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100