Skip to content

Commit 63454ef

Browse files
Cover repeated inactive cleanup failures without onError
Co-authored-by: Eric Allam <eric@trigger.dev>
1 parent 89ec29d commit 63454ef

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

packages/ai/src/chatTransport.test.ts

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -777,6 +777,45 @@ describe("TriggerChatTransport", function () {
777777
expect(stream).toBeNull();
778778
});
779779

780+
it("returns null on repeated inactive cleanup failures without onError callback", async function () {
781+
const runStore = new AlwaysFailCleanupDeleteRunStore();
782+
runStore.set({
783+
chatId: "chat-inactive-delete-always-no-onerror",
784+
runId: "run_inactive_delete_always_no_onerror",
785+
publicAccessToken: "pk_inactive_delete_always_no_onerror",
786+
streamKey: "chat-stream",
787+
lastEventId: "10-0",
788+
isActive: false,
789+
});
790+
791+
const transport = new TriggerChatTransport({
792+
task: "chat-task",
793+
stream: "chat-stream",
794+
accessToken: "pk_trigger",
795+
runStore,
796+
});
797+
798+
let fetchCalls = 0;
799+
(transport as any).fetchRunStream = async function fetchRunStream() {
800+
fetchCalls += 1;
801+
throw new Error("unexpected reconnect fetch");
802+
};
803+
804+
const firstReconnect = await transport.reconnectToStream({
805+
chatId: "chat-inactive-delete-always-no-onerror",
806+
});
807+
const secondReconnect = await transport.reconnectToStream({
808+
chatId: "chat-inactive-delete-always-no-onerror",
809+
});
810+
811+
expect(firstReconnect).toBeNull();
812+
expect(secondReconnect).toBeNull();
813+
expect(fetchCalls).toBe(0);
814+
expect(runStore.get("chat-inactive-delete-always-no-onerror")).toMatchObject({
815+
isActive: false,
816+
});
817+
});
818+
780819
it("returns null when inactive reconnect string cleanup delete fails without onError callback", async function () {
781820
const runStore = new FailingCleanupDeleteValueRunStore("cleanup delete string failure");
782821
runStore.set({

0 commit comments

Comments
 (0)