[BUG] Pending permission/approval state not always rendered in session view ("waiting on nothing" — agent announces action, UI shows neither prompt nor progress)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
TITLE: Pending permission/approval state not always rendered in session view ("waiting on nothing" — agent announces action, UI shows neither prompt nor progress)
Environment: Claude Code desktop app, Windows 10 Pro 19045.
Summary: In interactive sessions we hit states where the agent is waiting on something (an approval, or a next-turn signal) but the UI displays nothing actionable: no prompt card, no spinner, last message may even end with the agent announcing "starting now". A user nudge (any message) resumes it. Related observation from the agent side: sessions report "no permission prompt encountered" while the human WAS clicking approval prompts — tool calls just block until approved, invisibly to the model, so agent-side reports cannot be trusted for authorization auditing either.
Steps to reproduce (not fully deterministic):
- Give a session instructions ending in a multi-step plan; approvals granted along the way.
- Occasionally the session ends a turn announcing imminent action; no tool call follows, no pending prompt is rendered, yet a pending "continue" state seems to exist (a subsequent short user message like "go" — which appeared to be already queued/expected — resumes work immediately).
- Separately: approval prompt cards sometimes appear only after a delay, or an expired/stale prompt is shown for an already-dead run.
Expected: any state where the runtime waits on user input should be visibly rendered (prompt card or explicit "waiting" indicator); a turn that ends without pending input should be clearly final.
Impact: users can't distinguish "working", "waiting invisibly", and "done"; automation supervision requires constant human polling.
What Should Happen?
Expected: any state where the runtime waits on user input should be visibly rendered (prompt card or explicit "waiting" indicator); a turn that ends without pending input should be clearly final.
Error Messages/Logs
Steps to Reproduce
Steps to reproduce (not fully deterministic):
- Give a session instructions ending in a multi-step plan; approvals granted along the way.
- Occasionally the session ends a turn announcing imminent action; no tool call follows, no pending prompt is rendered, yet a pending "continue" state seems to exist (a subsequent short user message like "go" — which appeared to be already queued/expected — resumes work immediately).
- Separately: approval prompt cards sometimes appear only after a delay, or an expired/stale prompt is shown for an already-dead run.
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
Claude Code desktop app, Windows 10 Pro 19045
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
_No response_