@trigger.dev/core 3.1.2 → 3.2.1

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 (185) hide show
  1. package/dist/commonjs/schemas/api.d.ts +1340 -1134
  2. package/dist/commonjs/schemas/eventFilter.d.ts +4 -4
  3. package/dist/commonjs/schemas/fetch.d.ts +66 -33
  4. package/dist/commonjs/schemas/notifications.d.ts +24 -16
  5. package/dist/commonjs/schemas/requestFilter.d.ts +52 -4
  6. package/dist/commonjs/schemas/runs.d.ts +29 -13
  7. package/dist/commonjs/schemas/schedules.d.ts +8 -8
  8. package/dist/commonjs/schemas/statuses.d.ts +9 -8
  9. package/dist/commonjs/schemas/tasks.d.ts +32 -31
  10. package/dist/commonjs/schemas/triggers.d.ts +36 -36
  11. package/dist/commonjs/v3/apiClient/index.d.ts +48 -42
  12. package/dist/commonjs/v3/apiClient/index.js +19 -3
  13. package/dist/commonjs/v3/apiClient/index.js.map +1 -1
  14. package/dist/commonjs/v3/apiClient/runStream.d.ts +53 -4
  15. package/dist/commonjs/v3/apiClient/runStream.js +114 -13
  16. package/dist/commonjs/v3/apiClient/runStream.js.map +1 -1
  17. package/dist/commonjs/v3/apiClient/stream.js +24 -10
  18. package/dist/commonjs/v3/apiClient/stream.js.map +1 -1
  19. package/dist/commonjs/v3/apiClientManager/index.d.ts +1 -1
  20. package/dist/commonjs/v3/build/extensions.d.ts +1 -0
  21. package/dist/commonjs/v3/idempotencyKeys.d.ts +41 -0
  22. package/dist/commonjs/v3/idempotencyKeys.js +83 -0
  23. package/dist/commonjs/v3/idempotencyKeys.js.map +1 -0
  24. package/dist/commonjs/v3/index.d.ts +2 -0
  25. package/dist/commonjs/v3/index.js +2 -0
  26. package/dist/commonjs/v3/index.js.map +1 -1
  27. package/dist/commonjs/v3/jwt.d.ts +10 -1
  28. package/dist/commonjs/v3/jwt.js +17 -4
  29. package/dist/commonjs/v3/jwt.js.map +1 -1
  30. package/dist/commonjs/v3/runMetadata/index.d.ts +5 -0
  31. package/dist/commonjs/v3/runMetadata/index.js +15 -0
  32. package/dist/commonjs/v3/runMetadata/index.js.map +1 -1
  33. package/dist/commonjs/v3/runMetadata/manager.d.ts +13 -0
  34. package/dist/commonjs/v3/runMetadata/manager.js +174 -12
  35. package/dist/commonjs/v3/runMetadata/manager.js.map +1 -1
  36. package/dist/commonjs/v3/runMetadata/metadataStream.d.ts +21 -0
  37. package/dist/commonjs/v3/runMetadata/metadataStream.js +71 -0
  38. package/dist/commonjs/v3/runMetadata/metadataStream.js.map +1 -0
  39. package/dist/commonjs/v3/runMetadata/noopManager.d.ts +5 -0
  40. package/dist/commonjs/v3/runMetadata/noopManager.js +15 -0
  41. package/dist/commonjs/v3/runMetadata/noopManager.js.map +1 -1
  42. package/dist/commonjs/v3/runMetadata/types.d.ts +5 -0
  43. package/dist/commonjs/v3/runtime/devRuntimeManager.js.map +1 -1
  44. package/dist/commonjs/v3/schemas/api.d.ts +457 -786
  45. package/dist/commonjs/v3/schemas/build.d.ts +270 -496
  46. package/dist/commonjs/v3/schemas/common.d.ts +23 -23
  47. package/dist/commonjs/v3/schemas/eventFilter.d.ts +2 -2
  48. package/dist/commonjs/v3/schemas/fetch.d.ts +57 -45
  49. package/dist/commonjs/v3/schemas/messages.d.ts +1346 -1759
  50. package/dist/commonjs/v3/schemas/openTelemetry.d.ts +22 -22
  51. package/dist/commonjs/v3/schemas/resources.d.ts +138 -298
  52. package/dist/commonjs/v3/schemas/resources.js +1 -0
  53. package/dist/commonjs/v3/schemas/resources.js.map +1 -1
  54. package/dist/commonjs/v3/schemas/schemas.d.ts +317 -517
  55. package/dist/commonjs/v3/schemas/schemas.js +1 -0
  56. package/dist/commonjs/v3/schemas/schemas.js.map +1 -1
  57. package/dist/commonjs/v3/schemas/style.d.ts +2 -2
  58. package/dist/commonjs/v3/types/index.d.ts +1 -0
  59. package/dist/commonjs/v3/types/index.js +1 -0
  60. package/dist/commonjs/v3/types/index.js.map +1 -1
  61. package/dist/commonjs/v3/types/tasks.d.ts +20 -7
  62. package/dist/commonjs/v3/types/tasks.js.map +1 -1
  63. package/dist/commonjs/v3/types/tools.d.ts +6 -0
  64. package/dist/commonjs/v3/types/tools.js +22 -0
  65. package/dist/commonjs/v3/types/tools.js.map +1 -0
  66. package/dist/commonjs/v3/utils/getEnv.d.ts +1 -1
  67. package/dist/commonjs/v3/utils/getEnv.js +3 -3
  68. package/dist/commonjs/v3/utils/getEnv.js.map +1 -1
  69. package/dist/commonjs/v3/utils/globals.d.ts +2 -0
  70. package/dist/commonjs/v3/utils/globals.js.map +1 -1
  71. package/dist/commonjs/v3/utils/ioSerialization.d.ts +8 -3
  72. package/dist/commonjs/v3/utils/ioSerialization.js +43 -36
  73. package/dist/commonjs/v3/utils/ioSerialization.js.map +1 -1
  74. package/dist/commonjs/v3/wait-until-api.d.ts +2 -0
  75. package/dist/commonjs/v3/wait-until-api.js +8 -0
  76. package/dist/commonjs/v3/wait-until-api.js.map +1 -0
  77. package/dist/commonjs/v3/waitUntil/index.d.ts +11 -0
  78. package/dist/commonjs/v3/waitUntil/index.js +44 -0
  79. package/dist/commonjs/v3/waitUntil/index.js.map +1 -0
  80. package/dist/commonjs/v3/waitUntil/manager.d.ts +8 -0
  81. package/dist/commonjs/v3/waitUntil/manager.js +28 -0
  82. package/dist/commonjs/v3/waitUntil/manager.js.map +1 -0
  83. package/dist/commonjs/v3/waitUntil/types.d.ts +9 -0
  84. package/dist/commonjs/v3/waitUntil/types.js +3 -0
  85. package/dist/commonjs/v3/waitUntil/types.js.map +1 -0
  86. package/dist/commonjs/v3/workers/index.d.ts +1 -0
  87. package/dist/commonjs/v3/workers/index.js +3 -1
  88. package/dist/commonjs/v3/workers/index.js.map +1 -1
  89. package/dist/commonjs/v3/workers/taskExecutor.js +13 -0
  90. package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
  91. package/dist/commonjs/v3/zodMessageHandler.d.ts +1 -1
  92. package/dist/commonjs/version.js +1 -1
  93. package/dist/esm/schemas/api.d.ts +1340 -1134
  94. package/dist/esm/schemas/eventFilter.d.ts +4 -4
  95. package/dist/esm/schemas/fetch.d.ts +66 -33
  96. package/dist/esm/schemas/notifications.d.ts +24 -16
  97. package/dist/esm/schemas/requestFilter.d.ts +52 -4
  98. package/dist/esm/schemas/runs.d.ts +29 -13
  99. package/dist/esm/schemas/schedules.d.ts +8 -8
  100. package/dist/esm/schemas/statuses.d.ts +9 -8
  101. package/dist/esm/schemas/tasks.d.ts +32 -31
  102. package/dist/esm/schemas/triggers.d.ts +36 -36
  103. package/dist/esm/v3/apiClient/index.d.ts +48 -42
  104. package/dist/esm/v3/apiClient/index.js +19 -3
  105. package/dist/esm/v3/apiClient/index.js.map +1 -1
  106. package/dist/esm/v3/apiClient/runStream.d.ts +53 -4
  107. package/dist/esm/v3/apiClient/runStream.js +111 -12
  108. package/dist/esm/v3/apiClient/runStream.js.map +1 -1
  109. package/dist/esm/v3/apiClient/stream.js +24 -10
  110. package/dist/esm/v3/apiClient/stream.js.map +1 -1
  111. package/dist/esm/v3/apiClientManager/index.d.ts +1 -1
  112. package/dist/esm/v3/build/extensions.d.ts +1 -0
  113. package/dist/esm/v3/idempotencyKeys.d.ts +41 -0
  114. package/dist/esm/v3/idempotencyKeys.js +78 -0
  115. package/dist/esm/v3/idempotencyKeys.js.map +1 -0
  116. package/dist/esm/v3/index.d.ts +2 -0
  117. package/dist/esm/v3/index.js +2 -0
  118. package/dist/esm/v3/index.js.map +1 -1
  119. package/dist/esm/v3/jwt.d.ts +10 -1
  120. package/dist/esm/v3/jwt.js +17 -4
  121. package/dist/esm/v3/jwt.js.map +1 -1
  122. package/dist/esm/v3/runMetadata/index.d.ts +5 -0
  123. package/dist/esm/v3/runMetadata/index.js +15 -0
  124. package/dist/esm/v3/runMetadata/index.js.map +1 -1
  125. package/dist/esm/v3/runMetadata/manager.d.ts +13 -0
  126. package/dist/esm/v3/runMetadata/manager.js +174 -12
  127. package/dist/esm/v3/runMetadata/manager.js.map +1 -1
  128. package/dist/esm/v3/runMetadata/metadataStream.d.ts +21 -0
  129. package/dist/esm/v3/runMetadata/metadataStream.js +67 -0
  130. package/dist/esm/v3/runMetadata/metadataStream.js.map +1 -0
  131. package/dist/esm/v3/runMetadata/noopManager.d.ts +5 -0
  132. package/dist/esm/v3/runMetadata/noopManager.js +15 -0
  133. package/dist/esm/v3/runMetadata/noopManager.js.map +1 -1
  134. package/dist/esm/v3/runMetadata/types.d.ts +5 -0
  135. package/dist/esm/v3/runtime/devRuntimeManager.js.map +1 -1
  136. package/dist/esm/v3/schemas/api.d.ts +457 -786
  137. package/dist/esm/v3/schemas/build.d.ts +270 -496
  138. package/dist/esm/v3/schemas/common.d.ts +23 -23
  139. package/dist/esm/v3/schemas/eventFilter.d.ts +2 -2
  140. package/dist/esm/v3/schemas/fetch.d.ts +57 -45
  141. package/dist/esm/v3/schemas/messages.d.ts +1346 -1759
  142. package/dist/esm/v3/schemas/openTelemetry.d.ts +22 -22
  143. package/dist/esm/v3/schemas/resources.d.ts +138 -298
  144. package/dist/esm/v3/schemas/resources.js +1 -0
  145. package/dist/esm/v3/schemas/resources.js.map +1 -1
  146. package/dist/esm/v3/schemas/schemas.d.ts +317 -517
  147. package/dist/esm/v3/schemas/schemas.js +1 -0
  148. package/dist/esm/v3/schemas/schemas.js.map +1 -1
  149. package/dist/esm/v3/schemas/style.d.ts +2 -2
  150. package/dist/esm/v3/types/index.d.ts +1 -0
  151. package/dist/esm/v3/types/index.js +1 -0
  152. package/dist/esm/v3/types/index.js.map +1 -1
  153. package/dist/esm/v3/types/tasks.d.ts +20 -7
  154. package/dist/esm/v3/types/tasks.js.map +1 -1
  155. package/dist/esm/v3/types/tools.d.ts +6 -0
  156. package/dist/esm/v3/types/tools.js +19 -0
  157. package/dist/esm/v3/types/tools.js.map +1 -0
  158. package/dist/esm/v3/utils/getEnv.d.ts +1 -1
  159. package/dist/esm/v3/utils/getEnv.js +3 -3
  160. package/dist/esm/v3/utils/getEnv.js.map +1 -1
  161. package/dist/esm/v3/utils/globals.d.ts +2 -0
  162. package/dist/esm/v3/utils/globals.js.map +1 -1
  163. package/dist/esm/v3/utils/ioSerialization.d.ts +8 -3
  164. package/dist/esm/v3/utils/ioSerialization.js +43 -36
  165. package/dist/esm/v3/utils/ioSerialization.js.map +1 -1
  166. package/dist/esm/v3/wait-until-api.d.ts +2 -0
  167. package/dist/esm/v3/wait-until-api.js +5 -0
  168. package/dist/esm/v3/wait-until-api.js.map +1 -0
  169. package/dist/esm/v3/waitUntil/index.d.ts +11 -0
  170. package/dist/esm/v3/waitUntil/index.js +40 -0
  171. package/dist/esm/v3/waitUntil/index.js.map +1 -0
  172. package/dist/esm/v3/waitUntil/manager.d.ts +8 -0
  173. package/dist/esm/v3/waitUntil/manager.js +24 -0
  174. package/dist/esm/v3/waitUntil/manager.js.map +1 -0
  175. package/dist/esm/v3/waitUntil/types.d.ts +9 -0
  176. package/dist/esm/v3/waitUntil/types.js +2 -0
  177. package/dist/esm/v3/waitUntil/types.js.map +1 -0
  178. package/dist/esm/v3/workers/index.d.ts +1 -0
  179. package/dist/esm/v3/workers/index.js +1 -0
  180. package/dist/esm/v3/workers/index.js.map +1 -1
  181. package/dist/esm/v3/workers/taskExecutor.js +14 -1
  182. package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
  183. package/dist/esm/v3/zodMessageHandler.d.ts +1 -1
  184. package/dist/esm/version.js +1 -1
  185. package/package.json +7 -3
