convex-effect-workflows 0.1.0

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 (190) hide show
  1. package/README.md +107 -0
  2. package/dist/client/ConvexCtx.d.ts +12 -0
  3. package/dist/client/ConvexCtx.d.ts.map +1 -0
  4. package/dist/client/ConvexCtx.js +6 -0
  5. package/dist/client/ConvexCtx.js.map +1 -0
  6. package/dist/client/ConvexLogger.d.ts +7 -0
  7. package/dist/client/ConvexLogger.d.ts.map +1 -0
  8. package/dist/client/ConvexLogger.js +39 -0
  9. package/dist/client/ConvexLogger.js.map +1 -0
  10. package/dist/client/ConvexTracer.d.ts +7 -0
  11. package/dist/client/ConvexTracer.d.ts.map +1 -0
  12. package/dist/client/ConvexTracer.js +60 -0
  13. package/dist/client/ConvexTracer.js.map +1 -0
  14. package/dist/client/ConvexWorkflowEngine.d.ts +308 -0
  15. package/dist/client/ConvexWorkflowEngine.d.ts.map +1 -0
  16. package/dist/client/ConvexWorkflowEngine.js +88 -0
  17. package/dist/client/ConvexWorkflowEngine.js.map +1 -0
  18. package/dist/client/activityWorker.d.ts +23 -0
  19. package/dist/client/activityWorker.d.ts.map +1 -0
  20. package/dist/client/activityWorker.js +41 -0
  21. package/dist/client/activityWorker.js.map +1 -0
  22. package/dist/client/boundaries.d.ts +27 -0
  23. package/dist/client/boundaries.d.ts.map +1 -0
  24. package/dist/client/boundaries.js +17 -0
  25. package/dist/client/boundaries.js.map +1 -0
  26. package/dist/client/encoded.d.ts +22 -0
  27. package/dist/client/encoded.d.ts.map +1 -0
  28. package/dist/client/encoded.js +276 -0
  29. package/dist/client/encoded.js.map +1 -0
  30. package/dist/client/index.d.ts +13 -0
  31. package/dist/client/index.d.ts.map +1 -0
  32. package/dist/client/index.js +11 -0
  33. package/dist/client/index.js.map +1 -0
  34. package/dist/client/registry.d.ts +17 -0
  35. package/dist/client/registry.d.ts.map +1 -0
  36. package/dist/client/registry.js +21 -0
  37. package/dist/client/registry.js.map +1 -0
  38. package/dist/client/runner.d.ts +27 -0
  39. package/dist/client/runner.d.ts.map +1 -0
  40. package/dist/client/runner.js +90 -0
  41. package/dist/client/runner.js.map +1 -0
  42. package/dist/client/runtime.d.ts +10 -0
  43. package/dist/client/runtime.d.ts.map +1 -0
  44. package/dist/client/runtime.js +15 -0
  45. package/dist/client/runtime.js.map +1 -0
  46. package/dist/component/_generated/api.d.ts +148 -0
  47. package/dist/component/_generated/api.d.ts.map +1 -0
  48. package/dist/component/_generated/api.js +31 -0
  49. package/dist/component/_generated/api.js.map +1 -0
  50. package/dist/component/_generated/component.d.ts +921 -0
  51. package/dist/component/_generated/component.d.ts.map +1 -0
  52. package/dist/component/_generated/component.js +11 -0
  53. package/dist/component/_generated/component.js.map +1 -0
  54. package/dist/component/_generated/dataModel.d.ts +46 -0
  55. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  56. package/dist/component/_generated/dataModel.js +11 -0
  57. package/dist/component/_generated/dataModel.js.map +1 -0
  58. package/dist/component/_generated/server.d.ts +121 -0
  59. package/dist/component/_generated/server.d.ts.map +1 -0
  60. package/dist/component/_generated/server.js +78 -0
  61. package/dist/component/_generated/server.js.map +1 -0
  62. package/dist/component/activityCompletions.d.ts +27 -0
  63. package/dist/component/activityCompletions.d.ts.map +1 -0
  64. package/dist/component/activityCompletions.js +70 -0
  65. package/dist/component/activityCompletions.js.map +1 -0
  66. package/dist/component/boundaries.d.ts +20 -0
  67. package/dist/component/boundaries.d.ts.map +1 -0
  68. package/dist/component/boundaries.js +17 -0
  69. package/dist/component/boundaries.js.map +1 -0
  70. package/dist/component/cleanup.d.ts +11 -0
  71. package/dist/component/cleanup.d.ts.map +1 -0
  72. package/dist/component/cleanup.js +163 -0
  73. package/dist/component/cleanup.js.map +1 -0
  74. package/dist/component/clocks.d.ts +12 -0
  75. package/dist/component/clocks.d.ts.map +1 -0
  76. package/dist/component/clocks.js +26 -0
  77. package/dist/component/clocks.js.map +1 -0
  78. package/dist/component/config.d.ts +25 -0
  79. package/dist/component/config.d.ts.map +1 -0
  80. package/dist/component/config.js +110 -0
  81. package/dist/component/config.js.map +1 -0
  82. package/dist/component/convex.config.d.ts +3 -0
  83. package/dist/component/convex.config.d.ts.map +1 -0
  84. package/dist/component/convex.config.js +6 -0
  85. package/dist/component/convex.config.js.map +1 -0
  86. package/dist/component/dashboard.d.ts +268 -0
  87. package/dist/component/dashboard.d.ts.map +1 -0
  88. package/dist/component/dashboard.js +622 -0
  89. package/dist/component/dashboard.js.map +1 -0
  90. package/dist/component/deferreds.d.ts +31 -0
  91. package/dist/component/deferreds.d.ts.map +1 -0
  92. package/dist/component/deferreds.js +138 -0
  93. package/dist/component/deferreds.js.map +1 -0
  94. package/dist/component/executions.d.ts +77 -0
  95. package/dist/component/executions.d.ts.map +1 -0
  96. package/dist/component/executions.js +186 -0
  97. package/dist/component/executions.js.map +1 -0
  98. package/dist/component/journalSteps.d.ts +261 -0
  99. package/dist/component/journalSteps.d.ts.map +1 -0
  100. package/dist/component/journalSteps.js +203 -0
  101. package/dist/component/journalSteps.js.map +1 -0
  102. package/dist/component/logs.d.ts +68 -0
  103. package/dist/component/logs.d.ts.map +1 -0
  104. package/dist/component/logs.js +123 -0
  105. package/dist/component/logs.js.map +1 -0
  106. package/dist/component/onComplete.d.ts +31 -0
  107. package/dist/component/onComplete.d.ts.map +1 -0
  108. package/dist/component/onComplete.js +146 -0
  109. package/dist/component/onComplete.js.map +1 -0
  110. package/dist/component/payloads.d.ts +26 -0
  111. package/dist/component/payloads.d.ts.map +1 -0
  112. package/dist/component/payloads.js +57 -0
  113. package/dist/component/payloads.js.map +1 -0
  114. package/dist/component/queries.d.ts +2 -0
  115. package/dist/component/queries.d.ts.map +1 -0
  116. package/dist/component/queries.js +2 -0
  117. package/dist/component/queries.js.map +1 -0
  118. package/dist/component/runner.d.ts +31 -0
  119. package/dist/component/runner.d.ts.map +1 -0
  120. package/dist/component/runner.js +87 -0
  121. package/dist/component/runner.js.map +1 -0
  122. package/dist/component/schema.d.ts +282 -0
  123. package/dist/component/schema.d.ts.map +1 -0
  124. package/dist/component/schema.js +119 -0
  125. package/dist/component/schema.js.map +1 -0
  126. package/dist/component/spans.d.ts +105 -0
  127. package/dist/component/spans.d.ts.map +1 -0
  128. package/dist/component/spans.js +190 -0
  129. package/dist/component/spans.js.map +1 -0
  130. package/dist/component/utils.d.ts +15 -0
  131. package/dist/component/utils.d.ts.map +1 -0
  132. package/dist/component/utils.js +53 -0
  133. package/dist/component/utils.js.map +1 -0
  134. package/dist/shared/constants.d.ts +12 -0
  135. package/dist/shared/constants.d.ts.map +1 -0
  136. package/dist/shared/constants.js +12 -0
  137. package/dist/shared/constants.js.map +1 -0
  138. package/dist/shared/validators.d.ts +69 -0
  139. package/dist/shared/validators.d.ts.map +1 -0
  140. package/dist/shared/validators.js +30 -0
  141. package/dist/shared/validators.js.map +1 -0
  142. package/package.json +74 -0
  143. package/src/client/ConvexCtx.ts +21 -0
  144. package/src/client/ConvexLogger.ts +52 -0
  145. package/src/client/ConvexTracer.ts +75 -0
  146. package/src/client/ConvexWorkflowEngine.test.ts +124 -0
  147. package/src/client/ConvexWorkflowEngine.ts +209 -0
  148. package/src/client/activityWorker.ts +62 -0
  149. package/src/client/boundaries.test.ts +83 -0
  150. package/src/client/boundaries.ts +79 -0
  151. package/src/client/encoded.lifecycle.test.ts +336 -0
  152. package/src/client/encoded.test.ts +153 -0
  153. package/src/client/encoded.ts +484 -0
  154. package/src/client/index.ts +47 -0
  155. package/src/client/registry.ts +35 -0
  156. package/src/client/runner.ts +165 -0
  157. package/src/client/runtime.ts +30 -0
  158. package/src/component/_generated/api.ts +179 -0
  159. package/src/component/_generated/component.ts +1216 -0
  160. package/src/component/_generated/dataModel.ts +60 -0
  161. package/src/component/_generated/server.ts +156 -0
  162. package/src/component/activityCompletions.ts +73 -0
  163. package/src/component/boundaries.ts +55 -0
  164. package/src/component/cleanup.test.ts +219 -0
  165. package/src/component/cleanup.ts +218 -0
  166. package/src/component/clocks.ts +26 -0
  167. package/src/component/config.test.ts +159 -0
  168. package/src/component/config.ts +145 -0
  169. package/src/component/convex.config.ts +7 -0
  170. package/src/component/core.test.ts +829 -0
  171. package/src/component/dashboard.scaling.test.ts +268 -0
  172. package/src/component/dashboard.ts +743 -0
  173. package/src/component/deferreds.ts +162 -0
  174. package/src/component/executions.ts +225 -0
  175. package/src/component/journalSteps.ts +252 -0
  176. package/src/component/logs.ts +152 -0
  177. package/src/component/onComplete.ts +170 -0
  178. package/src/component/payloads.ts +83 -0
  179. package/src/component/queries.ts +8 -0
  180. package/src/component/runner.ts +122 -0
  181. package/src/component/schema.ts +155 -0
  182. package/src/component/setup.test.ts +15 -0
  183. package/src/component/spans.ts +241 -0
  184. package/src/component/utils.test.ts +32 -0
  185. package/src/component/utils.ts +73 -0
  186. package/src/shared/constants.test.ts +14 -0
  187. package/src/shared/constants.ts +15 -0
  188. package/src/shared/validators.ts +98 -0
  189. package/src/test.d.ts +8 -0
  190. package/src/test.ts +17 -0
