Skip to content

Commit 9bf349c

Browse files
authored
fix(cursor): preserve internal agent errors without transport labels (#11365)
1 parent 0118b52 commit 9bf349c

2 files changed

Lines changed: 4 additions & 1 deletion

File tree

apps/server/src/provider/acp/CursorTransportFailure.test.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ describe("CursorTransportFailure", () => {
3838
"Error: ConnectError: [unauthenticated] sign in",
3939
"Error: ConnectError: [permission_denied] subscription required",
4040
"Error: HTTP 500 from the application being debugged",
41+
"Error: RetriableError: [internal] Failed to run step, exceeded max retries",
42+
"Error: RetriableError: [internal] Failed to run step, exceeded max retries\n at step (cli.js:1:2)",
4143
])("preserves prose, code and non-transport errors: %s", (message) => {
4244
expect(failureFor([...message])).toBeUndefined();
4345
});

apps/server/src/provider/acp/CursorTransportFailure.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const maxLineLength = 4096;
2+
// Cursor also uses RetriableError for agent-loop failures; preserve those diagnostics.
23
const transportError =
3-
/^Error: (?:RetriableError: .+|ConnectError: \[(?:unavailable|aborted|deadline_exceeded)\].*)$/;
4+
/^Error: (?:RetriableError: (?!\[internal\]).+|ConnectError: \[(?:unavailable|aborted|deadline_exceeded)\].*)$/;
45
const serverError = "Something went wrong communicating with the server. Please try again.";
56

67
interface ReplyState {

0 commit comments

Comments
 (0)