@@ -3,12 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StandardMetadataManager = void 0;
4
4
  const path_1 = require("@jsonhero/path");
5
5
  const lite_1 = require("dequal/lite");
6
- const apiClientManager_api_js_1 = require("../apiClientManager-api.js");
7
- const task_context_api_js_1 = require("../task-context-api.js");
6
+ const metadataStream_js_1 = require("./metadataStream.js");
7
+ const MAXIMUM_ACTIVE_STREAMS = 2;
8
+ const MAXIMUM_TOTAL_STREAMS = 5;
8
9
  class StandardMetadataManager {
10
+ apiClient;
11
+ streamsBaseUrl;
9
12
  flushTimeoutId = null;
10
13
  hasChanges = false;
11
14
  store;
15
+ // Add a Map to track active streams
16
+ activeStreams = new Map();
17
+ runId;
18
+ constructor(apiClient, streamsBaseUrl) {
19
+ this.apiClient = apiClient;
20
+ this.streamsBaseUrl = streamsBaseUrl;
21
+ }
12
22
  enterWithMetadata(metadata) {
13
23
  this.store = metadata ?? {};
14
24
  }
@@ -19,8 +29,7 @@ class StandardMetadataManager {
19
29
  return this.store?.[key];
20
30
  }
21
31
  setKey(key, value) {
22
- const runId = task_context_api_js_1.taskContext.ctx?.run.id;
23
- if (!runId) {
32
+ if (!this.runId) {
24
33
  return;
25
34
  }
26
35
  let nextStore = this.store
@@ -45,8 +54,7 @@ class StandardMetadataManager {
45
54
  this.store = nextStore;
46
55
  }
47
56
  deleteKey(key) {
48
- const runId = task_context_api_js_1.taskContext.ctx?.run.id;
49
- if (!runId) {
57
+ if (!this.runId) {
50
58
  return;
51
59
  }
52
60
  const nextStore = { ...(this.store ?? {}) };
@@ -56,9 +64,102 @@ class StandardMetadataManager {
56
64
  }
57
65
  this.store = nextStore;
58
66
  }
67
+ appendKey(key, value) {
68
+ if (!this.runId) {
69
+ return;
70
+ }
71
+ let nextStore = this.store
72
+ ? structuredClone(this.store)
73
+ : {};
74
+ if (key.startsWith("$.")) {
75
+ const path = new path_1.JSONHeroPath(key);
76
+ const currentValue = path.first(nextStore);
77
+ if (currentValue === undefined) {
78
+ // Initialize as array with single item
79
+ path.set(nextStore, [value]);
80
+ }
81
+ else if (Array.isArray(currentValue)) {
82
+ // Append to existing array
83
+ path.set(nextStore, [...currentValue, value]);
84
+ }
85
+ else {
86
+ // Convert to array if not already
87
+ path.set(nextStore, [currentValue, value]);
88
+ }
89
+ }
90
+ else {
91
+ const currentValue = nextStore[key];
92
+ if (currentValue === undefined) {
93
+ // Initialize as array with single item
94
+ nextStore[key] = [value];
95
+ }
96
+ else if (Array.isArray(currentValue)) {
97
+ // Append to existing array
98
+ nextStore[key] = [...currentValue, value];
99
+ }
100
+ else {
101
+ // Convert to array if not already
102
+ nextStore[key] = [currentValue, value];
103
+ }
104
+ }
105
+ if (!(0, lite_1.dequal)(this.store, nextStore)) {
106
+ this.hasChanges = true;
107
+ }
108
+ this.store = nextStore;
109
+ }
110
+ removeFromKey(key, value) {
111
+ if (!this.runId) {
112
+ return;
113
+ }
114
+ let nextStore = this.store
115
+ ? structuredClone(this.store)
116
+ : {};
117
+ if (key.startsWith("$.")) {
118
+ const path = new path_1.JSONHeroPath(key);
119
+ const currentValue = path.first(nextStore);
120
+ if (Array.isArray(currentValue)) {
121
+ // Remove the value from array using deep equality check
122
+ const newArray = currentValue.filter((item) => !(0, lite_1.dequal)(item, value));
123
+ path.set(nextStore, newArray);
124
+ }
125
+ }
126
+ else {
127
+ const currentValue = nextStore[key];
128
+ if (Array.isArray(currentValue)) {
129
+ // Remove the value from array using deep equality check
130
+ nextStore[key] = currentValue.filter((item) => !(0, lite_1.dequal)(item, value));
131
+ }
132
+ }
133
+ if (!(0, lite_1.dequal)(this.store, nextStore)) {
134
+ this.hasChanges = true;
135
+ }
136
+ this.store = nextStore;
137
+ }
138
+ incrementKey(key, increment = 1) {
139
+ if (!this.runId) {
140
+ return;
141
+ }
142
+ let nextStore = this.store ? structuredClone(this.store) : {};
143
+ let currentValue = key.startsWith("$.")
144
+ ? new path_1.JSONHeroPath(key).first(nextStore)
145
+ : nextStore[key];
146
+ const newValue = (typeof currentValue === "number" ? currentValue : 0) + increment;
147
+ if (key.startsWith("$.")) {
148
+ new path_1.JSONHeroPath(key).set(nextStore, newValue);
149
+ }
150
+ else {
151
+ nextStore[key] = newValue;
152
+ }
153
+ if (!(0, lite_1.dequal)(this.store, nextStore)) {
154
+ this.hasChanges = true;
155
+ this.store = nextStore;
156
+ }
157
+ }
158
+ decrementKey(key, decrement = 1) {
159
+ this.incrementKey(key, -decrement);
160
+ }
59
161
  update(metadata) {
60
- const runId = task_context_api_js_1.taskContext.ctx?.run.id;
61
- if (!runId) {
162
+ if (!this.runId) {
62
163
  return;
63
164
  }
64
165
  if (!(0, lite_1.dequal)(this.store, metadata)) {
@@ -66,9 +167,71 @@ class StandardMetadataManager {
66
167
  }
67
168
  this.store = metadata;
68
169
  }
170
+ async stream(key, value, signal) {
171
+ const $value = value;
172
+ if (!this.runId) {
173
+ return $value;
174
+ }
175
+ // Check to make sure we haven't exceeded the max number of active streams
176
+ if (this.activeStreams.size >= MAXIMUM_ACTIVE_STREAMS) {
177
+ console.warn(`Exceeded the maximum number of active streams (${MAXIMUM_ACTIVE_STREAMS}). The "${key}" stream will be ignored.`);
178
+ return $value;
179
+ }
180
+ // Check to make sure we haven't exceeded the max number of total streams
181
+ const streams = (this.store?.$$streams ?? []);
182
+ if (streams.length >= MAXIMUM_TOTAL_STREAMS) {
183
+ console.warn(`Exceeded the maximum number of total streams (${MAXIMUM_TOTAL_STREAMS}). The "${key}" stream will be ignored.`);
184
+ return $value;
185
+ }
186
+ try {
187
+ // Add the key to the special stream metadata object
188
+ this.appendKey(`$$streams`, key);
189
+ await this.flush();
190
+ const streamInstance = new metadataStream_js_1.MetadataStream({
191
+ key,
192
+ runId: this.runId,
193
+ iterator: $value[Symbol.asyncIterator](),
194
+ baseUrl: this.streamsBaseUrl,
195
+ signal,
196
+ });
197
+ this.activeStreams.set(key, streamInstance);
198
+ // Clean up when stream completes
199
+ streamInstance.wait().finally(() => this.activeStreams.delete(key));
200
+ return streamInstance;
201
+ }
202
+ catch (error) {
203
+ // Clean up metadata key if stream creation fails
204
+ this.deleteKey(`$$stream.${key}`);
205
+ throw error;
206
+ }
207
+ }
208
+ hasActiveStreams() {
209
+ return this.activeStreams.size > 0;
210
+ }
211
+ // Waits for all the streams to finish
212
+ async waitForAllStreams(timeout = 60_000) {
213
+ if (this.activeStreams.size === 0) {
214
+ return;
215
+ }
216
+ const promises = Array.from(this.activeStreams.values());
217
+ try {
218
+ await Promise.race([
219
+ Promise.allSettled(promises),
220
+ new Promise((resolve, _) => setTimeout(() => resolve(), timeout)),
221
+ ]);
222
+ }
223
+ catch (error) {
224
+ console.error("Error waiting for streams to finish:", error);
225
+ // If we time out, abort all remaining streams
226
+ for (const [key, promise] of this.activeStreams.entries()) {
227
+ // We can add abort logic here if needed
228
+ this.activeStreams.delete(key);
229
+ }
230
+ throw error;
231
+ }
232
+ }
69
233
  async flush(requestOptions) {
70
- const runId = task_context_api_js_1.taskContext.ctx?.run.id;
71
- if (!runId) {
234
+ if (!this.runId) {
72
235
  return;
73
236
  }
74
237
  if (!this.store) {
@@ -77,10 +240,9 @@ class StandardMetadataManager {
77
240
  if (!this.hasChanges) {
78
241
  return;
79
242
  }
80
- const apiClient = apiClientManager_api_js_1.apiClientManager.clientOrThrow();
81
243
  try {
82
244
  this.hasChanges = false;
83
- await apiClient.updateRunMetadata(runId, { metadata: this.store }, requestOptions);
245
+ await this.apiClient.updateRunMetadata(this.runId, { metadata: this.store }, requestOptions);
84
246
  }
85
247
  catch (error) {
86
248
  this.hasChanges = true;
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export type MetadataOptions<T> = {
2
+ baseUrl: string;
3
+ runId: string;
4
+ key: string;
5
+ iterator: AsyncIterator<T>;
6
+ signal?: AbortSignal;
7
+ };
8
+ export declare class MetadataStream<T> {
9
+ private options;
10
+ private controller;
11
+ private serverQueue;
12
+ private consumerQueue;
13
+ private serverIterator;
14
+ private consumerIterator;
15
+ private streamPromise;
16
+ constructor(options: MetadataOptions<T>);
17
+ private createTeeIterators;
18
+ private initializeServerStream;
19
+ wait(): Promise<void>;
20
+ [Symbol.asyncIterator](): AsyncIterator<T, any, undefined>;
21
+ }
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MetadataStream = void 0;
4
+ class MetadataStream {
5
+ options;
6
+ controller = new AbortController();
7
+ serverQueue = [];
8
+ consumerQueue = [];
9
+ serverIterator;
10
+ consumerIterator;
11
+ streamPromise;
12
+ constructor(options) {
13
+ this.options = options;
14
+ const { serverIterator, consumerIterator } = this.createTeeIterators();
15
+ this.serverIterator = serverIterator;
16
+ this.consumerIterator = consumerIterator;
17
+ this.streamPromise = this.initializeServerStream();
18
+ }
19
+ createTeeIterators() {
20
+ const teeIterator = (queue) => ({
21
+ next: () => {
22
+ if (queue.length === 0) {
23
+ const result = this.options.iterator.next();
24
+ this.serverQueue.push(result);
25
+ this.consumerQueue.push(result);
26
+ }
27
+ return queue.shift();
28
+ },
29
+ });
30
+ return {
31
+ serverIterator: teeIterator(this.serverQueue),
32
+ consumerIterator: teeIterator(this.consumerQueue),
33
+ };
34
+ }
35
+ initializeServerStream() {
36
+ const serverIterator = this.serverIterator;
37
+ // TODO: Why is this only sending stuff to the server at the end of the run?
38
+ const serverStream = new ReadableStream({
39
+ async pull(controller) {
40
+ try {
41
+ const { value, done } = await serverIterator.next();
42
+ if (done) {
43
+ controller.close();
44
+ return;
45
+ }
46
+ controller.enqueue(JSON.stringify(value) + "\n");
47
+ }
48
+ catch (err) {
49
+ controller.error(err);
50
+ }
51
+ },
52
+ cancel: () => this.controller.abort(),
53
+ });
54
+ return fetch(`${this.options.baseUrl}/realtime/v1/streams/${this.options.runId}/${this.options.key}`, {
55
+ method: "POST",
56
+ headers: {},
57
+ body: serverStream,
58
+ // @ts-expect-error
59
+ duplex: "half",
60
+ signal: this.controller.signal,
61
+ });
62
+ }
63
+ async wait() {
64
+ return this.streamPromise.then(() => void 0);
65
+ }
66
+ [Symbol.asyncIterator]() {
67
+ return this.consumerIterator;
68
+ }
69
+ }
70
+ exports.MetadataStream = MetadataStream;
71
+ //# sourceMappingURL=metadataStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadataStream.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/metadataStream.ts"],"names":[],"mappings":";;;AAQA,MAAa,cAAc;IAQL;IAPZ,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACnC,WAAW,GAAsC,EAAE,CAAC;IACpD,aAAa,GAAsC,EAAE,CAAC;IACtD,cAAc,CAAmB;IACjC,gBAAgB,CAAmB;IACnC,aAAa,CAA2B;IAEhD,YAAoB,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QAC7C,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACvE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;IACrD,CAAC;IAEO,kBAAkB;QACxB,MAAM,WAAW,GAAG,CAAC,KAAwC,EAAoB,EAAE,CAAC,CAAC;YACnF,IAAI,EAAE,GAAG,EAAE;gBACT,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClC,CAAC;gBACD,OAAO,KAAK,CAAC,KAAK,EAAG,CAAC;YACxB,CAAC;SACF,CAAC,CAAC;QAEH,OAAO;YACL,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;YAC7C,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC;SAClD,CAAC;IACJ,CAAC;IAEO,sBAAsB;QAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAE3C,4EAA4E;QAC5E,MAAM,YAAY,GAAG,IAAI,cAAc,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,UAAU;gBACnB,IAAI,CAAC;oBACH,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;oBACpD,IAAI,IAAI,EAAE,CAAC;wBACT,UAAU,CAAC,KAAK,EAAE,CAAC;wBACnB,OAAO;oBACT,CAAC;oBAED,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YACD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;SACtC,CAAC,CAAC;QAEH,OAAO,KAAK,CACV,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,wBAAwB,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EACvF;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,YAAY;YAClB,mBAAmB;YACnB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM;SAC/B,CACF,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEM,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;CACF;AA3ED,wCA2EC"}
@@ -2,6 +2,11 @@ import { DeserializedJson } from "../../schemas/json.js";
2
2
  import { ApiRequestOptions } from "../zodfetch.js";
3
3
  import type { RunMetadataManager } from "./types.js";
4
4
  export declare class NoopRunMetadataManager implements RunMetadataManager {
5
+ appendKey(key: string, value: DeserializedJson): void;
6
+ removeFromKey(key: string, value: DeserializedJson): void;
7
+ incrementKey(key: string, value: number): void;
8
+ decrementKey(key: string, value: number): void;
9
+ stream<T>(key: string, value: AsyncIterable<T>): Promise<AsyncIterable<T>>;
5
10
  flush(requestOptions?: ApiRequestOptions): Promise<void>;
6
11
  enterWithMetadata(metadata: Record<string, DeserializedJson>): void;
7
12
  current(): Record<string, DeserializedJson> | undefined;
@@ -2,6 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NoopRunMetadataManager = void 0;
4
4
  class NoopRunMetadataManager {
5
+ appendKey(key, value) {
6
+ throw new Error("Method not implemented.");
7
+ }
8
+ removeFromKey(key, value) {
9
+ throw new Error("Method not implemented.");
10
+ }
11
+ incrementKey(key, value) {
12
+ throw new Error("Method not implemented.");
13
+ }
14
+ decrementKey(key, value) {
15
+ throw new Error("Method not implemented.");
16
+ }
17
+ stream(key, value) {
18
+ throw new Error("Method not implemented.");
19
+ }
5
20
  flush(requestOptions) {
6
21
  throw new Error("Method not implemented.");
7
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"noopManager.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/noopManager.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IACjC,KAAK,CAAC,cAAkC;QACtC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,iBAAiB,CAAC,QAA0C,IAAS,CAAC;IACtE,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,GAAW;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,GAAW,EAAE,KAAuB;QACzC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,SAAS,CAAC,GAAW;QACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,QAA0C;QAC/C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;CACF;AApBD,wDAoBC"}
1
+ {"version":3,"file":"noopManager.js","sourceRoot":"","sources":["../../../../src/v3/runMetadata/noopManager.ts"],"names":[],"mappings":";;;AAIA,MAAa,sBAAsB;IACjC,SAAS,CAAC,GAAW,EAAE,KAAuB;QAC5C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,aAAa,CAAC,GAAW,EAAE,KAAuB;QAChD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,YAAY,CAAC,GAAW,EAAE,KAAa;QACrC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,YAAY,CAAC,GAAW,EAAE,KAAa;QACrC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAI,GAAW,EAAE,KAAuB;QAC5C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,KAAK,CAAC,cAAkC;QACtC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,iBAAiB,CAAC,QAA0C,IAAS,CAAC;IACtE,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,GAAW;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,GAAW,EAAE,KAAuB;QACzC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,SAAS,CAAC,GAAW;QACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,QAA0C;QAC/C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;CACF;AAnCD,wDAmCC"}
@@ -6,6 +6,11 @@ export interface RunMetadataManager {
6
6
  getKey(key: string): DeserializedJson | undefined;
7
7
  setKey(key: string, value: DeserializedJson): void;
8
8
  deleteKey(key: string): void;
9
+ appendKey(key: string, value: DeserializedJson): void;
10
+ removeFromKey(key: string, value: DeserializedJson): void;
11
+ incrementKey(key: string, value: number): void;
12
+ decrementKey(key: string, value: number): void;
9
13
  update(metadata: Record<string, DeserializedJson>): void;
10
14
  flush(requestOptions?: ApiRequestOptions): Promise<void>;
15
+ stream<T>(key: string, value: AsyncIterable<T> | ReadableStream<T>, signal?: AbortSignal): Promise<AsyncIterable<T>>;
11
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"devRuntimeManager.js","sourceRoot":"","sources":["../../../../src/v3/runtime/devRuntimeManager.ts"],"names":[],"mappings":";;;AAOA,kDAAsD;AAEtD,MAAa,iBAAiB;IAC5B,UAAU,GAAsE,IAAI,GAAG,EAAE,CAAC;IAE1F,WAAW,GAGP,IAAI,GAAG,EAAE,CAAC;IAEd,+BAA+B,GAAwC,IAAI,GAAG,EAAE,CAAC;IAEjF,OAAO;QACL,aAAa;IACf,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,MAAM,IAAA,4BAAgB,EAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAU;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA2C;QAC3D,MAAM,iBAAiB,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE9E,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEvD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,EAAE;YAC9D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,OAAO,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAIlB;QACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CACzB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7D,MAAM,iBAAiB,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAE1E,IAAI,iBAAiB,EAAE,CAAC;oBACtB,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAEnD,OAAO,CAAC,iBAAiB,CAAC,CAAC;oBAE3B,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;QAE9B,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,OAAO;SACf,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,UAAkC,EAAE,KAAa;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,oEAAoE;YACpE,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAE5D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAEzB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACF;AAvFD,8CAuFC"}
1
+ {"version":3,"file":"devRuntimeManager.js","sourceRoot":"","sources":["../../../../src/v3/runtime/devRuntimeManager.ts"],"names":[],"mappings":";;;AAKA,kDAAsD;AAGtD,MAAa,iBAAiB;IAC5B,UAAU,GAAsE,IAAI,GAAG,EAAE,CAAC;IAE1F,WAAW,GAGP,IAAI,GAAG,EAAE,CAAC;IAEd,+BAA+B,GAAwC,IAAI,GAAG,EAAE,CAAC;IAEjF,OAAO;QACL,aAAa;IACf,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,MAAM,IAAA,4BAAgB,EAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAU;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA2C;QAC3D,MAAM,iBAAiB,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE9E,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEvD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,EAAE;YAC9D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,OAAO,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAIlB;QACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CACzB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,IAAI,OAAO,CAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7D,MAAM,iBAAiB,GAAG,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAE1E,IAAI,iBAAiB,EAAE,CAAC;oBACtB,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAEnD,OAAO,CAAC,iBAAiB,CAAC,CAAC;oBAE3B,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;QAE9B,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,OAAO;SACf,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,UAAkC,EAAE,KAAa;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,oEAAoE;YACpE,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAE5D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAEzB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACF;AAvFD,8CAuFC"}