Skip to content

[BUG] Claude Code on the web: an idle session appears to be periodically re-woken on the backend, re-emitting its pending plan/question prompt each time — so on return the prompt is stacked N times, answers are silently lost, and the count scales with idle duration #72704

Description

@vzakharov

Environment

  • Surface: Claude Code on the web (claude.ai/code, browser)
  • Mode: Plan mode (and, separately, the AskUserQuestion / clarifying-question UX)
  • Trigger condition: the session has been idle for a while — long enough that clicking into it shows a "Resuming session…" step before it becomes interactive. This does not reproduce on a session that's been continuously active.
  • Context: running many (10–15) concurrent web sessions, so any individual session sits idle between visits.

What happens

I prepare a plan in plan mode, then leave the session to tend to other sessions. When I come back later and click Accept on the already-prepared plan:

  1. The app shows "Resuming session…" and processes for a while.
  2. Instead of exiting plan mode and starting implementation, it re-presents the same plan for approval.
  3. Accepting again repeats the cycle — sometimes several times in a row.

Workarounds are unreliable. Sometimes if I just keep clicking through — accepting again and again, each time waiting ~a minute for the backend to churn — it eventually proceeds. Other times I have to reject the plan, exit plan mode, and manually type "go ahead" as a normal message. Either way it's uncomfortable at scale: with many concurrent sessions I keep returning to the same stuck one, and a single task can stall for hours.

The worst part: reviewed plans and detailed answers get permanently lost

The wait is annoying, but the real damage is data loss. Time spent reviewing a plan, or writing detailed answers to clarifying questions, sometimes just disappears — the response never takes effect and there's no way to get it back. I've had to start writing all my answers in a separate Notes app first, so I can copy-paste them back in after the prompt inevitably reappears. Losing structured, carefully-written input silently is a much bigger problem than the latency.

The same thing happens to the question-asking UX — and how it re-appears points at the cause

The identical pattern affects clarifying questions (AskUserQuestion). After coming back, the session re-asks the same question(s) I already answered — and here it's more revealing in two ways:

  1. The phrasing is slightly different each time. Same underlying question, re-worded. That points to the agent genuinely re-deriving the prompt from scratch each time (a fresh, nondeterministic model turn), not the UI re-displaying one cached prompt.

  2. The re-asks keep coming even while I stay on the page. I return, see a question, answer it. About a minute later I see the same question re-phrased — answer again. A minute after that, another rephrasing — and so on. Since I never left the page after the first answer, a plain "re-run on user revisit" explanation doesn't fit: something is re-triggering the turn without my interaction.

  3. The number of repeats scales with idle time. Come back within an hour and it might re-show once. Start in the morning and return in the evening and it can re-show 3–4 times.

Putting those together, my best guess at the cause: something on the backend is periodically "resurrecting" / re-invoking the idle session on its own (a keepalive, heartbeat, or scheduler waking it), and each wake re-executes the pending turn and re-emits the interactive prompt — with no user on the receiving end. Those unanswered re-emissions appear to accumulate (roughly one per wake, hence proportional to idle duration), so when I finally return I have a backlog of stacked prompts to clear one at a time, and my earlier answers — given to prompt instances that were subsequently superseded — are dropped. That would explain all four observations: the re-wording, the count scaling with idle time, the re-asks continuing while I sit on the page, and the silent loss of answers I already gave.

Steps to reproduce

  1. On Claude Code web, start a session and get the agent to a pending interactive prompt — a plan awaiting approval in plan mode, or a clarifying question via AskUserQuestion.
  2. Leave the session idle for a long stretch (working across many concurrent sessions makes this natural). Longer idle = more repeats, so an all-day gap shows the effect most clearly.
  3. Return and answer the prompt (Accept the plan / answer the question).
  4. Observe: after ~a minute of backend churn the same prompt re-appears — a plan re-presented identically, or a question re-asked with slightly different wording — even though you never left the page.
  5. Answer again; it can re-appear again. The number of times roughly tracks how long the session sat idle (≈1 within an hour, 3–4 over a full day).
  6. Reviewed plans / detailed answers given to the superseded prompt instances are lost, not applied.

Expected behavior

  • An idle session should not re-execute its pending turn on its own. If a keepalive/heartbeat touches an idle session, it must not re-run the model or re-emit the pending interactive prompt.
  • When the user answers a pending plan-approval / question, that response should be consumed exactly once and the session should proceed — exit plan mode into implementation, or continue with the answered question.
  • A user's reviewed plan approval and written answers must never be silently discarded.

Actual behavior

  • The pending interactive prompt is re-emitted repeatedly, apparently once per backend re-wake, with the count proportional to idle duration — even with no user present and even while the user stays on the page after their first answer.
  • Answers to the earlier (superseded) prompt instances are dropped, so carefully-written input is silently lost.
  • Clearing the backlog requires either accepting/answering repeatedly (minutes each) until it finally proceeds, or rejecting → exiting plan mode → typing "go ahead" manually, which discards the structured plan/answer.

Impact

  • Silent data loss of reviewed plans and detailed answers — the most serious part. Workaround is to draft all answers in a separate Notes app and paste them back after each re-ask.
  • Tasks stall for hours across a fleet of concurrent web sessions; both workarounds defeat the purpose of plan mode / structured questions.

Related but distinct issues (checked — none cover this)

The distinguishing combination — web UI + idle session apparently re-woken on the backend + pending plan/question prompt re-emitted N times proportional to idle duration + silent loss of the user's answers — does not appear to be reported yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:claude-code-webClaude Code on the web. claude.com/codebugSomething isn't workingdata-lossplatform:webIssue specifically occurs on the web

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions