Skip to content

[Bug]: Cursor turns on macOS finish, then stop with "repeated resume attempts made no progress" #24226

Closed

Description

@dj-40AU

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/server

Steps to reproduce

On macOS, T3 Code Beta 0.1.2, bundled @cursor/sdk 1.0.35, Cursor provider, model claude-opus-5-5:

  1. Use a long-lived Cursor thread and send a normal agent prompt (tools, then a final answer).
  2. Let the turn finish.
  3. Watch the thread for the next ~20 seconds.

This is not tied to one prompt. The same thread hit it five times between 19:25 and 19:56 UTC on 2026-10-23. The same run.completed error is also in that thread's provider log on 2026-10-22, and in a second Cursor thread on 2026-10-20. Provider logs for Codex, Claude Code, and OpenCode sessions on this machine have zero matches.

Expected behavior

Once turn-ended has been delivered, the run completes as finished. A later retryable stream error does not resume from an older checkpoint, and the thread does not show a provider error after the answer is already on screen.

Actual behavior

The real turn ends and its text is already in the transcript. About 9–16 seconds later the SDK resumes inside the same run (no new run.start from T3), streams a short new closing from an older checkpoint, ends that turn, waits again, and does it a second time. The run then completes with:

status: error
error.message: Agent turn stopped after repeated resume attempts made no progress

T3 shows that as Provider error. The SDK's own displayInfo for this throw is title "Agent stopped retrying", detail "The connection was interrupted repeatedly without saving progress, so the agent stopped to avoid repeating the same work. Retry to continue from the last saved state."

The next user message still works, because the streamed answer was already saved. The two resumes can append a second, slightly different closing paragraph. They did not re-run the original tool calls.

All five failures this afternoon, from ~/.t3/userdata/logs/provider/events.<threadId>.log. Each run has exactly three turn-ended events and one run.completed. Both resumes share one input-token count and write no cache:

Ended (UTC) Real turn in / out / cache write Resume input, both times Resume output tokens
19:25:39 538,322 / 6,835 / 72,912 81,305 900, then 936
19:28:16 331,916 / 1,972 / 2,634 83,939 740, then 850
19:33:29 644,582 / 5,966 / 13,242 97,181 669, then 655
19:42:58 514,589 / 3,422 / 99,884 108,277 283, then 337
19:56:36 693,509 / 8,779 / 120,332 124,415 86, then 66

Example tail of run-052e00a4-4ca1-49b1-947d-93d847ad6bc3 (durationMs 588298):

19:56:17.709  turn-ended   in 693509  out 8779  cacheWrite 120332
19:56:26.720  turn-ended   in 124415  out 86    cacheWrite 0
19:56:36.652  turn-ended   in 124415  out 66    cacheWrite 0
19:56:36.837  run.completed status=error
              "Agent turn stopped after repeated resume attempts made no progress"

There are no protocol events in the gaps. The provider log does not include the SDK's [AGENT_ERROR_DIAGNOSTICS] line, so the underlying retryable error (the cause) is not visible there.

Not a duplicate of #19112 or #23412. Those are the Windows store.db path past 252 characters: no checkpoint file is created, retries resend the original action and re-execute tools, and the run ends as [internal] unable to open database file or Connection failed repeatedly. Here:

  • Host is macOS 26.6.2, so MAX_PATH does not apply.
  • The first turn-ended has a large cache write, so a checkpoint of the finished turn was produced.
  • The resumes start from a smaller, stable input-token count and write 0 cache. They regenerate a short closing. They do not replay the tool calls.
  • The thrown message is the SDK's no-progress guard, not the database or transport-cap errors.

In the bundled 1.0.35 retry loop, a retry resets the no-progress counter when handleCheckpoint saved a new checkpoint. Otherwise, if the current action is resumeAction and the attempt streamed application progress, the counter increments. At 2 it stops automatic resume and throws this message. A terminal checkpoint (ineligible_terminal_turn) would have completed the run without resuming. turn-ended reached T3, and that terminal checkpoint did not.

Impact

Major degradation or frequent failure

Version or commit

T3 Code (Beta) 0.1.2, bundled @cursor/sdk 1.0.35

Environment

macOS 26.6.2 (darwin 25.6.0), T3 Code Beta 0.1.2 desktop (Electron 44.9.3), Cursor provider, model claude-opus-5-5 (fast: false)

Logs or stack traces

See the table above. Source log: ~/.t3/userdata/logs/provider/events.<threadId>.log, events with "message":"Agent turn stopped after repeated resume attempts made no progress".

Workaround

Send another message. The answer from the first turn-ended is already in the transcript, and the error is marked retryable. There is no project-side change that avoids it.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions