Feature request for product/service
Chat
Describe the request
Description:
When the Cursor renderer crashes mid-agent-turn, tool calls that had not yet
been persisted to the chat state are lost entirely on recovery. Calls that
completed are shown in the recovered session; calls that were in-flight or
still awaiting the Allow prompt are silently gone — there is no record of
what the agent was trying to do, and no way to continue from where it left
off.
Proposed change — two parts:
1. Write-ahead persistence: write all planned tool calls to the chat
state before beginning execution. If the renderer crashes, the recovered
session shows the full planned batch with per-call status (✓ completed,
⟳ in-flight,
pending approval), not just the subset that happened to
flush before the crash.
2. Crash recovery continuation: after a renderer restart that interrupts
an agent turn, offer a Continue button (or configurable auto-continue) to
re-run the incomplete portion of the batch from the first unfinished call.
Configurable options (suggested):
| Setting | Options | Default |
|---|---|---|
agent.toolCallPersistence |
before-execution / after-completion |
before-execution |
agent.crashRecovery |
prompt-to-continue / auto-continue / none |
prompt-to-continue |
What triggered this request: A renderer freeze caused by the known
MCP markdown ReDoS bug (topic #153186) interrupted a 6-call parallel batch
plus a pending WebFetch. After killing the renderer and relaunching, the
6 Discourse MCP calls appeared in the chat log but the WebFetch — still at
the Allow-prompt stage — was gone completely with no trace. A Continue button
would have allowed resuming from the pending WebFetch without re-running the
entire turn.