Feature request: lifecycle hook events for the provider-wait retry menu
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
Feature request: a lifecycle hook event fired when the retry-capable provider-wait menu (the screen shown while Codex is waiting on its model provider, with options like "Retry now" / "Dismiss and keep waiting") becomes actionable, and a matching event when it closes. Each event should carry the Codex session (or pane/process) identity so an external supervisor can tell which session it applies to.
Why: the current hook surface covers prompt, tool-call, permission, compaction, Stop, and session-lifecycle boundaries, but nothing fires when this provider-wait menu appears or disappears. An external supervisor that wants to act on this menu — for example, to select "Dismiss and keep waiting" automatically so a long-running unattended session doesn't stall on a transient provider hiccup — currently has no event to act on and no reliable signal that the menu is even present.
Alternatives considered and rejected:
- Polling terminal/pane output for the menu's text on a timer works but is fragile (text and layout can change between versions) and either wastes cycles polling constantly or introduces latency waiting for the next poll.
- Watching for terminal "activity" or "silence" changes as a proxy for the menu appearing doesn't reliably distinguish "provider-wait menu is up" from ordinary idle output, and terminal-level silence/activity signals can each fire only once before needing to be manually reset.
- A standing background watcher process that continuously inspects session state avoids polling latency but adds a persistent component whose own lifecycle has to be managed separately from the session it's watching.
None of these give a supervisor a precise, low-latency signal scoped to this specific menu without either fragility or an extra long-lived process. A first-class lifecycle event would let a supervisor react immediately and only when the menu is genuinely present.
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
Start by locating the provider-wait retry menu and the existing hook surface for prompt, tool-call, permission, compaction, Stop, and session-lifecycle events. Define matching events for the menu becoming actionable and closing, each carrying session or pane/process identity, and verify that an external supervisor can distinguish the target session and react only while the menu is present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100