Claude Desktop: interrupt during in-flight response hard-kills the whole session (live background tasks included) instead of aborting gracefully

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 3, 2026

Environment:

  • Claude Desktop (macOS), Claude Code CLI 2.1.255
  • macOS Darwin 25.2.0
  • Session running with effort=max, Auto Mode enabled

What happens

Two compounding issues, both observed the evening of 2026-09-02, both correlating
with local network instability (repeated net::ERR_NETWORK_CHANGED,
net::ERR_HTTP2_PING_FAILED, net::ERR_HTTP2_PROTOCOL_ERROR in main.log roughly
every 10-20 min from 18:00 onward):

1. Interrupt/new-message sent while a response is still in flight causes a full session teardown instead of a graceful abort.

query.interrupt() does not resolve within its 1500ms budget. The app then
falls back to a hard stopSession instead of a graceful abort, tearing down
the entire session, including any live background sub-agent tasks (observed
instances killed 1, 8, and 11 live tasks respectively), then silently resumes
the session seconds later. Any in-progress agent output generated between the
kill and the resume is lost and never delivered to the user.

Representative log line (main.log):

query.interrupt() did not resolve within 1500ms for <sessionId>
(hadFirstResponse=true); falling back to stopSession. SDK abort not
honoured pre-first-byte — see withRetry.

Observed at 18:38:07, 19:16:53, 19:40:41, and 19:42:16 local time, across two
different sessions, and it recurred after switching models mid-session
(Fable 5.1 -> Sonnet 5), so it isn't model-specific.

2. Auto Mode's per-tool-call safety-classifier request is aborting outright.

ERROR: Request was aborted., logged in auto-mode-classifier-error.txt at
2026-09-02T23:41:57.792Z, i.e. inside the same window as the teardown above.
This surfaces to the user as "Request failed · Retrying (2/10) · 24s" with no
forward progress and no clear error shown in the UI.

Impact

  • Minutes of apparent unresponsiveness with no user-visible error.
  • In-progress background sub-agent work is silently destroyed on every

interrupt-during-flight, forcing the agent to rediscover and redo lost work
after resume.

  • Possibly related: after a resume, chat messages have appeared to the user

out of chronological order in the UI, consistent with the transcript being
reloaded (1000+ messages) mid-session.

Request

Graceful abort should not fall back to a full session teardown that kills
unrelated live background tasks, and the safety-classifier's own network
failures shouldn't surface as an opaque silent retry loop.

View original on GitHub ↗