@@ -0,0 +1,1216 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * Generated `ComponentApi` utility.
4
+ *
5
+ * THIS CODE IS AUTOMATICALLY GENERATED.
6
+ *
7
+ * To regenerate, run `npx convex dev`.
8
+ * @module
9
+ */
10
+
11
+ import type { FunctionReference } from "convex/server";
12
+
13
+ /**
14
+ * A utility for referencing a Convex component's exposed API.
15
+ *
16
+ * Useful when expecting a parameter like `components.myComponent`.
17
+ * Usage:
18
+ * ```ts
19
+ * async function myFunction(ctx: QueryCtx, component: ComponentApi) {
20
+ * return ctx.runQuery(component.someFile.someQuery, { ...args });
21
+ * }
22
+ * ```
23
+ */
24
+ export type ComponentApi<Name extends string | undefined = string | undefined> =
25
+ {
26
+ activityCompletions: {
27
+ completionExists: FunctionReference<
28
+ "query",
29
+ "internal",
30
+ { workId: string },
31
+ boolean,
32
+ Name
33
+ >;
34
+ getActivityCompletion: FunctionReference<
35
+ "query",
36
+ "internal",
37
+ { workId: string },
38
+ any | null,
39
+ Name
40
+ >;
41
+ internalCreateActivityCompletion: FunctionReference<
42
+ "mutation",
43
+ "internal",
44
+ { executionId: string; stepNumber: number; workId: string },
45
+ null,
46
+ Name
47
+ >;
48
+ recordCompletion: FunctionReference<
49
+ "mutation",
50
+ "internal",
51
+ { executionId: string; stepNumber: number; workId: string },
52
+ boolean,
53
+ Name
54
+ >;
55
+ };
56
+ cleanup: {
57
+ cleanupOldExecutions: FunctionReference<
58
+ "mutation",
59
+ "internal",
60
+ { limit?: number; retentionDays?: number },
61
+ { deletedCount: number; hasMore: boolean },
62
+ Name
63
+ >;
64
+ };
65
+ clocks: {
66
+ scheduleDeferredWake: FunctionReference<
67
+ "mutation",
68
+ "internal",
69
+ {
70
+ deferredName: string;
71
+ delayMs: number;
72
+ executionId: string;
73
+ exit?: any;
74
+ },
75
+ string,
76
+ Name
77
+ >;
78
+ };
79
+ config: {
80
+ getConfig: FunctionReference<
81
+ "query",
82
+ "internal",
83
+ {},
84
+ {
85
+ defaultLogLevel: "debug" | "info" | "warn" | "error";
86
+ maxInlineBytes: number;
87
+ maxLogDataBytes: number;
88
+ maxSpanAttrBytes: number;
89
+ retentionDays: number;
90
+ },
91
+ Name
92
+ >;
93
+ setConfig: FunctionReference<
94
+ "mutation",
95
+ "internal",
96
+ {
97
+ defaultLogLevel?: "debug" | "info" | "warn" | "error";
98
+ maxInlineBytes?: number;
99
+ maxLogDataBytes?: number;
100
+ maxSpanAttrBytes?: number;
101
+ retentionDays?: number;
102
+ },
103
+ {
104
+ defaultLogLevel: "debug" | "info" | "warn" | "error";
105
+ maxInlineBytes: number;
106
+ maxLogDataBytes: number;
107
+ maxSpanAttrBytes: number;
108
+ retentionDays: number;
109
+ },
110
+ Name
111
+ >;
112
+ };
113
+ dashboard: {
114
+ executionMetrics: FunctionReference<
115
+ "query",
116
+ "internal",
117
+ {
118
+ startedAfter?: number;
119
+ startedBefore?: number;
120
+ workflowName?: string;
121
+ },
122
+ {
123
+ active: number;
124
+ avgDurationMs: number;
125
+ completed: number;
126
+ failed: number;
127
+ interrupted: number;
128
+ p50DurationMs: number;
129
+ p95DurationMs: number;
130
+ successRate: number;
131
+ total: number;
132
+ },
133
+ Name
134
+ >;
135
+ getExecution: FunctionReference<
136
+ "query",
137
+ "internal",
138
+ { executionId: string },
139
+ {
140
+ execution: {
141
+ _creationTime: number;
142
+ _id: string;
143
+ completedAt?: number;
144
+ error?: string;
145
+ executionId: string;
146
+ generation: number;
147
+ lastResumedAt?: number;
148
+ lastSuspendedAt?: number;
149
+ parentExecutionId?: string;
150
+ payloadPreview?: any;
151
+ payloadRef?: string;
152
+ payloadSize: number;
153
+ resultKind?: "success" | "failure";
154
+ resultPreview?: any;
155
+ resultRef?: string;
156
+ runnerHandle?: string;
157
+ startedAt: number;
158
+ status:
159
+ | "pending"
160
+ | "running"
161
+ | "suspended"
162
+ | "completed"
163
+ | "failed"
164
+ | "interrupted";
165
+ tenantId?: string;
166
+ traceId: string;
167
+ workflowName: string;
168
+ };
169
+ logs: Array<{
170
+ _creationTime: number;
171
+ _id: string;
172
+ data?: any;
173
+ executionId: string;
174
+ level: "debug" | "info" | "warn" | "error";
175
+ message: string;
176
+ source: "workflow" | "activity" | "engine" | "system";
177
+ spanId?: string;
178
+ stepNumber?: number;
179
+ timestamp: number;
180
+ traceId?: string;
181
+ }>;
182
+ spans: Array<{
183
+ _creationTime: number;
184
+ _id: string;
185
+ attempt?: number;
186
+ attributes?: any;
187
+ endTime?: number;
188
+ error?: string;
189
+ executionId: string;
190
+ inputPreview?: any;
191
+ inputRef?: string;
192
+ inputSize?: number;
193
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
194
+ name: string;
195
+ outputPreview?: any;
196
+ outputRef?: string;
197
+ outputSize?: number;
198
+ parentSpanId?: string;
199
+ spanId: string;
200
+ startTime: number;
201
+ status: "started" | "ended";
202
+ stepNumber?: number;
203
+ traceId: string;
204
+ }>;
205
+ steps: Array<{
206
+ _creationTime: number;
207
+ _id: string;
208
+ attempt?: number;
209
+ completedAt?: number;
210
+ executionId: string;
211
+ inputPreview?: any;
212
+ inputRef?: string;
213
+ inputSize: number;
214
+ kind:
215
+ | "activity"
216
+ | "deferred"
217
+ | "clock"
218
+ | "nestedWorkflow"
219
+ | "system";
220
+ name: string;
221
+ resumeToken?: string;
222
+ runResult?:
223
+ | { kind: "success"; valuePreview?: any; valueRef?: string }
224
+ | {
225
+ error: string;
226
+ kind: "failed";
227
+ valuePreview?: any;
228
+ valueRef?: string;
229
+ }
230
+ | { kind: "canceled" };
231
+ signature: {
232
+ attempt?: number;
233
+ kind:
234
+ | "activity"
235
+ | "deferred"
236
+ | "clock"
237
+ | "nestedWorkflow"
238
+ | "system";
239
+ opName: string;
240
+ scheduleMeta?: any;
241
+ schemaVersion?: number;
242
+ };
243
+ spanId?: string;
244
+ startedAt: number;
245
+ state:
246
+ | "started"
247
+ | "suspended"
248
+ | "completed"
249
+ | "failed"
250
+ | "canceled";
251
+ stepNumber: number;
252
+ workId?: string;
253
+ }>;
254
+ } | null,
255
+ Name
256
+ >;
257
+ listExecutionLogs: FunctionReference<
258
+ "query",
259
+ "internal",
260
+ {
261
+ afterLogId?: string;
262
+ afterTimestamp?: number;
263
+ executionId: string;
264
+ level?: "debug" | "info" | "warn" | "error";
265
+ limit?: number;
266
+ order?: "asc" | "desc";
267
+ source?: "workflow" | "activity" | "engine" | "system";
268
+ spanId?: string;
269
+ },
270
+ {
271
+ cursor: { logId: string; timestamp: number } | null;
272
+ isDone: boolean;
273
+ page: Array<{
274
+ _creationTime: number;
275
+ _id: string;
276
+ data?: any;
277
+ executionId: string;
278
+ level: "debug" | "info" | "warn" | "error";
279
+ message: string;
280
+ source: "workflow" | "activity" | "engine" | "system";
281
+ spanId?: string;
282
+ stepNumber?: number;
283
+ timestamp: number;
284
+ traceId?: string;
285
+ }>;
286
+ },
287
+ Name
288
+ >;
289
+ listExecutions: FunctionReference<
290
+ "query",
291
+ "internal",
292
+ {
293
+ cursorExecutionId?: string;
294
+ cursorStartedAt?: number;
295
+ limit?: number;
296
+ order?: "asc" | "desc";
297
+ startedAfter?: number;
298
+ startedBefore?: number;
299
+ status?:
300
+ | "pending"
301
+ | "running"
302
+ | "suspended"
303
+ | "completed"
304
+ | "failed"
305
+ | "interrupted";
306
+ tenantId?: string;
307
+ workflowName?: string;
308
+ },
309
+ {
310
+ cursor: { executionId: string; startedAt: number } | null;
311
+ isDone: boolean;
312
+ page: Array<{
313
+ _creationTime: number;
314
+ _id: string;
315
+ completedAt?: number;
316
+ error?: string;
317
+ executionId: string;
318
+ generation: number;
319
+ lastResumedAt?: number;
320
+ lastSuspendedAt?: number;
321
+ parentExecutionId?: string;
322
+ payloadPreview?: any;
323
+ payloadRef?: string;
324
+ payloadSize: number;
325
+ resultKind?: "success" | "failure";
326
+ resultPreview?: any;
327
+ resultRef?: string;
328
+ runnerHandle?: string;
329
+ startedAt: number;
330
+ status:
331
+ | "pending"
332
+ | "running"
333
+ | "suspended"
334
+ | "completed"
335
+ | "failed"
336
+ | "interrupted";
337
+ tenantId?: string;
338
+ traceId: string;
339
+ workflowName: string;
340
+ }>;
341
+ },
342
+ Name
343
+ >;
344
+ listExecutionSpans: FunctionReference<
345
+ "query",
346
+ "internal",
347
+ {
348
+ afterSpanId?: string;
349
+ afterStartTime?: number;
350
+ executionId: string;
351
+ kind?: "workflow" | "activity" | "deferred" | "clock" | "system";
352
+ limit?: number;
353
+ status?: "started" | "ended";
354
+ },
355
+ {
356
+ cursor: { spanId: string; startTime: number } | null;
357
+ isDone: boolean;
358
+ page: Array<{
359
+ _creationTime: number;
360
+ _id: string;
361
+ attempt?: number;
362
+ attributes?: any;
363
+ endTime?: number;
364
+ error?: string;
365
+ executionId: string;
366
+ inputPreview?: any;
367
+ inputRef?: string;
368
+ inputSize?: number;
369
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
370
+ name: string;
371
+ outputPreview?: any;
372
+ outputRef?: string;
373
+ outputSize?: number;
374
+ parentSpanId?: string;
375
+ spanId: string;
376
+ startTime: number;
377
+ status: "started" | "ended";
378
+ stepNumber?: number;
379
+ traceId: string;
380
+ }>;
381
+ },
382
+ Name
383
+ >;
384
+ listExecutionSteps: FunctionReference<
385
+ "query",
386
+ "internal",
387
+ {
388
+ afterStepNumber?: number;
389
+ executionId: string;
390
+ limit?: number;
391
+ state?: "started" | "suspended" | "completed" | "failed" | "canceled";
392
+ },
393
+ {
394
+ cursor: number | null;
395
+ isDone: boolean;
396
+ page: Array<{
397
+ _creationTime: number;
398
+ _id: string;
399
+ attempt?: number;
400
+ completedAt?: number;
401
+ executionId: string;
402
+ inputPreview?: any;
403
+ inputRef?: string;
404
+ inputSize: number;
405
+ kind:
406
+ | "activity"
407
+ | "deferred"
408
+ | "clock"
409
+ | "nestedWorkflow"
410
+ | "system";
411
+ name: string;
412
+ resumeToken?: string;
413
+ runResult?:
414
+ | { kind: "success"; valuePreview?: any; valueRef?: string }
415
+ | {
416
+ error: string;
417
+ kind: "failed";
418
+ valuePreview?: any;
419
+ valueRef?: string;
420
+ }
421
+ | { kind: "canceled" };
422
+ signature: {
423
+ attempt?: number;
424
+ kind:
425
+ | "activity"
426
+ | "deferred"
427
+ | "clock"
428
+ | "nestedWorkflow"
429
+ | "system";
430
+ opName: string;
431
+ scheduleMeta?: any;
432
+ schemaVersion?: number;
433
+ };
434
+ spanId?: string;
435
+ startedAt: number;
436
+ state:
437
+ | "started"
438
+ | "suspended"
439
+ | "completed"
440
+ | "failed"
441
+ | "canceled";
442
+ stepNumber: number;
443
+ workId?: string;
444
+ }>;
445
+ },
446
+ Name
447
+ >;
448
+ };
449
+ deferreds: {
450
+ completeDeferred: FunctionReference<
451
+ "mutation",
452
+ "internal",
453
+ { deferredName: string; executionId: string; exit: any },
454
+ null,
455
+ Name
456
+ >;
457
+ createDeferred: FunctionReference<
458
+ "mutation",
459
+ "internal",
460
+ { deferredName: string; executionId: string },
461
+ null,
462
+ Name
463
+ >;
464
+ deferredDone: FunctionReference<
465
+ "mutation",
466
+ "internal",
467
+ { deferredName: string; executionId: string; exit: any },
468
+ { changed: boolean },
469
+ Name
470
+ >;
471
+ deferredResult: FunctionReference<
472
+ "query",
473
+ "internal",
474
+ { deferredName: string; executionId: string },
475
+ any,
476
+ Name
477
+ >;
478
+ registerDeferred: FunctionReference<
479
+ "mutation",
480
+ "internal",
481
+ { deferredName: string; executionId: string },
482
+ null,
483
+ Name
484
+ >;
485
+ };
486
+ executions: {
487
+ completeExecution: FunctionReference<
488
+ "mutation",
489
+ "internal",
490
+ {
491
+ error?: string;
492
+ executionId: string;
493
+ generation: number;
494
+ kind: "success" | "failure";
495
+ result?: any;
496
+ },
497
+ { changed: boolean },
498
+ Name
499
+ >;
500
+ createExecution: FunctionReference<
501
+ "mutation",
502
+ "internal",
503
+ {
504
+ executionId: string;
505
+ parentExecutionId?: string;
506
+ payload: any;
507
+ runnerHandle?: string;
508
+ tenantId?: string;
509
+ traceId?: string;
510
+ workflowName: string;
511
+ },
512
+ { created: boolean; executionId: string },
513
+ Name
514
+ >;
515
+ getExecution: FunctionReference<
516
+ "query",
517
+ "internal",
518
+ { executionId: string },
519
+ any,
520
+ Name
521
+ >;
522
+ internalPatchExecution: FunctionReference<
523
+ "mutation",
524
+ "internal",
525
+ { executionId: string; startedAt: number },
526
+ null,
527
+ Name
528
+ >;
529
+ interruptExecution: FunctionReference<
530
+ "mutation",
531
+ "internal",
532
+ { executionId: string; reason?: string },
533
+ { generation: number },
534
+ Name
535
+ >;
536
+ setExecutionRunning: FunctionReference<
537
+ "mutation",
538
+ "internal",
539
+ { executionId: string; generation: number },
540
+ { changed: boolean },
541
+ Name
542
+ >;
543
+ setExecutionSuspended: FunctionReference<
544
+ "mutation",
545
+ "internal",
546
+ { executionId: string; generation: number },
547
+ { changed: boolean },
548
+ Name
549
+ >;
550
+ };
551
+ journalSteps: {
552
+ appendJournalStep: FunctionReference<
553
+ "mutation",
554
+ "internal",
555
+ {
556
+ attempt?: number;
557
+ executionId: string;
558
+ input: any;
559
+ kind: "activity" | "deferred" | "clock" | "nestedWorkflow" | "system";
560
+ name: string;
561
+ signature: {
562
+ attempt?: number;
563
+ kind:
564
+ | "activity"
565
+ | "deferred"
566
+ | "clock"
567
+ | "nestedWorkflow"
568
+ | "system";
569
+ opName: string;
570
+ scheduleMeta?: any;
571
+ schemaVersion?: number;
572
+ };
573
+ spanId?: string;
574
+ stepNumber: number;
575
+ },
576
+ any,
577
+ Name
578
+ >;
579
+ assertReplayStepSignature: FunctionReference<
580
+ "query",
581
+ "internal",
582
+ {
583
+ executionId: string;
584
+ expectedSignature: {
585
+ attempt?: number;
586
+ kind:
587
+ | "activity"
588
+ | "deferred"
589
+ | "clock"
590
+ | "nestedWorkflow"
591
+ | "system";
592
+ opName: string;
593
+ scheduleMeta?: any;
594
+ schemaVersion?: number;
595
+ };
596
+ stepNumber: number;
597
+ },
598
+ any,
599
+ Name
600
+ >;
601
+ completeJournalStep: FunctionReference<
602
+ "mutation",
603
+ "internal",
604
+ {
605
+ executionId: string;
606
+ runResult:
607
+ | { kind: "success"; valuePreview?: any; valueRef?: string }
608
+ | {
609
+ error: string;
610
+ kind: "failed";
611
+ valuePreview?: any;
612
+ valueRef?: string;
613
+ }
614
+ | { kind: "canceled" };
615
+ stepNumber: number;
616
+ },
617
+ { changed: boolean },
618
+ Name
619
+ >;
620
+ failJournalStep: FunctionReference<
621
+ "mutation",
622
+ "internal",
623
+ { error: string; executionId: string; stepNumber: number },
624
+ { changed: boolean },
625
+ Name
626
+ >;
627
+ getJournalStep: FunctionReference<
628
+ "query",
629
+ "internal",
630
+ { executionId: string; stepNumber: number },
631
+ any,
632
+ Name
633
+ >;
634
+ listJournalSteps: FunctionReference<
635
+ "query",
636
+ "internal",
637
+ {
638
+ afterStepNumber?: number;
639
+ executionId: string;
640
+ limit: number;
641
+ state?: "started" | "suspended" | "completed" | "failed" | "canceled";
642
+ },
643
+ any,
644
+ Name
645
+ >;
646
+ loadJournalForExecution: FunctionReference<
647
+ "query",
648
+ "internal",
649
+ { executionId: string },
650
+ any,
651
+ Name
652
+ >;
653
+ suspendJournalStep: FunctionReference<
654
+ "mutation",
655
+ "internal",
656
+ {
657
+ executionId: string;
658
+ resumeToken?: string;
659
+ stepNumber: number;
660
+ workId: string;
661
+ },
662
+ { changed: boolean },
663
+ Name
664
+ >;
665
+ };
666
+ logs: {
667
+ appendLog: FunctionReference<
668
+ "mutation",
669
+ "internal",
670
+ {
671
+ data?: any;
672
+ executionId: string;
673
+ level: "debug" | "info" | "warn" | "error";
674
+ message: string;
675
+ source: "workflow" | "activity" | "engine" | "system";
676
+ spanId?: string;
677
+ stepNumber?: number;
678
+ timestamp?: number;
679
+ traceId?: string;
680
+ },
681
+ null,
682
+ Name
683
+ >;
684
+ createLog: FunctionReference<
685
+ "mutation",
686
+ "internal",
687
+ {
688
+ executionId: string;
689
+ level: "debug" | "info" | "warn" | "error";
690
+ message: string;
691
+ source: "workflow" | "activity" | "engine" | "system";
692
+ spanId?: string;
693
+ stepNumber?: number;
694
+ timestamp: number;
695
+ traceId?: string;
696
+ },
697
+ null,
698
+ Name
699
+ >;
700
+ listExecutionLogs: FunctionReference<
701
+ "query",
702
+ "internal",
703
+ {
704
+ afterTimestamp?: number;
705
+ executionId: string;
706
+ level?: "debug" | "info" | "warn" | "error";
707
+ limit: number;
708
+ source?: "workflow" | "activity" | "engine" | "system";
709
+ spanId?: string;
710
+ },
711
+ any,
712
+ Name
713
+ >;
714
+ listSpanLogs: FunctionReference<
715
+ "query",
716
+ "internal",
717
+ { afterTimestamp?: number; limit: number; spanId: string },
718
+ any,
719
+ Name
720
+ >;
721
+ };
722
+ onComplete: {
723
+ handleActivityCompletion: FunctionReference<
724
+ "mutation",
725
+ "internal",
726
+ {
727
+ context: {
728
+ executionId: string;
729
+ generation: number;
730
+ spanId?: string;
731
+ stepNumber: number;
732
+ };
733
+ result:
734
+ | { kind: "success"; returnValue: any }
735
+ | { error: string; kind: "failed" }
736
+ | { kind: "canceled" };
737
+ workId: string;
738
+ },
739
+ { processed: boolean; resumed: boolean; stale: boolean },
740
+ Name
741
+ >;
742
+ };
743
+ payloads: {
744
+ createPayload: FunctionReference<
745
+ "mutation",
746
+ "internal",
747
+ {
748
+ data: any;
749
+ kind:
750
+ | "executionPayload"
751
+ | "stepInput"
752
+ | "stepOutput"
753
+ | "deferredExit"
754
+ | "spanInput"
755
+ | "spanOutput"
756
+ | "logData";
757
+ },
758
+ string,
759
+ Name
760
+ >;
761
+ getPayload: FunctionReference<
762
+ "query",
763
+ "internal",
764
+ { payloadId: string },
765
+ any,
766
+ Name
767
+ >;
768
+ };
769
+ queries: {
770
+ executionMetrics: FunctionReference<
771
+ "query",
772
+ "internal",
773
+ {
774
+ startedAfter?: number;
775
+ startedBefore?: number;
776
+ workflowName?: string;
777
+ },
778
+ {
779
+ active: number;
780
+ avgDurationMs: number;
781
+ completed: number;
782
+ failed: number;
783
+ interrupted: number;
784
+ p50DurationMs: number;
785
+ p95DurationMs: number;
786
+ successRate: number;
787
+ total: number;
788
+ },
789
+ Name
790
+ >;
791
+ getExecution: FunctionReference<
792
+ "query",
793
+ "internal",
794
+ { executionId: string },
795
+ {
796
+ execution: {
797
+ _creationTime: number;
798
+ _id: string;
799
+ completedAt?: number;
800
+ error?: string;
801
+ executionId: string;
802
+ generation: number;
803
+ lastResumedAt?: number;
804
+ lastSuspendedAt?: number;
805
+ parentExecutionId?: string;
806
+ payloadPreview?: any;
807
+ payloadRef?: string;
808
+ payloadSize: number;
809
+ resultKind?: "success" | "failure";
810
+ resultPreview?: any;
811
+ resultRef?: string;
812
+ runnerHandle?: string;
813
+ startedAt: number;
814
+ status:
815
+ | "pending"
816
+ | "running"
817
+ | "suspended"
818
+ | "completed"
819
+ | "failed"
820
+ | "interrupted";
821
+ tenantId?: string;
822
+ traceId: string;
823
+ workflowName: string;
824
+ };
825
+ logs: Array<{
826
+ _creationTime: number;
827
+ _id: string;
828
+ data?: any;
829
+ executionId: string;
830
+ level: "debug" | "info" | "warn" | "error";
831
+ message: string;
832
+ source: "workflow" | "activity" | "engine" | "system";
833
+ spanId?: string;
834
+ stepNumber?: number;
835
+ timestamp: number;
836
+ traceId?: string;
837
+ }>;
838
+ spans: Array<{
839
+ _creationTime: number;
840
+ _id: string;
841
+ attempt?: number;
842
+ attributes?: any;
843
+ endTime?: number;
844
+ error?: string;
845
+ executionId: string;
846
+ inputPreview?: any;
847
+ inputRef?: string;
848
+ inputSize?: number;
849
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
850
+ name: string;
851
+ outputPreview?: any;
852
+ outputRef?: string;
853
+ outputSize?: number;
854
+ parentSpanId?: string;
855
+ spanId: string;
856
+ startTime: number;
857
+ status: "started" | "ended";
858
+ stepNumber?: number;
859
+ traceId: string;
860
+ }>;
861
+ steps: Array<{
862
+ _creationTime: number;
863
+ _id: string;
864
+ attempt?: number;
865
+ completedAt?: number;
866
+ executionId: string;
867
+ inputPreview?: any;
868
+ inputRef?: string;
869
+ inputSize: number;
870
+ kind:
871
+ | "activity"
872
+ | "deferred"
873
+ | "clock"
874
+ | "nestedWorkflow"
875
+ | "system";
876
+ name: string;
877
+ resumeToken?: string;
878
+ runResult?:
879
+ | { kind: "success"; valuePreview?: any; valueRef?: string }
880
+ | {
881
+ error: string;
882
+ kind: "failed";
883
+ valuePreview?: any;
884
+ valueRef?: string;
885
+ }
886
+ | { kind: "canceled" };
887
+ signature: {
888
+ attempt?: number;
889
+ kind:
890
+ | "activity"
891
+ | "deferred"
892
+ | "clock"
893
+ | "nestedWorkflow"
894
+ | "system";
895
+ opName: string;
896
+ scheduleMeta?: any;
897
+ schemaVersion?: number;
898
+ };
899
+ spanId?: string;
900
+ startedAt: number;
901
+ state:
902
+ | "started"
903
+ | "suspended"
904
+ | "completed"
905
+ | "failed"
906
+ | "canceled";
907
+ stepNumber: number;
908
+ workId?: string;
909
+ }>;
910
+ } | null,
911
+ Name
912
+ >;
913
+ listExecutionLogs: FunctionReference<
914
+ "query",
915
+ "internal",
916
+ {
917
+ afterLogId?: string;
918
+ afterTimestamp?: number;
919
+ executionId: string;
920
+ level?: "debug" | "info" | "warn" | "error";
921
+ limit?: number;
922
+ order?: "asc" | "desc";
923
+ source?: "workflow" | "activity" | "engine" | "system";
924
+ spanId?: string;
925
+ },
926
+ {
927
+ cursor: { logId: string; timestamp: number } | null;
928
+ isDone: boolean;
929
+ page: Array<{
930
+ _creationTime: number;
931
+ _id: string;
932
+ data?: any;
933
+ executionId: string;
934
+ level: "debug" | "info" | "warn" | "error";
935
+ message: string;
936
+ source: "workflow" | "activity" | "engine" | "system";
937
+ spanId?: string;
938
+ stepNumber?: number;
939
+ timestamp: number;
940
+ traceId?: string;
941
+ }>;
942
+ },
943
+ Name
944
+ >;
945
+ listExecutions: FunctionReference<
946
+ "query",
947
+ "internal",
948
+ {
949
+ cursorExecutionId?: string;
950
+ cursorStartedAt?: number;
951
+ limit?: number;
952
+ order?: "asc" | "desc";
953
+ startedAfter?: number;
954
+ startedBefore?: number;
955
+ status?:
956
+ | "pending"
957
+ | "running"
958
+ | "suspended"
959
+ | "completed"
960
+ | "failed"
961
+ | "interrupted";
962
+ tenantId?: string;
963
+ workflowName?: string;
964
+ },
965
+ {
966
+ cursor: { executionId: string; startedAt: number } | null;
967
+ isDone: boolean;
968
+ page: Array<{
969
+ _creationTime: number;
970
+ _id: string;
971
+ completedAt?: number;
972
+ error?: string;
973
+ executionId: string;
974
+ generation: number;
975
+ lastResumedAt?: number;
976
+ lastSuspendedAt?: number;
977
+ parentExecutionId?: string;
978
+ payloadPreview?: any;
979
+ payloadRef?: string;
980
+ payloadSize: number;
981
+ resultKind?: "success" | "failure";
982
+ resultPreview?: any;
983
+ resultRef?: string;
984
+ runnerHandle?: string;
985
+ startedAt: number;
986
+ status:
987
+ | "pending"
988
+ | "running"
989
+ | "suspended"
990
+ | "completed"
991
+ | "failed"
992
+ | "interrupted";
993
+ tenantId?: string;
994
+ traceId: string;
995
+ workflowName: string;
996
+ }>;
997
+ },
998
+ Name
999
+ >;
1000
+ listExecutionSpans: FunctionReference<
1001
+ "query",
1002
+ "internal",
1003
+ {
1004
+ afterSpanId?: string;
1005
+ afterStartTime?: number;
1006
+ executionId: string;
1007
+ kind?: "workflow" | "activity" | "deferred" | "clock" | "system";
1008
+ limit?: number;
1009
+ status?: "started" | "ended";
1010
+ },
1011
+ {
1012
+ cursor: { spanId: string; startTime: number } | null;
1013
+ isDone: boolean;
1014
+ page: Array<{
1015
+ _creationTime: number;
1016
+ _id: string;
1017
+ attempt?: number;
1018
+ attributes?: any;
1019
+ endTime?: number;
1020
+ error?: string;
1021
+ executionId: string;
1022
+ inputPreview?: any;
1023
+ inputRef?: string;
1024
+ inputSize?: number;
1025
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
1026
+ name: string;
1027
+ outputPreview?: any;
1028
+ outputRef?: string;
1029
+ outputSize?: number;
1030
+ parentSpanId?: string;
1031
+ spanId: string;
1032
+ startTime: number;
1033
+ status: "started" | "ended";
1034
+ stepNumber?: number;
1035
+ traceId: string;
1036
+ }>;
1037
+ },
1038
+ Name
1039
+ >;
1040
+ listExecutionSteps: FunctionReference<
1041
+ "query",
1042
+ "internal",
1043
+ {
1044
+ afterStepNumber?: number;
1045
+ executionId: string;
1046
+ limit?: number;
1047
+ state?: "started" | "suspended" | "completed" | "failed" | "canceled";
1048
+ },
1049
+ {
1050
+ cursor: number | null;
1051
+ isDone: boolean;
1052
+ page: Array<{
1053
+ _creationTime: number;
1054
+ _id: string;
1055
+ attempt?: number;
1056
+ completedAt?: number;
1057
+ executionId: string;
1058
+ inputPreview?: any;
1059
+ inputRef?: string;
1060
+ inputSize: number;
1061
+ kind:
1062
+ | "activity"
1063
+ | "deferred"
1064
+ | "clock"
1065
+ | "nestedWorkflow"
1066
+ | "system";
1067
+ name: string;
1068
+ resumeToken?: string;
1069
+ runResult?:
1070
+ | { kind: "success"; valuePreview?: any; valueRef?: string }
1071
+ | {
1072
+ error: string;
1073
+ kind: "failed";
1074
+ valuePreview?: any;
1075
+ valueRef?: string;
1076
+ }
1077
+ | { kind: "canceled" };
1078
+ signature: {
1079
+ attempt?: number;
1080
+ kind:
1081
+ | "activity"
1082
+ | "deferred"
1083
+ | "clock"
1084
+ | "nestedWorkflow"
1085
+ | "system";
1086
+ opName: string;
1087
+ scheduleMeta?: any;
1088
+ schemaVersion?: number;
1089
+ };
1090
+ spanId?: string;
1091
+ startedAt: number;
1092
+ state:
1093
+ | "started"
1094
+ | "suspended"
1095
+ | "completed"
1096
+ | "failed"
1097
+ | "canceled";
1098
+ stepNumber: number;
1099
+ workId?: string;
1100
+ }>;
1101
+ },
1102
+ Name
1103
+ >;
1104
+ };
1105
+ runner: {
1106
+ enqueueActivity: FunctionReference<
1107
+ "mutation",
1108
+ "internal",
1109
+ {
1110
+ activityName: string;
1111
+ activityWorkerHandle: string;
1112
+ attempt: number;
1113
+ executionId: string;
1114
+ generation: number;
1115
+ spanId?: string;
1116
+ stepNumber: number;
1117
+ workflowName: string;
1118
+ workpoolOptions?: {
1119
+ defaultRetryBehavior?: {
1120
+ base: number;
1121
+ initialBackoffMs: number;
1122
+ maxAttempts: number;
1123
+ };
1124
+ logLevel?: "DEBUG" | "TRACE" | "INFO" | "REPORT" | "WARN" | "ERROR";
1125
+ maxParallelism?: number;
1126
+ retryActionsByDefault?: boolean;
1127
+ };
1128
+ },
1129
+ string,
1130
+ Name
1131
+ >;
1132
+ run: FunctionReference<
1133
+ "mutation",
1134
+ "internal",
1135
+ { executionId: string; generation: number },
1136
+ { enqueued: boolean; reason?: string },
1137
+ Name
1138
+ >;
1139
+ };
1140
+ spans: {
1141
+ createSpan: FunctionReference<
1142
+ "mutation",
1143
+ "internal",
1144
+ {
1145
+ attempt?: number;
1146
+ attributes?: any;
1147
+ executionId: string;
1148
+ input?: any;
1149
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
1150
+ name: string;
1151
+ parentSpanId?: string;
1152
+ spanId?: string;
1153
+ stepNumber?: number;
1154
+ traceId: string;
1155
+ },
1156
+ { created: boolean; spanId: string },
1157
+ Name
1158
+ >;
1159
+ endSpan: FunctionReference<
1160
+ "mutation",
1161
+ "internal",
1162
+ {
1163
+ attributes?: any;
1164
+ error?: string;
1165
+ executionId: string;
1166
+ output?: any;
1167
+ spanId: string;
1168
+ },
1169
+ { changed: boolean },
1170
+ Name
1171
+ >;
1172
+ getExecutionSpan: FunctionReference<
1173
+ "query",
1174
+ "internal",
1175
+ { executionId: string; spanId: string },
1176
+ any,
1177
+ Name
1178
+ >;
1179
+ internalCreateSpan: FunctionReference<
1180
+ "mutation",
1181
+ "internal",
1182
+ {
1183
+ attempt?: number;
1184
+ attributes?: any;
1185
+ endTime?: number;
1186
+ error?: string;
1187
+ executionId: string;
1188
+ input?: any;
1189
+ kind: "workflow" | "activity" | "deferred" | "clock" | "system";
1190
+ name: string;
1191
+ output?: any;
1192
+ parentSpanId?: string;
1193
+ spanId?: string;
1194
+ startTime: number;
1195
+ status: "started" | "ended";
1196
+ stepNumber?: number;
1197
+ traceId: string;
1198
+ },
1199
+ { spanId: string },
1200
+ Name
1201
+ >;
1202
+ listExecutionSpans: FunctionReference<
1203
+ "query",
1204
+ "internal",
1205
+ {
1206
+ afterStartTime?: number;
1207
+ executionId: string;
1208
+ kind?: "workflow" | "activity" | "deferred" | "clock" | "system";
1209
+ limit: number;
1210
+ status?: "started" | "ended";
1211
+ },
1212
+ any,
1213
+ Name
1214
+ >;
1215
+ };
1216
+ };