@trigger.dev/sdk 4.5.14 → 4.5.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/commonjs/v3/ai-shared.d.ts +7 -0
  2. package/dist/commonjs/v3/ai-shared.js +15 -0
  3. package/dist/commonjs/v3/ai-shared.js.map +1 -1
  4. package/dist/commonjs/v3/ai.d.ts +11 -1
  5. package/dist/commonjs/v3/ai.js +11 -3
  6. package/dist/commonjs/v3/ai.js.map +1 -1
  7. package/dist/commonjs/v3/chat-client.js +1 -1
  8. package/dist/commonjs/v3/chat-client.js.map +1 -1
  9. package/dist/commonjs/v3/chat-server.d.ts +2 -1
  10. package/dist/commonjs/v3/chat-server.js +3 -3
  11. package/dist/commonjs/v3/chat-server.js.map +1 -1
  12. package/dist/commonjs/v3/sessions.d.ts +42 -13
  13. package/dist/commonjs/v3/sessions.js +85 -16
  14. package/dist/commonjs/v3/sessions.js.map +1 -1
  15. package/dist/commonjs/version.js +1 -1
  16. package/dist/esm/v3/ai-shared.d.ts +7 -0
  17. package/dist/esm/v3/ai-shared.js +14 -0
  18. package/dist/esm/v3/ai-shared.js.map +1 -1
  19. package/dist/esm/v3/ai.d.ts +11 -1
  20. package/dist/esm/v3/ai.js +12 -4
  21. package/dist/esm/v3/ai.js.map +1 -1
  22. package/dist/esm/v3/chat-client.js +2 -2
  23. package/dist/esm/v3/chat-client.js.map +1 -1
  24. package/dist/esm/v3/chat-server.d.ts +2 -1
  25. package/dist/esm/v3/chat-server.js +3 -3
  26. package/dist/esm/v3/chat-server.js.map +1 -1
  27. package/dist/esm/v3/sessions.d.ts +42 -13
  28. package/dist/esm/v3/sessions.js +85 -16
  29. package/dist/esm/v3/sessions.js.map +1 -1
  30. package/dist/esm/version.js +1 -1
  31. package/docs/ai-chat/reference.mdx +1 -1
  32. package/docs/ai-chat/sessions.mdx +1 -1
  33. package/docs/ai-chat/side-channels.mdx +172 -0
  34. package/docs/mcp-tools.mdx +37 -0
  35. package/docs/realtime/react-hooks/session-stream.mdx +17 -0
  36. package/package.json +5 -2
  37. package/dist/commonjs/v3/auth.test.d.ts +0 -1
  38. package/dist/commonjs/v3/auth.test.js +0 -149
  39. package/dist/commonjs/v3/auth.test.js.map +0 -1
  40. package/dist/commonjs/v3/batchDebounce.test.d.ts +0 -1
  41. package/dist/commonjs/v3/batchDebounce.test.js +0 -189
  42. package/dist/commonjs/v3/batchDebounce.test.js.map +0 -1
  43. package/dist/commonjs/v3/chat-server.test.d.ts +0 -1
  44. package/dist/commonjs/v3/chat-server.test.js +0 -713
  45. package/dist/commonjs/v3/chat-server.test.js.map +0 -1
  46. package/dist/commonjs/v3/chat-tab-coordinator.test.d.ts +0 -1
  47. package/dist/commonjs/v3/chat-tab-coordinator.test.js +0 -140
  48. package/dist/commonjs/v3/chat-tab-coordinator.test.js.map +0 -1
  49. package/dist/commonjs/v3/chat.test.d.ts +0 -1
  50. package/dist/commonjs/v3/chat.test.js +0 -1838
  51. package/dist/commonjs/v3/chat.test.js.map +0 -1
  52. package/dist/commonjs/v3/createStartSessionAction.test.d.ts +0 -1
  53. package/dist/commonjs/v3/createStartSessionAction.test.js +0 -176
  54. package/dist/commonjs/v3/createStartSessionAction.test.js.map +0 -1
  55. package/dist/commonjs/v3/runs-bulk.test.d.ts +0 -1
  56. package/dist/commonjs/v3/runs-bulk.test.js +0 -141
  57. package/dist/commonjs/v3/runs-bulk.test.js.map +0 -1
  58. package/dist/commonjs/v3/schedules/index.test.d.ts +0 -1
  59. package/dist/commonjs/v3/schedules/index.test.js +0 -49
  60. package/dist/commonjs/v3/schedules/index.test.js.map +0 -1
  61. package/dist/commonjs/v3/schedules/index.types.test.d.ts +0 -1
  62. package/dist/commonjs/v3/schedules/index.types.test.js +0 -93
  63. package/dist/commonjs/v3/schedules/index.types.test.js.map +0 -1
  64. package/dist/commonjs/v3/sessions.test.d.ts +0 -1
  65. package/dist/commonjs/v3/sessions.test.js +0 -154
  66. package/dist/commonjs/v3/sessions.test.js.map +0 -1
  67. package/dist/commonjs/v3/shared.test.d.ts +0 -1
  68. package/dist/commonjs/v3/shared.test.js +0 -236
  69. package/dist/commonjs/v3/shared.test.js.map +0 -1
  70. package/dist/commonjs/v3/streams.test.d.ts +0 -1
  71. package/dist/commonjs/v3/streams.test.js +0 -51
  72. package/dist/commonjs/v3/streams.test.js.map +0 -1
  73. package/dist/commonjs/v3/triggerClient.test.d.ts +0 -1
  74. package/dist/commonjs/v3/triggerClient.test.js +0 -226
  75. package/dist/commonjs/v3/triggerClient.test.js.map +0 -1
  76. package/dist/commonjs/v3/triggerClient.types.test.d.ts +0 -1
  77. package/dist/commonjs/v3/triggerClient.types.test.js +0 -123
  78. package/dist/commonjs/v3/triggerClient.types.test.js.map +0 -1
  79. package/dist/esm/v3/auth.test.d.ts +0 -1
  80. package/dist/esm/v3/auth.test.js +0 -147
  81. package/dist/esm/v3/auth.test.js.map +0 -1
  82. package/dist/esm/v3/batchDebounce.test.d.ts +0 -1
  83. package/dist/esm/v3/batchDebounce.test.js +0 -187
  84. package/dist/esm/v3/batchDebounce.test.js.map +0 -1
  85. package/dist/esm/v3/chat-server.test.d.ts +0 -1
  86. package/dist/esm/v3/chat-server.test.js +0 -711
  87. package/dist/esm/v3/chat-server.test.js.map +0 -1
  88. package/dist/esm/v3/chat-tab-coordinator.test.d.ts +0 -1
  89. package/dist/esm/v3/chat-tab-coordinator.test.js +0 -138
  90. package/dist/esm/v3/chat-tab-coordinator.test.js.map +0 -1
  91. package/dist/esm/v3/chat.test.d.ts +0 -1
  92. package/dist/esm/v3/chat.test.js +0 -1836
  93. package/dist/esm/v3/chat.test.js.map +0 -1
  94. package/dist/esm/v3/createStartSessionAction.test.d.ts +0 -1
  95. package/dist/esm/v3/createStartSessionAction.test.js +0 -174
  96. package/dist/esm/v3/createStartSessionAction.test.js.map +0 -1
  97. package/dist/esm/v3/runs-bulk.test.d.ts +0 -1
  98. package/dist/esm/v3/runs-bulk.test.js +0 -139
  99. package/dist/esm/v3/runs-bulk.test.js.map +0 -1
  100. package/dist/esm/v3/schedules/index.test.d.ts +0 -1
  101. package/dist/esm/v3/schedules/index.test.js +0 -47
  102. package/dist/esm/v3/schedules/index.test.js.map +0 -1
  103. package/dist/esm/v3/schedules/index.types.test.d.ts +0 -1
  104. package/dist/esm/v3/schedules/index.types.test.js +0 -91
  105. package/dist/esm/v3/schedules/index.types.test.js.map +0 -1
  106. package/dist/esm/v3/sessions.test.d.ts +0 -1
  107. package/dist/esm/v3/sessions.test.js +0 -152
  108. package/dist/esm/v3/sessions.test.js.map +0 -1
  109. package/dist/esm/v3/shared.test.d.ts +0 -1
  110. package/dist/esm/v3/shared.test.js +0 -234
  111. package/dist/esm/v3/shared.test.js.map +0 -1
  112. package/dist/esm/v3/streams.test.d.ts +0 -1
  113. package/dist/esm/v3/streams.test.js +0 -49
  114. package/dist/esm/v3/streams.test.js.map +0 -1
  115. package/dist/esm/v3/triggerClient.test.d.ts +0 -1
  116. package/dist/esm/v3/triggerClient.test.js +0 -224
  117. package/dist/esm/v3/triggerClient.test.js.map +0 -1
  118. package/dist/esm/v3/triggerClient.types.test.d.ts +0 -1
  119. package/dist/esm/v3/triggerClient.types.test.js +0 -88
  120. package/dist/esm/v3/triggerClient.types.test.js.map +0 -1
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const index_js_1 = require("./index.js");
5
- function assertDeclarativeScheduleWindowTypes() {
6
- (0, index_js_1.task)({
7
- id: "valid-window",
8
- cron: { pattern: "*/5 * * * *", window: "30m" },
9
- run: async () => undefined,
10
- });
11
- (0, index_js_1.task)({
12
- id: "runtime-window",
13
- cron: { pattern: "*/5 * * * *", window: runtimeWindow },
14
- run: async () => undefined,
15
- });
16
- (0, index_js_1.task)({
17
- id: "duration-too-large",
18
- // @ts-expect-error Schedule windows cannot exceed 24 hours.
19
- cron: { pattern: "*/5 * * * *", window: "25h" },
20
- run: async () => undefined,
21
- });
22
- (0, index_js_1.task)({
23
- id: "percentage-too-large",
24
- // @ts-expect-error Schedule window percentages cannot exceed 100%.
25
- cron: { pattern: "*/5 * * * *", window: "101%" },
26
- run: async () => undefined,
27
- });
28
- (0, index_js_1.task)({
29
- id: "unsupported-unit",
30
- // @ts-expect-error Days are not a supported schedule-window unit.
31
- cron: { pattern: "*/5 * * * *", window: "1d" },
32
- run: async () => undefined,
33
- });
34
- (0, index_js_1.task)({
35
- id: "fractional-window",
36
- // @ts-expect-error Schedule windows must use whole numbers.
37
- cron: { pattern: "*/5 * * * *", window: "1.5m" },
38
- run: async () => undefined,
39
- });
40
- (0, index_js_1.task)({
41
- id: "negative-window",
42
- // @ts-expect-error Schedule windows must be non-negative.
43
- cron: { pattern: "*/5 * * * *", window: "-1m" },
44
- run: async () => undefined,
45
- });
46
- (0, index_js_1.task)({
47
- id: "leading-zero-window",
48
- // @ts-expect-error Schedule windows must use canonical whole numbers.
49
- cron: { pattern: "*/5 * * * *", window: "01m" },
50
- run: async () => undefined,
51
- });
52
- }
53
- function assertImperativeScheduleWindowTypes() {
54
- (0, index_js_1.create)({
55
- task: "scheduled-task",
56
- cron: "*/5 * * * *",
57
- deduplicationKey: "valid",
58
- window: "50%",
59
- });
60
- (0, index_js_1.create)({
61
- task: "scheduled-task",
62
- cron: "*/5 * * * *",
63
- deduplicationKey: "runtime",
64
- window: runtimeWindow,
65
- });
66
- (0, index_js_1.update)("schedule_123", {
67
- task: "scheduled-task",
68
- cron: "*/5 * * * *",
69
- window: "1440m",
70
- });
71
- (0, index_js_1.create)({
72
- task: "scheduled-task",
73
- cron: "*/5 * * * *",
74
- deduplicationKey: "invalid",
75
- // @ts-expect-error Schedule windows cannot exceed 24 hours.
76
- window: "1441m",
77
- });
78
- (0, index_js_1.update)("schedule_123", {
79
- task: "scheduled-task",
80
- cron: "*/5 * * * *",
81
- // @ts-expect-error Schedule windows must use a supported unit.
82
- window: "30s",
83
- });
84
- }
85
- (0, vitest_1.describe)("schedule window types", () => {
86
- (0, vitest_1.it)("validates declarative schedule literals", () => {
87
- void assertDeclarativeScheduleWindowTypes;
88
- });
89
- (0, vitest_1.it)("validates imperative schedule literals", () => {
90
- void assertImperativeScheduleWindowTypes;
91
- });
92
- });
93
- //# sourceMappingURL=index.types.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.types.test.js","sourceRoot":"","sources":["../../../../src/v3/schedules/index.types.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,154 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- // Per-test override for the stubbed SessionStreamInstance's wait() so a
5
- // test can simulate downstream writer failures (e.g. S2 auth error after
6
- // initializeSessionStream returned a stale token). Reset at the top of
7
- // each test that touches it.
8
- let stubWaitImpl;
9
- // Stub `SessionStreamInstance` so constructing a channel writer doesn't try
10
- // to reach S2. The stub still invokes the `initializeSession` callback the
11
- // channel passes in, which is the whole point: that's how the cache gets
12
- // exercised. wait() resolves immediately by default; tests can override it
13
- // via `stubWaitImpl` to verify reactive invalidation on writer failure.
14
- vitest_1.vi.mock("@trigger.dev/core/v3", async (importActual) => {
15
- const actual = (await importActual());
16
- class StubSessionStreamInstance {
17
- waitPromise;
18
- constructor(opts) {
19
- // Drain the source so the upstream tee doesn't backpressure-stall.
20
- void (async () => {
21
- const reader = opts.source.getReader();
22
- try {
23
- while (true) {
24
- const { done } = await reader.read();
25
- if (done)
26
- break;
27
- }
28
- }
29
- finally {
30
- reader.releaseLock();
31
- }
32
- })();
33
- // Trigger the initializeSession callback so the cache path runs.
34
- opts.initializeSession?.().catch(() => {
35
- // Failures are observed via the spy; swallow here so unhandled
36
- // rejection warnings don't leak through the stub.
37
- });
38
- // Capture the wait outcome once at construction (mirrors real
39
- // SessionStreamInstance which kicks off initializeWriter from the
40
- // ctor). All subsequent wait() calls return the same promise so
41
- // a single failure is observable by every consumer in the channel
42
- // (`.finally`, reactive `.catch`, and customer `waitUntilComplete`).
43
- this.waitPromise = stubWaitImpl
44
- ? stubWaitImpl()
45
- : Promise.resolve({ lastEventId: undefined });
46
- // Claim any rejection so test runs don't surface as unhandled.
47
- // Real awaiters still observe the rejection when they `await` it.
48
- this.waitPromise.catch(() => { });
49
- }
50
- async wait() {
51
- return this.waitPromise;
52
- }
53
- get stream() {
54
- return new ReadableStream({ start: (c) => c.close() });
55
- }
56
- }
57
- return { ...actual, SessionStreamInstance: StubSessionStreamInstance };
58
- });
59
- const sessions_js_1 = require("./sessions.js");
60
- const v3_1 = require("@trigger.dev/core/v3");
61
- function installStubApiClient(impl) {
62
- const stub = { initializeSessionStream: impl };
63
- // `apiClientManager.clientOrThrow()` is what `#pipeInternal` reaches for.
64
- vitest_1.vi.spyOn(v3_1.apiClientManager, "clientOrThrow").mockReturnValue(stub);
65
- return stub;
66
- }
67
- function emptyStream() {
68
- return new ReadableStream({ start: (c) => c.close() });
69
- }
70
- (0, vitest_1.describe)("SessionOutputChannel initializeSessionStream cache", () => {
71
- (0, vitest_1.it)("dedupes repeated pipe()/writer() calls for the same channel", async () => {
72
- stubWaitImpl = undefined;
73
- const spy = vitest_1.vi.fn(async () => ({ version: "v2", headers: {} }));
74
- installStubApiClient(spy);
75
- const channel = new sessions_js_1.SessionOutputChannel("session-1");
76
- const p1 = channel.pipe(emptyStream());
77
- const p2 = channel.pipe(emptyStream());
78
- const p3 = channel.writer({
79
- execute: ({ write }) => {
80
- write({ chunk: 1 });
81
- },
82
- });
83
- await Promise.all([p1.waitUntilComplete(), p2.waitUntilComplete(), p3.waitUntilComplete()]);
84
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(1);
85
- (0, vitest_1.expect)(spy).toHaveBeenCalledWith("session-1", "out", undefined);
86
- });
87
- (0, vitest_1.it)("evicts on initialize failure so the next call retries instead of returning a poisoned entry", async () => {
88
- stubWaitImpl = undefined;
89
- const spy = vitest_1.vi
90
- .fn()
91
- .mockRejectedValueOnce(new Error("boom"))
92
- .mockResolvedValueOnce({ version: "v2", headers: {} });
93
- installStubApiClient(spy);
94
- const channel = new sessions_js_1.SessionOutputChannel("session-1");
95
- const firstAttempt = channel.pipe(emptyStream());
96
- // First call fails — the stub swallows the rejection on the
97
- // initializeSession callback, but the cache eviction handler still runs.
98
- await firstAttempt.waitUntilComplete();
99
- // Settle pending microtasks so the .catch() eviction fires.
100
- await new Promise((resolve) => setTimeout(resolve, 0));
101
- const retried = channel.pipe(emptyStream());
102
- await retried.waitUntilComplete();
103
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(2);
104
- });
105
- (0, vitest_1.it)("reset() clears cached entries so the next call re-PUTs", async () => {
106
- stubWaitImpl = undefined;
107
- const spy = vitest_1.vi.fn(async () => ({ version: "v2", headers: {} }));
108
- installStubApiClient(spy);
109
- const channel = new sessions_js_1.SessionOutputChannel("session-1");
110
- await channel.pipe(emptyStream()).waitUntilComplete();
111
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(1);
112
- channel.reset();
113
- await channel.pipe(emptyStream()).waitUntilComplete();
114
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(2);
115
- });
116
- (0, vitest_1.it)("scopes the cache per channel instance", async () => {
117
- stubWaitImpl = undefined;
118
- const spy = vitest_1.vi.fn(async () => ({ version: "v2", headers: {} }));
119
- installStubApiClient(spy);
120
- const channelA = new sessions_js_1.SessionOutputChannel("session-a");
121
- const channelB = new sessions_js_1.SessionOutputChannel("session-b");
122
- await Promise.all([
123
- channelA.pipe(emptyStream()).waitUntilComplete(),
124
- channelB.pipe(emptyStream()).waitUntilComplete(),
125
- ]);
126
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(2);
127
- (0, vitest_1.expect)(spy).toHaveBeenCalledWith("session-a", "out", undefined);
128
- (0, vitest_1.expect)(spy).toHaveBeenCalledWith("session-b", "out", undefined);
129
- });
130
- (0, vitest_1.it)("evicts the cache when a writer's wait() rejects (simulated stale-token failure)", async () => {
131
- const spy = vitest_1.vi.fn(async () => ({ version: "v2", headers: {} }));
132
- installStubApiClient(spy);
133
- // First writer's wait() rejects (e.g. S2 returned 401 after the cached
134
- // token expired mid-process); subsequent writers' wait() resolve cleanly.
135
- let waitCallCount = 0;
136
- stubWaitImpl = async () => {
137
- waitCallCount++;
138
- if (waitCallCount === 1)
139
- throw new Error("S2 auth failed: token expired");
140
- return { lastEventId: undefined };
141
- };
142
- const channel = new sessions_js_1.SessionOutputChannel("session-1");
143
- const failed = channel.pipe(emptyStream());
144
- await (0, vitest_1.expect)(failed.waitUntilComplete()).rejects.toThrow(/token expired/);
145
- // Settle microtasks so the reactive .catch eviction handler fires.
146
- await new Promise((resolve) => setTimeout(resolve, 0));
147
- const recovered = channel.pipe(emptyStream());
148
- await recovered.waitUntilComplete();
149
- // Cache evicted ⇒ second pipe() re-PUT ⇒ two distinct initialize calls.
150
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(2);
151
- stubWaitImpl = undefined;
152
- });
153
- });
154
- //# sourceMappingURL=sessions.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sessions.test.js","sourceRoot":"","sources":["../../../src/v3/sessions.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,236 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const v3_1 = require("@trigger.dev/core/v3");
4
- const vitest_1 = require("vitest");
5
- const shared_js_1 = require("./shared.js");
6
- (0, vitest_1.describe)("uniqueBatchTaskIdentifiers", () => {
7
- (0, vitest_1.it)("returns a stable, deduplicated declaration for batch creation", () => {
8
- (0, vitest_1.expect)((0, shared_js_1.uniqueBatchTaskIdentifiers)([
9
- { index: 0, task: "task-b", payload: "{}" },
10
- { index: 1, task: "task-a", payload: "{}" },
11
- { index: 2, task: "task-b", payload: "{}" },
12
- ])).toEqual(["task-a", "task-b"]);
13
- });
14
- });
15
- (0, vitest_1.describe)("offloadBatchItemPayloads", () => {
16
- // A real client is required for conditionallyExportPacket's truthy check; small payloads
17
- // short-circuit before any network call, so this never actually reaches the server.
18
- const apiClient = new v3_1.ApiClient("http://localhost:3030", "tr_dev_test");
19
- (0, vitest_1.it)("returns an empty array unchanged", async () => {
20
- (0, vitest_1.expect)(await (0, shared_js_1.offloadBatchItemPayloads)([], apiClient)).toEqual([]);
21
- });
22
- (0, vitest_1.it)("passes small payloads through and records their pre-offload byte size", async () => {
23
- const payload = JSON.stringify({ hello: "world" });
24
- const result = await (0, shared_js_1.offloadBatchItemPayloads)([{ index: 0, task: "my-task", payload, options: { payloadType: "application/json" } }], apiClient);
25
- const item = result[0];
26
- (0, vitest_1.expect)(item.payload).toBe(payload);
27
- (0, vitest_1.expect)(item.options?.payloadType).toBe("application/json");
28
- (0, vitest_1.expect)(item.options?.payloadSize).toBe(Buffer.byteLength(payload, "utf8"));
29
- });
30
- (0, vitest_1.it)("measures multi-byte payloads by byte length, not character count", async () => {
31
- const payload = "€€€"; // 3 chars, 9 bytes in UTF-8
32
- const result = await (0, shared_js_1.offloadBatchItemPayloads)([{ index: 0, task: "my-task", payload, options: { payloadType: "application/json" } }], apiClient);
33
- (0, vitest_1.expect)(result[0].options?.payloadSize).toBe(9);
34
- });
35
- (0, vitest_1.it)("leaves an already-offloaded (application/store) item untouched", async () => {
36
- const item = {
37
- index: 0,
38
- task: "my-task",
39
- payload: "trigger/my-task/123/payload.json",
40
- options: { payloadType: "application/store" },
41
- };
42
- const result = await (0, shared_js_1.offloadBatchItemPayloads)([item], apiClient);
43
- (0, vitest_1.expect)(result[0]).toEqual(item);
44
- });
45
- (0, vitest_1.it)("leaves items without a string payload untouched", async () => {
46
- const item = { index: 0, task: "my-task", options: {} };
47
- const result = await (0, shared_js_1.offloadBatchItemPayloads)([item], apiClient);
48
- (0, vitest_1.expect)(result[0]).toEqual(item);
49
- });
50
- });
51
- (0, vitest_1.describe)("readableStreamToAsyncIterable", () => {
52
- (0, vitest_1.it)("yields all values from the stream", async () => {
53
- const values = [1, 2, 3, 4, 5];
54
- const stream = new ReadableStream({
55
- start(controller) {
56
- for (const value of values) {
57
- controller.enqueue(value);
58
- }
59
- controller.close();
60
- },
61
- });
62
- const result = [];
63
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
64
- result.push(value);
65
- }
66
- (0, vitest_1.expect)(result).toEqual(values);
67
- });
68
- (0, vitest_1.it)("cancels the stream when consumer breaks early", async () => {
69
- let cancelCalled = false;
70
- const stream = new ReadableStream({
71
- start(controller) {
72
- controller.enqueue(1);
73
- controller.enqueue(2);
74
- controller.enqueue(3);
75
- controller.enqueue(4);
76
- controller.enqueue(5);
77
- controller.close();
78
- },
79
- cancel() {
80
- cancelCalled = true;
81
- },
82
- });
83
- const result = [];
84
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
85
- result.push(value);
86
- if (value === 2) {
87
- break; // Early termination
88
- }
89
- }
90
- (0, vitest_1.expect)(result).toEqual([1, 2]);
91
- (0, vitest_1.expect)(cancelCalled).toBe(true);
92
- });
93
- (0, vitest_1.it)("cancels the stream when consumer throws an error", async () => {
94
- let cancelCalled = false;
95
- const stream = new ReadableStream({
96
- start(controller) {
97
- controller.enqueue(1);
98
- controller.enqueue(2);
99
- controller.enqueue(3);
100
- controller.close();
101
- },
102
- cancel() {
103
- cancelCalled = true;
104
- },
105
- });
106
- const result = [];
107
- const testError = new Error("Test error");
108
- await (0, vitest_1.expect)(async () => {
109
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
110
- result.push(value);
111
- if (value === 2) {
112
- throw testError;
113
- }
114
- }
115
- }).rejects.toThrow(testError);
116
- (0, vitest_1.expect)(result).toEqual([1, 2]);
117
- (0, vitest_1.expect)(cancelCalled).toBe(true);
118
- });
119
- (0, vitest_1.it)("handles stream that produces values asynchronously", async () => {
120
- const values = ["a", "b", "c"];
121
- let index = 0;
122
- const stream = new ReadableStream({
123
- async pull(controller) {
124
- if (index < values.length) {
125
- // Simulate async data production
126
- await new Promise((resolve) => setTimeout(resolve, 1));
127
- controller.enqueue(values[index]);
128
- index++;
129
- }
130
- else {
131
- controller.close();
132
- }
133
- },
134
- });
135
- const result = [];
136
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
137
- result.push(value);
138
- }
139
- (0, vitest_1.expect)(result).toEqual(values);
140
- });
141
- (0, vitest_1.it)("cancels async stream when consumer breaks early", async () => {
142
- let cancelCalled = false;
143
- let producedCount = 0;
144
- const stream = new ReadableStream({
145
- async pull(controller) {
146
- // Simulate async data production
147
- await new Promise((resolve) => setTimeout(resolve, 1));
148
- producedCount++;
149
- controller.enqueue(producedCount);
150
- // Never close - infinite stream
151
- },
152
- cancel() {
153
- cancelCalled = true;
154
- },
155
- });
156
- const result = [];
157
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
158
- result.push(value);
159
- if (value >= 3) {
160
- break;
161
- }
162
- }
163
- (0, vitest_1.expect)(result).toEqual([1, 2, 3]);
164
- (0, vitest_1.expect)(cancelCalled).toBe(true);
165
- });
166
- (0, vitest_1.it)("does not throw when cancelling an already-closed stream", async () => {
167
- const stream = new ReadableStream({
168
- start(controller) {
169
- controller.enqueue(1);
170
- controller.close();
171
- },
172
- });
173
- // Normal iteration should complete without errors
174
- const result = [];
175
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
176
- result.push(value);
177
- }
178
- (0, vitest_1.expect)(result).toEqual([1]);
179
- });
180
- (0, vitest_1.it)("does not throw when cancelling an errored stream", async () => {
181
- const streamError = new Error("Stream error");
182
- let errorIndex = 0;
183
- const stream = new ReadableStream({
184
- pull(controller) {
185
- errorIndex++;
186
- if (errorIndex <= 2) {
187
- controller.enqueue(errorIndex);
188
- }
189
- else {
190
- controller.error(streamError);
191
- }
192
- },
193
- });
194
- const result = [];
195
- // The stream error should propagate
196
- await (0, vitest_1.expect)(async () => {
197
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
198
- result.push(value);
199
- }
200
- }).rejects.toThrow(streamError);
201
- // We should have gotten the values before the error
202
- (0, vitest_1.expect)(result).toEqual([1, 2]);
203
- });
204
- (0, vitest_1.it)("signals upstream producer to stop via cancel", async () => {
205
- const producedValues = [];
206
- let isProducing = true;
207
- const stream = new ReadableStream({
208
- async pull(controller) {
209
- if (!isProducing)
210
- return;
211
- await new Promise((resolve) => setTimeout(resolve, 5));
212
- const value = producedValues.length + 1;
213
- producedValues.push(value);
214
- controller.enqueue(value);
215
- },
216
- cancel() {
217
- isProducing = false;
218
- },
219
- });
220
- const consumed = [];
221
- for await (const value of (0, shared_js_1.readableStreamToAsyncIterable)(stream)) {
222
- consumed.push(value);
223
- if (value >= 2) {
224
- break;
225
- }
226
- }
227
- // Wait a bit to ensure no more values are produced
228
- await new Promise((resolve) => setTimeout(resolve, 20));
229
- (0, vitest_1.expect)(consumed).toEqual([1, 2]);
230
- // Producer should have stopped after cancel
231
- (0, vitest_1.expect)(isProducing).toBe(false);
232
- // No more values should have been produced after breaking
233
- (0, vitest_1.expect)(producedValues.length).toBeLessThanOrEqual(3);
234
- });
235
- });
236
- //# sourceMappingURL=shared.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shared.test.js","sourceRoot":"","sources":["../../../src/v3/shared.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const v3_1 = require("@trigger.dev/core/v3");
4
- const vitest_1 = require("vitest");
5
- const streams_js_1 = require("./streams.js");
6
- vitest_1.vi.mock("@trigger.dev/core/v3", async (importOriginal) => {
7
- const original = await importOriginal();
8
- return {
9
- ...original,
10
- taskContext: {
11
- ctx: {
12
- run: {
13
- id: "run_123",
14
- // parentTaskRunId and rootTaskRunId are undefined for root tasks
15
- },
16
- },
17
- },
18
- realtimeStreams: {
19
- pipe: vitest_1.vi.fn().mockReturnValue({
20
- wait: () => Promise.resolve(),
21
- stream: new ReadableStream(),
22
- }),
23
- },
24
- };
25
- });
26
- (0, vitest_1.describe)("streams.pipe consistency", () => {
27
- (0, vitest_1.beforeEach)(() => {
28
- vitest_1.vi.clearAllMocks();
29
- });
30
- (0, vitest_1.it)("should not throw and should use self runId when target is 'root' in a root task", async () => {
31
- const mockStream = new ReadableStream();
32
- // This should not throw anymore
33
- const { waitUntilComplete: _waitUntilComplete } = streams_js_1.streams.pipe("test-key", mockStream, {
34
- target: "root",
35
- });
36
- (0, vitest_1.expect)(v3_1.realtimeStreams.pipe).toHaveBeenCalledWith("test-key", mockStream, vitest_1.expect.objectContaining({
37
- target: "run_123",
38
- }));
39
- });
40
- (0, vitest_1.it)("should not throw and should use self runId when target is 'parent' in a root task", async () => {
41
- const mockStream = new ReadableStream();
42
- // This should not throw anymore
43
- const { waitUntilComplete: _waitUntilComplete } = streams_js_1.streams.pipe("test-key", mockStream, {
44
- target: "parent",
45
- });
46
- (0, vitest_1.expect)(v3_1.realtimeStreams.pipe).toHaveBeenCalledWith("test-key", mockStream, vitest_1.expect.objectContaining({
47
- target: "run_123",
48
- }));
49
- });
50
- });
51
- //# sourceMappingURL=streams.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"streams.test.js","sourceRoot":"","sources":["../../../src/v3/streams.test.ts"],"names":[],"mappings":";;AACA,6CAAuD;AACvD,mCAA8D;AAC9D,6CAAuC;AAEvC,WAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IACvD,MAAM,QAAQ,GAAG,MAAM,cAAc,EAAe,CAAC;IACrD,OAAO;QACL,GAAG,QAAQ;QACX,WAAW,EAAE;YACX,GAAG,EAAE;gBACH,GAAG,EAAE;oBACH,EAAE,EAAE,SAAS;oBACb,iEAAiE;iBAClE;aACF;SACF;QACD,eAAe,EAAE;YACf,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;gBAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;gBAC7B,MAAM,EAAE,IAAI,cAAc,EAAE;aAC7B,CAAC;SACH;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,WAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,UAAU,GAAG,IAAI,cAAc,EAAE,CAAC;QAExC,gCAAgC;QAChC,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,oBAAO,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE;YACrF,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QAEH,IAAA,eAAM,EAAC,oBAAe,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAC/C,UAAU,EACV,UAAU,EACV,eAAM,CAAC,gBAAgB,CAAC;YACtB,MAAM,EAAE,SAAS;SAClB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;QACjG,MAAM,UAAU,GAAG,IAAI,cAAc,EAAE,CAAC;QAExC,gCAAgC;QAChC,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,oBAAO,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE;YACrF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QAEH,IAAA,eAAM,EAAC,oBAAe,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAC/C,UAAU,EACV,UAAU,EACV,eAAM,CAAC,gBAAgB,CAAC;YACtB,MAAM,EAAE,SAAS;SAClB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};