@codemation/core 0.0.7 → 0.0.11

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 (195) hide show
  1. package/package.json +6 -1
  2. package/dist/EngineExecutionLimitsPolicy-8MEFIYx1.d.cts +0 -160
  3. package/dist/EngineExecutionLimitsPolicy-BWAXW9D6.d.cts +0 -160
  4. package/dist/EngineExecutionLimitsPolicy-Bp8PS1Ss.d.cts +0 -159
  5. package/dist/EngineExecutionLimitsPolicy-CLxcN-D2.d.ts +0 -159
  6. package/dist/EngineExecutionLimitsPolicy-DZXuix51.d.ts +0 -160
  7. package/dist/EngineExecutionLimitsPolicy-Gfz6ngFd.d.ts +0 -160
  8. package/dist/EngineFactory-CBnntY3J.cjs +0 -3152
  9. package/dist/EngineFactory-CBnntY3J.cjs.map +0 -1
  10. package/dist/EngineFactory-Cwn3R2YA.js +0 -3087
  11. package/dist/EngineFactory-Cwn3R2YA.js.map +0 -1
  12. package/dist/EngineFactory-DWCnNocp.js +0 -3063
  13. package/dist/EngineFactory-DWCnNocp.js.map +0 -1
  14. package/dist/EngineFactory-DhPFou4p.cjs +0 -3188
  15. package/dist/EngineFactory-DhPFou4p.cjs.map +0 -1
  16. package/dist/EngineFactory-l_9xmBtv.cjs +0 -3190
  17. package/dist/EngineFactory-l_9xmBtv.cjs.map +0 -1
  18. package/dist/EngineFactory-w-aOWuqh.js +0 -3089
  19. package/dist/EngineFactory-w-aOWuqh.js.map +0 -1
  20. package/dist/InMemoryLiveWorkflowRepository-1J9MHN_I.js +0 -18
  21. package/dist/InMemoryLiveWorkflowRepository-1J9MHN_I.js.map +0 -1
  22. package/dist/InMemoryLiveWorkflowRepository-CULNqv96.d.ts +0 -1300
  23. package/dist/InMemoryLiveWorkflowRepository-D6eiiXxF.d.cts +0 -1168
  24. package/dist/InMemoryLiveWorkflowRepository-D7l8cjdZ.d.cts +0 -1130
  25. package/dist/InMemoryLiveWorkflowRepository-DL7LmC9S.d.ts +0 -1340
  26. package/dist/InMemoryLiveWorkflowRepository-jnv-OnOP.d.ts +0 -1300
  27. package/dist/InMemoryLiveWorkflowRepository-xny1_Z6i.cjs +0 -24
  28. package/dist/InMemoryLiveWorkflowRepository-xny1_Z6i.cjs.map +0 -1
  29. package/dist/InMemoryLiveWorkflowRepository-xr7b4kvi.d.ts +0 -1338
  30. package/dist/InMemoryWorkflowCatalog-BIdFpwbK.d.ts +0 -1205
  31. package/dist/InMemoryWorkflowCatalog-BW00_3N3.d.cts +0 -12
  32. package/dist/InMemoryWorkflowCatalog-BiYHGoPw.cjs +0 -24
  33. package/dist/InMemoryWorkflowCatalog-BiYHGoPw.cjs.map +0 -1
  34. package/dist/InMemoryWorkflowCatalog-BrG0ApMO.d.cts +0 -1115
  35. package/dist/InMemoryWorkflowCatalog-BzrAr--Y.js +0 -139
  36. package/dist/InMemoryWorkflowCatalog-BzrAr--Y.js.map +0 -1
  37. package/dist/InMemoryWorkflowCatalog-C-EJlJ7y.d.cts +0 -1120
  38. package/dist/InMemoryWorkflowCatalog-C4482bpw.cjs +0 -24
  39. package/dist/InMemoryWorkflowCatalog-C4482bpw.cjs.map +0 -1
  40. package/dist/InMemoryWorkflowCatalog-CZ0kZpOv.d.ts +0 -1289
  41. package/dist/InMemoryWorkflowCatalog-C_ACeLyW.d.cts +0 -1119
  42. package/dist/InMemoryWorkflowCatalog-CiHWIu5E.d.cts +0 -12
  43. package/dist/InMemoryWorkflowCatalog-CkH7gkya.js +0 -18
  44. package/dist/InMemoryWorkflowCatalog-CkH7gkya.js.map +0 -1
  45. package/dist/InMemoryWorkflowCatalog-CnpZVJM9.d.ts +0 -1205
  46. package/dist/InMemoryWorkflowCatalog-Cu68S8YR.js +0 -18
  47. package/dist/InMemoryWorkflowCatalog-Cu68S8YR.js.map +0 -1
  48. package/dist/InMemoryWorkflowCatalog-D2w9nMj2.cjs +0 -151
  49. package/dist/InMemoryWorkflowCatalog-D2w9nMj2.cjs.map +0 -1
  50. package/dist/InMemoryWorkflowCatalog-D5eMxEf7.js +0 -18
  51. package/dist/InMemoryWorkflowCatalog-D5eMxEf7.js.map +0 -1
  52. package/dist/InMemoryWorkflowCatalog-D5nCp2yZ.d.ts +0 -1267
  53. package/dist/InMemoryWorkflowCatalog-DIq0bjqN.d.ts +0 -12
  54. package/dist/InMemoryWorkflowCatalog-DLgaEaw_.d.ts +0 -1288
  55. package/dist/InMemoryWorkflowCatalog-DNBFdK-x.d.cts +0 -1120
  56. package/dist/InMemoryWorkflowCatalog-DQBkCzb7.cjs +0 -24
  57. package/dist/InMemoryWorkflowCatalog-DQBkCzb7.cjs.map +0 -1
  58. package/dist/InMemoryWorkflowCatalog-DS4-eX6i.d.cts +0 -1118
  59. package/dist/InMemoryWorkflowCatalog-DdVfy8MY.d.ts +0 -12
  60. package/dist/InMemoryWorkflowCatalog-DeVZu3g8.d.ts +0 -12
  61. package/dist/InMemoryWorkflowCatalog-GxkQjvt5.d.ts +0 -1200
  62. package/dist/InMemoryWorkflowCatalog-qaVRn1Lc.d.cts +0 -1115
  63. package/dist/InMemoryWorkflowCatalog-z1aIT4TC.d.cts +0 -12
  64. package/dist/InMemoryWorkflowRegistry-BBuOovLL.d.ts +0 -1007
  65. package/dist/InMemoryWorkflowRegistry-BIFnSl3k.d.ts +0 -1201
  66. package/dist/InMemoryWorkflowRegistry-BnGilthz.d.ts +0 -1137
  67. package/dist/InMemoryWorkflowRegistry-CEp5I8No.d.ts +0 -1146
  68. package/dist/InMemoryWorkflowRegistry-CHyMB9jW.d.cts +0 -976
  69. package/dist/InMemoryWorkflowRegistry-CUN7K86m.d.cts +0 -1061
  70. package/dist/InMemoryWorkflowRegistry-CVfHyELh.d.cts +0 -971
  71. package/dist/InMemoryWorkflowRegistry-CXXJrwAr.d.cts +0 -1052
  72. package/dist/InMemoryWorkflowRegistry-DDGfPTJy.d.ts +0 -1013
  73. package/dist/InMemoryWorkflowRegistry-DnYSOoT5.d.ts +0 -1120
  74. package/dist/InMemoryWorkflowRegistry-Dp5GiFF2.d.cts +0 -1035
  75. package/dist/InMemoryWorkflowRegistry-DypDBeOw.d.cts +0 -1116
  76. package/dist/InMemoryWorkflowRegistry-SzwJCAxT.d.ts +0 -1012
  77. package/dist/InMemoryWorkflowRegistry-jupvqyGc.d.cts +0 -977
  78. package/dist/InMemoryWorkflowRegistry-rAdKVWYT.d.ts +0 -1117
  79. package/dist/InProcessRetryRunner-BBNPkXjy.d.cts +0 -292
  80. package/dist/PersistedWorkflowSnapshotFactory-7RkOL3Kg.d.ts +0 -14
  81. package/dist/PersistedWorkflowSnapshotFactory-BmANa46W.cjs +0 -141
  82. package/dist/PersistedWorkflowSnapshotFactory-BmANa46W.cjs.map +0 -1
  83. package/dist/PersistedWorkflowSnapshotFactory-Bwb_etSt.js +0 -118
  84. package/dist/PersistedWorkflowSnapshotFactory-Bwb_etSt.js.map +0 -1
  85. package/dist/PersistedWorkflowSnapshotFactory-CRkKGNV6.js +0 -123
  86. package/dist/PersistedWorkflowSnapshotFactory-CRkKGNV6.js.map +0 -1
  87. package/dist/PersistedWorkflowSnapshotFactory-CZolnGy5.js +0 -101
  88. package/dist/PersistedWorkflowSnapshotFactory-CZolnGy5.js.map +0 -1
  89. package/dist/PersistedWorkflowSnapshotFactory-Ca_oysOv.cjs +0 -131
  90. package/dist/PersistedWorkflowSnapshotFactory-Ca_oysOv.cjs.map +0 -1
  91. package/dist/PersistedWorkflowSnapshotFactory-CqIcShnX.js +0 -103
  92. package/dist/PersistedWorkflowSnapshotFactory-CqIcShnX.js.map +0 -1
  93. package/dist/PersistedWorkflowSnapshotFactory-D-tBk4_G.js +0 -119
  94. package/dist/PersistedWorkflowSnapshotFactory-D-tBk4_G.js.map +0 -1
  95. package/dist/PersistedWorkflowSnapshotFactory-D4cXl2e2.cjs +0 -131
  96. package/dist/PersistedWorkflowSnapshotFactory-D4cXl2e2.cjs.map +0 -1
  97. package/dist/PersistedWorkflowSnapshotFactory-DINoP12r.cjs +0 -131
  98. package/dist/PersistedWorkflowSnapshotFactory-DINoP12r.cjs.map +0 -1
  99. package/dist/PersistedWorkflowSnapshotFactory-DJAwSuHU.js +0 -103
  100. package/dist/PersistedWorkflowSnapshotFactory-DJAwSuHU.js.map +0 -1
  101. package/dist/PersistedWorkflowSnapshotFactory-DSUjVCcf.cjs +0 -131
  102. package/dist/PersistedWorkflowSnapshotFactory-DSUjVCcf.cjs.map +0 -1
  103. package/dist/PersistedWorkflowSnapshotFactory-DdHuhkDb.cjs +0 -107
  104. package/dist/PersistedWorkflowSnapshotFactory-DdHuhkDb.cjs.map +0 -1
  105. package/dist/PersistedWorkflowSnapshotFactory-Dqc6NHis.js +0 -119
  106. package/dist/PersistedWorkflowSnapshotFactory-Dqc6NHis.js.map +0 -1
  107. package/dist/PersistedWorkflowSnapshotFactory-Dxa2dSrw.cjs +0 -130
  108. package/dist/PersistedWorkflowSnapshotFactory-Dxa2dSrw.cjs.map +0 -1
  109. package/dist/PersistedWorkflowSnapshotFactory-Ep79Ah1G.js +0 -123
  110. package/dist/PersistedWorkflowSnapshotFactory-Ep79Ah1G.js.map +0 -1
  111. package/dist/PersistedWorkflowSnapshotFactory-GyLfRuiJ.js +0 -119
  112. package/dist/PersistedWorkflowSnapshotFactory-GyLfRuiJ.js.map +0 -1
  113. package/dist/PersistedWorkflowSnapshotFactory-HTpBsBzn.js +0 -102
  114. package/dist/PersistedWorkflowSnapshotFactory-HTpBsBzn.js.map +0 -1
  115. package/dist/PersistedWorkflowSnapshotFactory-LVmaaf3t.cjs +0 -141
  116. package/dist/PersistedWorkflowSnapshotFactory-LVmaaf3t.cjs.map +0 -1
  117. package/dist/PersistedWorkflowSnapshotFactory-PZCpo2ZS.js +0 -119
  118. package/dist/PersistedWorkflowSnapshotFactory-PZCpo2ZS.js.map +0 -1
  119. package/dist/PersistedWorkflowSnapshotFactory-UjQ1SJev.cjs +0 -109
  120. package/dist/PersistedWorkflowSnapshotFactory-UjQ1SJev.cjs.map +0 -1
  121. package/dist/PersistedWorkflowSnapshotFactory-Y8kCrhcy.cjs +0 -109
  122. package/dist/PersistedWorkflowSnapshotFactory-Y8kCrhcy.cjs.map +0 -1
  123. package/dist/PersistedWorkflowSnapshotFactory-Z_nB-fmB.cjs +0 -108
  124. package/dist/PersistedWorkflowSnapshotFactory-Z_nB-fmB.cjs.map +0 -1
  125. package/dist/RunIntentService-1EE6N8ZL.cjs +0 -963
  126. package/dist/RunIntentService-1EE6N8ZL.cjs.map +0 -1
  127. package/dist/RunIntentService-2ivFmNQh.cjs +0 -3462
  128. package/dist/RunIntentService-2ivFmNQh.cjs.map +0 -1
  129. package/dist/RunIntentService-B0sUL5q-.js +0 -761
  130. package/dist/RunIntentService-B0sUL5q-.js.map +0 -1
  131. package/dist/RunIntentService-BFVbsOcg.js +0 -3131
  132. package/dist/RunIntentService-BFVbsOcg.js.map +0 -1
  133. package/dist/RunIntentService-BsBOwpVN.cjs +0 -1051
  134. package/dist/RunIntentService-BsBOwpVN.cjs.map +0 -1
  135. package/dist/RunIntentService-CSk3ETyn.js +0 -858
  136. package/dist/RunIntentService-CSk3ETyn.js.map +0 -1
  137. package/dist/RunIntentService-Ckn3u3tA.d.cts +0 -326
  138. package/dist/RunIntentService-DEo6GTTo.d.cts +0 -289
  139. package/dist/RunIntentService-DKrGtL0B.js +0 -782
  140. package/dist/RunIntentService-DKrGtL0B.js.map +0 -1
  141. package/dist/RunIntentService-DNOJc1R7.cjs +0 -942
  142. package/dist/RunIntentService-DNOJc1R7.cjs.map +0 -1
  143. package/dist/RunIntentService-Dq3pV53j.d.cts +0 -289
  144. package/dist/RunIntentService-NKobsfMQ.d.cts +0 -274
  145. package/dist/WorkflowSnapshotCodec-C3fuuS_R.d.cts +0 -22
  146. package/dist/WorkflowSnapshotCodec-CUudUo6f.js +0 -123
  147. package/dist/WorkflowSnapshotCodec-CUudUo6f.js.map +0 -1
  148. package/dist/WorkflowSnapshotCodec-CuCPQZTc.cjs +0 -129
  149. package/dist/WorkflowSnapshotCodec-CuCPQZTc.cjs.map +0 -1
  150. package/dist/WorkflowSnapshotCodec-DLiXQNvV.d.cts +0 -22
  151. package/dist/WorkflowSnapshotCodec-DNtdrZ7l.d.cts +0 -22
  152. package/dist/WorkflowSnapshotCodec-DTdWkoW_.d.cts +0 -22
  153. package/dist/credentialTypes-B5h3dI7r.d.cts +0 -1107
  154. package/dist/credentialTypes-B9okPCVo.d.cts +0 -963
  155. package/dist/credentialTypes-BFL70rgZ.d.cts +0 -964
  156. package/dist/credentialTypes-BGkh1O07.d.ts +0 -1010
  157. package/dist/credentialTypes-BNLi4Q7u.d.ts +0 -1030
  158. package/dist/credentialTypes-CeSoZGj3.d.cts +0 -994
  159. package/dist/credentialTypes-CpHc32Ig.d.cts +0 -984
  160. package/dist/credentialTypes-D0m7MQQl.d.cts +0 -1107
  161. package/dist/credentialTypes-D4nL2sUd.d.ts +0 -1000
  162. package/dist/credentialTypes-DBYK2Qbu.d.ts +0 -999
  163. package/dist/credentialTypes-DMJVy0r1.d.ts +0 -1000
  164. package/dist/credentialTypes-DhUAjYQp.d.ts +0 -1020
  165. package/dist/credentialTypes-gGITj5KL.d.cts +0 -964
  166. package/dist/credentialTypes-r3KVBJBE.d.cts +0 -974
  167. package/dist/diTokens-ClO27tjK.cjs +0 -34
  168. package/dist/diTokens-ClO27tjK.cjs.map +0 -1
  169. package/dist/diTokens-CoHBkwG6.js +0 -28
  170. package/dist/diTokens-CoHBkwG6.js.map +0 -1
  171. package/dist/index-6Doxmfnd.d.ts +0 -857
  172. package/dist/index-9g6Pfe9Z.d.ts +0 -689
  173. package/dist/index-AZ72Ej-K.d.ts +0 -920
  174. package/dist/index-BEk9V-q-.d.ts +0 -667
  175. package/dist/index-Bjt7_7oS.d.ts +0 -1192
  176. package/dist/index-CFGxsYXy.d.ts +0 -708
  177. package/dist/index-C_u8xFgn.d.ts +0 -690
  178. package/dist/index-CpbfsvOJ.d.ts +0 -1192
  179. package/dist/index-CsReNJN_.d.ts +0 -859
  180. package/dist/index-D5iNnXaW.d.ts +0 -667
  181. package/dist/index-DD_Eft1q.d.ts +0 -708
  182. package/dist/index-DiSYUe0G.d.ts +0 -1192
  183. package/dist/index-gIcH60sp.d.ts +0 -674
  184. package/dist/runtime-BIvd-1JA.cjs +0 -4112
  185. package/dist/runtime-BIvd-1JA.cjs.map +0 -1
  186. package/dist/runtime-D3eWKSQK.cjs +0 -3986
  187. package/dist/runtime-D3eWKSQK.cjs.map +0 -1
  188. package/dist/runtime-Dvp4xAjg.js +0 -3799
  189. package/dist/runtime-Dvp4xAjg.js.map +0 -1
  190. package/dist/runtime-vc76SSAa.js +0 -3685
  191. package/dist/runtime-vc76SSAa.js.map +0 -1
  192. package/dist/runtimeTypes-BK0b8SaG.d.cts +0 -884
  193. package/dist/runtimeTypes-CoYZkYQq.d.cts +0 -851
  194. package/dist/runtimeTypes-D-Pm0Uas.d.cts +0 -849
  195. package/dist/types-Cb5UK7Y6.d.ts +0 -857
@@ -1,920 +0,0 @@
1
- import "reflect-metadata";
2
- import { DependencyContainer, DependencyContainer as Container, Disposable, InjectionToken, InjectionToken as TypeToken, Lifecycle, RegistrationOptions, container, delay, inject, injectAll, injectable, instanceCachingFactory, instancePerContainerCachingFactory, predicateAwareClassFactory, registry, singleton } from "tsyringe";
3
- import { ReadableStream } from "node:stream/web";
4
-
5
- //#region src/contracts/retryPolicySpec.types.d.ts
6
-
7
- /**
8
- * In-process retry policy for runnable nodes. Serialized configs use the same
9
- * `kind` discriminator (`JSON.stringify` / persisted workflows).
10
- *
11
- * `maxAttempts` is the total number of tries including the first (e.g. 3 means up to 2 delays after failures).
12
- */
13
- type RetryPolicySpec = NoneRetryPolicySpec | FixedRetryPolicySpec | ExponentialRetryPolicySpec;
14
- interface NoneRetryPolicySpec {
15
- readonly kind: "none";
16
- }
17
- interface FixedRetryPolicySpec {
18
- readonly kind: "fixed";
19
- /** Total attempts including the first execution. Must be >= 1. */
20
- readonly maxAttempts: number;
21
- readonly delayMs: number;
22
- }
23
- interface ExponentialRetryPolicySpec {
24
- readonly kind: "exponential";
25
- /** Total attempts including the first execution. Must be >= 1. */
26
- readonly maxAttempts: number;
27
- readonly initialDelayMs: number;
28
- readonly multiplier: number;
29
- readonly maxDelayMs?: number;
30
- /** When true, each delay is multiplied by a random factor in [1, 1.2). */
31
- readonly jitter?: boolean;
32
- }
33
- //#endregion
34
- //#region src/contracts/workflowTypes.d.ts
35
- type WorkflowId = string;
36
- type NodeId = string;
37
- type OutputPortKey = string;
38
- type InputPortKey = string;
39
- type PersistedTokenId = string;
40
- type NodeKind = "trigger" | "node";
41
- type JsonPrimitive = string | number | boolean | null;
42
- interface JsonObject {
43
- readonly [key: string]: JsonValue;
44
- }
45
- type JsonValue = JsonPrimitive | JsonObject | JsonArray;
46
- type JsonArray = ReadonlyArray<JsonValue>;
47
- interface Edge {
48
- from: {
49
- nodeId: NodeId;
50
- output: OutputPortKey;
51
- };
52
- to: {
53
- nodeId: NodeId;
54
- input: InputPortKey;
55
- };
56
- }
57
- interface WorkflowDefinition {
58
- id: WorkflowId;
59
- name: string;
60
- nodes: NodeDefinition[];
61
- edges: Edge[];
62
- /** Directory + file-stem path under a workflow discovery root (for UI grouping only). */
63
- discoveryPathSegments?: readonly string[];
64
- }
65
- interface WorkflowGraph {
66
- next(nodeId: NodeId, output: OutputPortKey): ReadonlyArray<Readonly<{
67
- nodeId: NodeId;
68
- input: InputPortKey;
69
- }>>;
70
- }
71
- interface WorkflowGraphFactory {
72
- create(def: WorkflowDefinition): WorkflowGraph;
73
- }
74
- interface NodeConfigBase {
75
- readonly kind: NodeKind;
76
- readonly type: TypeToken<unknown>;
77
- readonly name?: string;
78
- readonly id?: NodeId;
79
- readonly icon?: string;
80
- readonly execution?: Readonly<{
81
- hint?: "local" | "worker";
82
- queue?: string;
83
- }>;
84
- /** In-process execute retries (runnable nodes). Triggers typically omit this. */
85
- readonly retryPolicy?: RetryPolicySpec;
86
- getCredentialRequirements?(): ReadonlyArray<CredentialRequirement>;
87
- }
88
- declare const runnableNodeInputType: unique symbol;
89
- declare const runnableNodeOutputType: unique symbol;
90
- declare const triggerNodeOutputType: unique symbol;
91
- interface RunnableNodeConfig<TInputJson$1 = unknown, TOutputJson$1 = unknown> extends NodeConfigBase {
92
- readonly kind: "node";
93
- readonly [runnableNodeInputType]?: TInputJson$1;
94
- readonly [runnableNodeOutputType]?: TOutputJson$1;
95
- }
96
- declare const triggerNodeSetupStateType: unique symbol;
97
- interface TriggerNodeConfig<TOutputJson$1 = unknown, TSetupState$1 extends JsonValue | undefined = undefined> extends NodeConfigBase {
98
- readonly kind: "trigger";
99
- readonly [triggerNodeOutputType]?: TOutputJson$1;
100
- readonly [triggerNodeSetupStateType]?: TSetupState$1;
101
- }
102
- type RunnableNodeInputJson<TConfig extends RunnableNodeConfig<any, any>> = TConfig extends RunnableNodeConfig<infer TInputJson, any> ? TInputJson : never;
103
- type RunnableNodeOutputJson<TConfig extends RunnableNodeConfig<any, any>> = TConfig extends RunnableNodeConfig<any, infer TOutputJson> ? TOutputJson : never;
104
- type TriggerNodeOutputJson<TConfig extends TriggerNodeConfig<any, any>> = TConfig extends TriggerNodeConfig<infer TOutputJson, any> ? TOutputJson : never;
105
- type TriggerNodeSetupState<TConfig extends TriggerNodeConfig<any, any>> = TConfig extends TriggerNodeConfig<any, infer TSetupState> ? TSetupState : never;
106
- interface NodeDefinition {
107
- id: NodeId;
108
- kind: NodeKind;
109
- type: TypeToken<unknown>;
110
- name?: string;
111
- config: NodeConfigBase;
112
- }
113
- interface NodeRef {
114
- id: NodeId;
115
- kind: NodeKind;
116
- name?: string;
117
- }
118
- type PairedItemRef = Readonly<{
119
- nodeId: NodeId;
120
- output: OutputPortKey;
121
- itemIndex: number;
122
- }>;
123
- type BinaryPreviewKind = "image" | "audio" | "video" | "download";
124
- type BinaryAttachment = Readonly<{
125
- id: string;
126
- storageKey: string;
127
- mimeType: string;
128
- size: number;
129
- storageDriver: string;
130
- previewKind: BinaryPreviewKind;
131
- createdAt: string;
132
- runId: RunId;
133
- workflowId: WorkflowId;
134
- nodeId: NodeId;
135
- activationId: NodeActivationId;
136
- filename?: string;
137
- sha256?: string;
138
- }>;
139
- type ItemBinary = Readonly<Record<string, BinaryAttachment>>;
140
- type Item<TJson = unknown> = Readonly<{
141
- json: TJson;
142
- binary?: ItemBinary;
143
- meta?: Readonly<Record<string, unknown>>;
144
- paired?: ReadonlyArray<PairedItemRef>;
145
- }>;
146
- type Items<TJson = unknown> = ReadonlyArray<Item<TJson>>;
147
- type NodeOutputs = Partial<Record<OutputPortKey, Items>>;
148
- type RunId = string;
149
- type NodeActivationId = string;
150
- interface ParentExecutionRef {
151
- runId: RunId;
152
- workflowId: WorkflowId;
153
- nodeId: NodeId;
154
- }
155
- interface RunDataSnapshot {
156
- getOutputs(nodeId: NodeId): NodeOutputs | undefined;
157
- getOutputItems(nodeId: NodeId, output?: OutputPortKey): Items;
158
- getOutputItem(nodeId: NodeId, itemIndex: number, output?: OutputPortKey): Item | undefined;
159
- }
160
- interface MutableRunData extends RunDataSnapshot {
161
- setOutputs(nodeId: NodeId, outputs: NodeOutputs): void;
162
- dump(): Record<NodeId, NodeOutputs>;
163
- }
164
- interface RunDataFactory {
165
- create(initial?: Record<NodeId, NodeOutputs>): MutableRunData;
166
- }
167
- interface RunIdFactory {
168
- makeRunId(): RunId;
169
- }
170
- interface ActivationIdFactory {
171
- makeActivationId(): NodeActivationId;
172
- }
173
- type UpstreamRefPlaceholder = `$${number}`;
174
- declare const branchRef: (index: number) => UpstreamRefPlaceholder;
175
- type ExecutionMode = "local" | "worker";
176
- interface NodeSchedulerDecision {
177
- mode: ExecutionMode;
178
- queue?: string;
179
- }
180
- interface NodeOffloadPolicy {
181
- decide(args: {
182
- workflowId: WorkflowId;
183
- nodeId: NodeId;
184
- config: NodeConfigBase;
185
- }): NodeSchedulerDecision;
186
- }
187
- //#endregion
188
- //#region src/contracts/credentialTypes.d.ts
189
- type CredentialTypeId = string;
190
- type CredentialInstanceId = string;
191
- type CredentialMaterialSourceKind = "db" | "env" | "code";
192
- type CredentialSetupStatus = "draft" | "ready";
193
- type CredentialHealthStatus = "unknown" | "healthy" | "failing";
194
- type CredentialFieldSchema = Readonly<{
195
- key: string;
196
- label: string;
197
- type: "string" | "password" | "textarea" | "json" | "boolean";
198
- required?: true;
199
- order?: number;
200
- placeholder?: string;
201
- helpText?: string;
202
- /** When set, host resolves this field from process.env at runtime; env wins over stored values. */
203
- envVarName?: string;
204
- }>;
205
- type CredentialRequirement = Readonly<{
206
- slotKey: string;
207
- label: string;
208
- acceptedTypes: ReadonlyArray<CredentialTypeId>;
209
- optional?: true;
210
- helpText?: string;
211
- helpUrl?: string;
212
- }>;
213
- type CredentialBindingKey = Readonly<{
214
- workflowId: WorkflowId;
215
- nodeId: NodeId;
216
- slotKey: string;
217
- }>;
218
- type CredentialBinding = Readonly<{
219
- key: CredentialBindingKey;
220
- instanceId: CredentialInstanceId;
221
- updatedAt: string;
222
- }>;
223
- type CredentialHealth = Readonly<{
224
- status: CredentialHealthStatus;
225
- message?: string;
226
- testedAt?: string;
227
- expiresAt?: string;
228
- details?: Readonly<Record<string, unknown>>;
229
- }>;
230
- type OAuth2ProviderFromPublicConfig = Readonly<{
231
- authorizeUrlFieldKey: string;
232
- tokenUrlFieldKey: string;
233
- userInfoUrlFieldKey?: string;
234
- }>;
235
- type CredentialOAuth2AuthDefinition = Readonly<{
236
- kind: "oauth2";
237
- providerId: string;
238
- scopes: ReadonlyArray<string>;
239
- clientIdFieldKey?: string;
240
- clientSecretFieldKey?: string;
241
- } | {
242
- kind: "oauth2";
243
- providerFromPublicConfig: OAuth2ProviderFromPublicConfig;
244
- scopes: ReadonlyArray<string>;
245
- clientIdFieldKey?: string;
246
- clientSecretFieldKey?: string;
247
- }>;
248
- type CredentialAuthDefinition = CredentialOAuth2AuthDefinition;
249
- type CredentialTypeDefinition = Readonly<{
250
- typeId: CredentialTypeId;
251
- displayName: string;
252
- description?: string;
253
- publicFields?: ReadonlyArray<CredentialFieldSchema>;
254
- secretFields?: ReadonlyArray<CredentialFieldSchema>;
255
- supportedSourceKinds?: ReadonlyArray<CredentialMaterialSourceKind>;
256
- auth?: CredentialAuthDefinition;
257
- }>;
258
- interface CredentialSessionService {
259
- getSession<TSession = unknown>(args: Readonly<{
260
- workflowId: WorkflowId;
261
- nodeId: NodeId;
262
- slotKey: string;
263
- }>): Promise<TSession>;
264
- }
265
- interface CredentialTypeRegistry {
266
- listTypes(): ReadonlyArray<CredentialTypeDefinition>;
267
- getType(typeId: CredentialTypeId): CredentialTypeDefinition | undefined;
268
- }
269
- declare class CredentialUnboundError extends Error {
270
- readonly bindingKey: CredentialBindingKey;
271
- readonly acceptedTypes: ReadonlyArray<CredentialTypeId>;
272
- constructor(bindingKey: CredentialBindingKey, acceptedTypes?: ReadonlyArray<CredentialTypeId>);
273
- private static createMessage;
274
- }
275
- //#endregion
276
- //#region src/contracts/NoRetryPolicy.d.ts
277
- declare class NoRetryPolicy implements NoneRetryPolicySpec {
278
- readonly kind: "none";
279
- }
280
- //#endregion
281
- //#region src/contracts/RetryPolicy.d.ts
282
- declare class RetryPolicy implements FixedRetryPolicySpec {
283
- readonly maxAttempts: number;
284
- readonly delayMs: number;
285
- readonly kind: "fixed";
286
- constructor(maxAttempts: number, delayMs: number);
287
- /** Default for HTTP-style transient failures: 3 tries, 1s between attempts. */
288
- static readonly defaultForHttp: FixedRetryPolicySpec;
289
- /** Default for LLM / agent calls: 3 tries, 2s fixed backoff. */
290
- static readonly defaultForAiAgent: FixedRetryPolicySpec;
291
- }
292
- //#endregion
293
- //#region src/contracts/ExpRetryPolicy.d.ts
294
- declare class ExpRetryPolicy implements ExponentialRetryPolicySpec {
295
- readonly maxAttempts: number;
296
- readonly initialDelayMs: number;
297
- readonly multiplier: number;
298
- readonly maxDelayMs?: number | undefined;
299
- readonly jitter?: boolean | undefined;
300
- readonly kind: "exponential";
301
- constructor(maxAttempts: number, initialDelayMs: number, multiplier: number, maxDelayMs?: number | undefined, jitter?: boolean | undefined);
302
- }
303
- //#endregion
304
- //#region src/events/runEvents.d.ts
305
- type RunEvent = Readonly<{
306
- kind: "runCreated";
307
- runId: RunId;
308
- workflowId: WorkflowId;
309
- parent?: ParentExecutionRef;
310
- at: string;
311
- }> | Readonly<{
312
- kind: "runSaved";
313
- runId: RunId;
314
- workflowId: WorkflowId;
315
- parent?: ParentExecutionRef;
316
- at: string;
317
- state: PersistedRunState;
318
- }> | Readonly<{
319
- kind: "nodeQueued";
320
- runId: RunId;
321
- workflowId: WorkflowId;
322
- parent?: ParentExecutionRef;
323
- at: string;
324
- snapshot: NodeExecutionSnapshot;
325
- }> | Readonly<{
326
- kind: "nodeStarted";
327
- runId: RunId;
328
- workflowId: WorkflowId;
329
- parent?: ParentExecutionRef;
330
- at: string;
331
- snapshot: NodeExecutionSnapshot;
332
- }> | Readonly<{
333
- kind: "nodeCompleted";
334
- runId: RunId;
335
- workflowId: WorkflowId;
336
- parent?: ParentExecutionRef;
337
- at: string;
338
- snapshot: NodeExecutionSnapshot;
339
- }> | Readonly<{
340
- kind: "nodeFailed";
341
- runId: RunId;
342
- workflowId: WorkflowId;
343
- parent?: ParentExecutionRef;
344
- at: string;
345
- snapshot: NodeExecutionSnapshot;
346
- }>;
347
- interface RunEventSubscription {
348
- close(): Promise<void>;
349
- }
350
- interface RunEventBus {
351
- publish(event: RunEvent): Promise<void>;
352
- subscribe(onEvent: (event: RunEvent) => void): Promise<RunEventSubscription>;
353
- subscribeToWorkflow(workflowId: WorkflowId, onEvent: (event: RunEvent) => void): Promise<RunEventSubscription>;
354
- }
355
- //#endregion
356
- //#region src/contracts/runTypes.d.ts
357
- interface RunExecutionOptions {
358
- localOnly?: boolean;
359
- webhook?: boolean;
360
- mode?: "manual" | "debug";
361
- sourceWorkflowId?: WorkflowId;
362
- sourceRunId?: RunId;
363
- derivedFromRunId?: RunId;
364
- isMutable?: boolean;
365
- }
366
- type RunStopCondition = Readonly<{
367
- kind: "workflowCompleted";
368
- }> | Readonly<{
369
- kind: "nodeCompleted";
370
- nodeId: NodeId;
371
- }>;
372
- interface RunStateResetRequest {
373
- clearFromNodeId: NodeId;
374
- }
375
- interface PersistedRunControlState {
376
- stopCondition?: RunStopCondition;
377
- }
378
- interface PersistedWorkflowSnapshotNode {
379
- id: NodeId;
380
- kind: NodeKind;
381
- name?: string;
382
- nodeTokenId: PersistedTokenId;
383
- configTokenId: PersistedTokenId;
384
- tokenName?: string;
385
- configTokenName?: string;
386
- config: unknown;
387
- }
388
- interface PersistedWorkflowSnapshot {
389
- id: WorkflowId;
390
- name: string;
391
- nodes: ReadonlyArray<PersistedWorkflowSnapshotNode>;
392
- edges: ReadonlyArray<Edge>;
393
- }
394
- type PinnedNodeOutputsByPort = Readonly<Record<OutputPortKey, Items>>;
395
- interface PersistedMutableNodeState {
396
- pinnedOutputsByPort?: PinnedNodeOutputsByPort;
397
- lastDebugInput?: Items;
398
- }
399
- interface PersistedMutableRunState {
400
- nodesById: Readonly<Record<NodeId, PersistedMutableNodeState>>;
401
- }
402
- type NodeInputsByPort = Readonly<Record<InputPortKey, Items>>;
403
- interface RunQueueEntry {
404
- nodeId: NodeId;
405
- input: Items;
406
- toInput?: InputPortKey;
407
- batchId?: string;
408
- from?: Readonly<{
409
- nodeId: NodeId;
410
- output: OutputPortKey;
411
- }>;
412
- collect?: Readonly<{
413
- expectedInputs: ReadonlyArray<InputPortKey>;
414
- received: Readonly<Record<InputPortKey, Items>>;
415
- }>;
416
- }
417
- type NodeExecutionStatus = "pending" | "queued" | "running" | "completed" | "failed" | "skipped";
418
- interface NodeExecutionError {
419
- message: string;
420
- name?: string;
421
- stack?: string;
422
- }
423
- interface NodeExecutionSnapshot {
424
- runId: RunId;
425
- workflowId: WorkflowId;
426
- nodeId: NodeId;
427
- activationId?: NodeActivationId;
428
- parent?: ParentExecutionRef;
429
- status: NodeExecutionStatus;
430
- usedPinnedOutput?: boolean;
431
- queuedAt?: string;
432
- startedAt?: string;
433
- finishedAt?: string;
434
- updatedAt: string;
435
- inputsByPort?: NodeInputsByPort;
436
- outputs?: NodeOutputs;
437
- error?: NodeExecutionError;
438
- }
439
- interface RunCurrentState {
440
- outputsByNode: Record<NodeId, NodeOutputs>;
441
- nodeSnapshotsByNodeId: Record<NodeId, NodeExecutionSnapshot>;
442
- mutableState?: PersistedMutableRunState;
443
- }
444
- interface CurrentStateExecutionRequest {
445
- workflow: WorkflowDefinition;
446
- items?: Items;
447
- parent?: ParentExecutionRef;
448
- executionOptions?: RunExecutionOptions;
449
- workflowSnapshot?: PersistedWorkflowSnapshot;
450
- mutableState?: PersistedMutableRunState;
451
- currentState?: RunCurrentState;
452
- stopCondition?: RunStopCondition;
453
- reset?: RunStateResetRequest;
454
- }
455
- interface ExecutionFrontierPlan {
456
- rootNodeId?: NodeId;
457
- rootNodeInput?: Items;
458
- queue: RunQueueEntry[];
459
- currentState: RunCurrentState;
460
- stopCondition: RunStopCondition;
461
- satisfiedNodeIds: ReadonlyArray<NodeId>;
462
- skippedNodeIds: ReadonlyArray<NodeId>;
463
- clearedNodeIds: ReadonlyArray<NodeId>;
464
- preservedPinnedNodeIds: ReadonlyArray<NodeId>;
465
- }
466
- type RunStatus = "running" | "pending" | "completed" | "failed";
467
- interface RunSummary {
468
- runId: RunId;
469
- workflowId: WorkflowId;
470
- startedAt: string;
471
- status: RunStatus;
472
- /** ISO timestamp when the run finished (derived from node snapshots or store `updatedAt`); omit while running/pending. */
473
- finishedAt?: string;
474
- parent?: ParentExecutionRef;
475
- executionOptions?: RunExecutionOptions;
476
- }
477
- interface PendingNodeExecution {
478
- runId: RunId;
479
- activationId: NodeActivationId;
480
- workflowId: WorkflowId;
481
- nodeId: NodeId;
482
- itemsIn: number;
483
- inputsByPort: NodeInputsByPort;
484
- receiptId: string;
485
- queue?: string;
486
- batchId?: string;
487
- enqueuedAt: string;
488
- }
489
- interface PersistedRunState {
490
- runId: RunId;
491
- workflowId: WorkflowId;
492
- startedAt: string;
493
- parent?: ParentExecutionRef;
494
- executionOptions?: RunExecutionOptions;
495
- control?: PersistedRunControlState;
496
- workflowSnapshot?: PersistedWorkflowSnapshot;
497
- mutableState?: PersistedMutableRunState;
498
- status: RunStatus;
499
- pending?: PendingNodeExecution;
500
- queue: RunQueueEntry[];
501
- outputsByNode: Record<NodeId, NodeOutputs>;
502
- nodeSnapshotsByNodeId: Record<NodeId, NodeExecutionSnapshot>;
503
- }
504
- interface RunStateStore {
505
- createRun(args: {
506
- runId: RunId;
507
- workflowId: WorkflowId;
508
- startedAt: string;
509
- parent?: ParentExecutionRef;
510
- executionOptions?: RunExecutionOptions;
511
- control?: PersistedRunControlState;
512
- workflowSnapshot?: PersistedWorkflowSnapshot;
513
- mutableState?: PersistedMutableRunState;
514
- }): Promise<void>;
515
- load(runId: RunId): Promise<PersistedRunState | undefined>;
516
- save(state: PersistedRunState): Promise<void>;
517
- }
518
- interface RunListingStore {
519
- listRuns(args?: Readonly<{
520
- workflowId?: WorkflowId;
521
- limit?: number;
522
- }>): Promise<ReadonlyArray<RunSummary>>;
523
- }
524
- type RunResult = {
525
- runId: RunId;
526
- workflowId: WorkflowId;
527
- startedAt: string;
528
- status: "completed";
529
- outputs: Items;
530
- } | {
531
- runId: RunId;
532
- workflowId: WorkflowId;
533
- startedAt: string;
534
- status: "pending";
535
- pending: PendingNodeExecution;
536
- } | {
537
- runId: RunId;
538
- workflowId: WorkflowId;
539
- startedAt: string;
540
- status: "failed";
541
- error: {
542
- message: string;
543
- };
544
- };
545
- type WebhookRunResult = Readonly<{
546
- runId: RunId;
547
- workflowId: WorkflowId;
548
- startedAt: string;
549
- runStatus: "pending" | "completed";
550
- response: Items;
551
- }>;
552
- interface PersistedWorkflowTokenRegistryLike {
553
- register(type: TypeToken<unknown>, packageId: string, persistedNameOverride?: string): string;
554
- getTokenId(type: TypeToken<unknown>): string | undefined;
555
- resolve(tokenId: string): TypeToken<unknown> | undefined;
556
- registerFromWorkflows?(workflows: ReadonlyArray<WorkflowDefinition>): void;
557
- }
558
- interface RunCompletionNotifier {
559
- resolveRunCompletion(result: RunResult): void;
560
- resolveWebhookResponse(result: WebhookRunResult): void;
561
- }
562
- interface RunEventPublisherDeps {
563
- eventBus?: RunEventBus;
564
- }
565
- //#endregion
566
- //#region src/contracts/webhookTypes.d.ts
567
- type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
568
- interface WebhookControlSignal {
569
- readonly __webhookControl: true;
570
- readonly kind: "respondNow" | "respondNowAndContinue";
571
- readonly responseItems: Items;
572
- readonly continueItems?: Items;
573
- }
574
- interface WebhookSpec {
575
- endpointKey: string;
576
- methods: ReadonlyArray<HttpMethod>;
577
- parseJsonBody?: (body: unknown) => unknown;
578
- }
579
- interface WebhookRegistration {
580
- endpointId: string;
581
- methods: ReadonlyArray<HttpMethod>;
582
- path: string;
583
- }
584
- interface TriggerInstanceId {
585
- workflowId: WorkflowId;
586
- nodeId: NodeId;
587
- }
588
- interface WebhookInvocationMatch {
589
- endpointId: string;
590
- workflowId: WorkflowId;
591
- nodeId: NodeId;
592
- methods: ReadonlyArray<HttpMethod>;
593
- parseJsonBody?: (body: unknown) => unknown;
594
- }
595
- interface WebhookTriggerMatcher {
596
- register(args: {
597
- workflowId: WorkflowId;
598
- nodeId: NodeId;
599
- endpointId: string;
600
- methods: ReadonlyArray<HttpMethod>;
601
- parseJsonBody?: (body: unknown) => unknown;
602
- }): void;
603
- clear?(): void;
604
- lookup(endpointId: string): WebhookInvocationMatch | undefined;
605
- match(args: {
606
- endpointId: string;
607
- method: HttpMethod;
608
- }): WebhookInvocationMatch | undefined;
609
- }
610
- //#endregion
611
- //#region src/contracts/runtimeTypes.d.ts
612
- interface WorkflowRunnerService {
613
- runById(args: {
614
- workflowId: WorkflowId;
615
- startAt?: NodeId;
616
- items: Items;
617
- parent?: ParentExecutionRef;
618
- }): Promise<RunResult>;
619
- }
620
- interface WorkflowRunnerResolver {
621
- resolve(): WorkflowRunnerService | undefined;
622
- }
623
- interface WorkflowRepository {
624
- list(): ReadonlyArray<WorkflowDefinition>;
625
- get(workflowId: WorkflowId): WorkflowDefinition | undefined;
626
- }
627
- interface WorkflowCatalog extends WorkflowRepository {
628
- setWorkflows(workflows: ReadonlyArray<WorkflowDefinition>): void;
629
- }
630
- type WorkflowRegistry = WorkflowCatalog;
631
- interface NodeResolver {
632
- resolve<T>(token: TypeToken<T>): T;
633
- getContainer(): Container | undefined;
634
- }
635
- interface WebhookRegistrar {
636
- registerWebhook(spec: {
637
- workflowId: WorkflowId;
638
- nodeId: NodeId;
639
- endpointKey: string;
640
- methods: ReadonlyArray<HttpMethod>;
641
- parseJsonBody?: (body: unknown) => unknown;
642
- basePath: string;
643
- }): WebhookRegistration;
644
- clear?(): Promise<void> | void;
645
- }
646
- interface NodeActivationObserver {
647
- onNodeActivation(stats: NodeActivationStats): void;
648
- }
649
- interface NodeExecutionStatePublisher {
650
- markQueued(args: {
651
- nodeId: NodeId;
652
- activationId?: NodeActivationId;
653
- inputsByPort?: NodeInputsByPort;
654
- }): Promise<void>;
655
- markRunning(args: {
656
- nodeId: NodeId;
657
- activationId?: NodeActivationId;
658
- inputsByPort?: NodeInputsByPort;
659
- }): Promise<void>;
660
- markCompleted(args: {
661
- nodeId: NodeId;
662
- activationId?: NodeActivationId;
663
- inputsByPort?: NodeInputsByPort;
664
- outputs?: NodeOutputs;
665
- }): Promise<void>;
666
- markFailed(args: {
667
- nodeId: NodeId;
668
- activationId?: NodeActivationId;
669
- inputsByPort?: NodeInputsByPort;
670
- error: Error;
671
- }): Promise<void>;
672
- }
673
- type BinaryBody = ReadableStream<Uint8Array> | AsyncIterable<Uint8Array> | Uint8Array | ArrayBuffer;
674
- interface BinaryStorageWriteRequest {
675
- storageKey: string;
676
- body: BinaryBody;
677
- }
678
- interface BinaryStorageWriteResult {
679
- storageKey: string;
680
- size: number;
681
- sha256?: string;
682
- }
683
- interface BinaryStorageReadResult {
684
- body: ReadableStream<Uint8Array>;
685
- size?: number;
686
- }
687
- interface BinaryStorageStatResult {
688
- exists: boolean;
689
- size?: number;
690
- }
691
- interface BinaryStorage {
692
- readonly driverName: string;
693
- write(args: BinaryStorageWriteRequest): Promise<BinaryStorageWriteResult>;
694
- openReadStream(storageKey: string): Promise<BinaryStorageReadResult | undefined>;
695
- stat(storageKey: string): Promise<BinaryStorageStatResult>;
696
- delete(storageKey: string): Promise<void>;
697
- }
698
- interface BinaryAttachmentCreateRequest {
699
- name: string;
700
- body: BinaryBody;
701
- mimeType: string;
702
- filename?: string;
703
- previewKind?: BinaryAttachment["previewKind"];
704
- }
705
- interface NodeBinaryAttachmentService extends ExecutionBinaryService {
706
- attach(args: BinaryAttachmentCreateRequest): Promise<BinaryAttachment>;
707
- withAttachment<TJson>(item: Item<TJson>, name: string, attachment: BinaryAttachment): Item<TJson>;
708
- }
709
- interface ExecutionBinaryService {
710
- forNode(args: {
711
- nodeId: NodeId;
712
- activationId: NodeActivationId;
713
- }): NodeBinaryAttachmentService;
714
- openReadStream(attachment: BinaryAttachment): Promise<BinaryStorageReadResult | undefined>;
715
- }
716
- interface ExecutionContext {
717
- runId: RunId;
718
- workflowId: WorkflowId;
719
- parent?: ParentExecutionRef;
720
- now: () => Date;
721
- data: RunDataSnapshot;
722
- nodeState?: NodeExecutionStatePublisher;
723
- binary: ExecutionBinaryService;
724
- getCredential<TSession = unknown>(slotKey: string): Promise<TSession>;
725
- }
726
- interface ExecutionContextFactory {
727
- create(args: {
728
- runId: RunId;
729
- workflowId: WorkflowId;
730
- parent?: ParentExecutionRef;
731
- data: RunDataSnapshot;
732
- nodeState?: NodeExecutionStatePublisher;
733
- getCredential<TSession = unknown>(slotKey: string): Promise<TSession>;
734
- }): ExecutionContext;
735
- }
736
- interface NodeExecutionContext<TConfig extends NodeConfigBase = NodeConfigBase> extends ExecutionContext {
737
- nodeId: NodeId;
738
- activationId: NodeActivationId;
739
- config: TConfig;
740
- binary: NodeBinaryAttachmentService;
741
- }
742
- interface TriggerSetupContext<TConfig extends TriggerNodeConfig<any, any> = TriggerNodeConfig<any, any>, TSetupState$1 extends JsonValue | undefined = TriggerNodeSetupState<TConfig>> extends ExecutionContext {
743
- trigger: TriggerInstanceId;
744
- config: TConfig;
745
- previousState: TSetupState$1;
746
- registerWebhook(spec: WebhookSpec): WebhookRegistration;
747
- registerCleanup(cleanup: TriggerCleanupHandle): void;
748
- emit(items: Items): Promise<void>;
749
- }
750
- interface TriggerTestItemsContext<TConfig extends TriggerNodeConfig<any, any> = TriggerNodeConfig<any, any>, TSetupState$1 extends JsonValue | undefined = TriggerNodeSetupState<TConfig>> extends ExecutionContext {
751
- trigger: TriggerInstanceId;
752
- nodeId: NodeId;
753
- config: TConfig;
754
- previousState: TSetupState$1;
755
- }
756
- /**
757
- * Trigger setup state is intentionally engine-owned so future ownership and
758
- * leader-election metadata can be coordinated centrally rather than pushed into
759
- * package-level setup code.
760
- */
761
- interface PersistedTriggerSetupState<TState extends JsonValue | undefined = JsonValue | undefined> {
762
- trigger: TriggerInstanceId;
763
- updatedAt: string;
764
- state: TState;
765
- }
766
- interface TriggerSetupStateStore {
767
- load(trigger: TriggerInstanceId): Promise<PersistedTriggerSetupState | undefined>;
768
- save(state: PersistedTriggerSetupState): Promise<void>;
769
- delete(trigger: TriggerInstanceId): Promise<void>;
770
- }
771
- interface TriggerCleanupHandle {
772
- stop(): Promise<void> | void;
773
- }
774
- interface NodeActivationStats {
775
- activationId: NodeActivationId;
776
- nodeId: NodeId;
777
- itemsIn: number;
778
- itemsOutByPort: Readonly<Record<OutputPortKey, number>>;
779
- }
780
- interface EngineHost {
781
- credentialSessions: CredentialSessionService;
782
- workflows?: WorkflowRunnerService;
783
- registerWebhook(spec: {
784
- workflowId: WorkflowId;
785
- nodeId: NodeId;
786
- endpointKey: string;
787
- methods: ReadonlyArray<HttpMethod>;
788
- parseJsonBody?: (body: unknown) => unknown;
789
- basePath: string;
790
- }): WebhookRegistration;
791
- onNodeActivation(stats: NodeActivationStats): void;
792
- }
793
- interface Node<TConfig extends NodeConfigBase = NodeConfigBase> {
794
- kind: "node";
795
- outputPorts: ReadonlyArray<OutputPortKey>;
796
- execute(items: Items, ctx: NodeExecutionContext<TConfig>): Promise<NodeOutputs>;
797
- }
798
- interface MultiInputNode<TConfig extends NodeConfigBase = NodeConfigBase> {
799
- kind: "node";
800
- outputPorts: ReadonlyArray<OutputPortKey>;
801
- executeMulti(inputsByPort: NodeInputsByPort, ctx: NodeExecutionContext<TConfig>): Promise<NodeOutputs>;
802
- }
803
- type TriggerSetupStateFor<TConfig extends TriggerNodeConfig<any, any>> = TriggerNodeSetupState<TConfig>;
804
- interface TriggerNode<TConfig extends TriggerNodeConfig<any, any> = TriggerNodeConfig<any, any>> {
805
- kind: "trigger";
806
- outputPorts: readonly ["main"];
807
- setup(ctx: TriggerSetupContext<TConfig>): Promise<TriggerSetupStateFor<TConfig>>;
808
- execute(items: Items, ctx: NodeExecutionContext<TConfig>): Promise<NodeOutputs>;
809
- }
810
- interface TestableTriggerNode<TConfig extends TriggerNodeConfig<any, any> = TriggerNodeConfig<any, any>> extends TriggerNode<TConfig> {
811
- getTestItems(ctx: TriggerTestItemsContext<TConfig>): Promise<Items>;
812
- }
813
- type ExecutableTriggerNode<TConfig extends TriggerNodeConfig<any, any> = TriggerNodeConfig<any, any>> = TriggerNode<TConfig>;
814
- interface NodeExecutionRequest {
815
- runId: RunId;
816
- activationId: NodeActivationId;
817
- workflowId: WorkflowId;
818
- nodeId: NodeId;
819
- input: Items;
820
- parent?: ParentExecutionRef;
821
- queue?: string;
822
- executionOptions?: RunExecutionOptions;
823
- }
824
- interface NodeExecutionScheduler {
825
- enqueue(request: NodeExecutionRequest): Promise<{
826
- receiptId: string;
827
- }>;
828
- cancel?(receiptId: string): Promise<void>;
829
- }
830
- type NodeActivationRequestBase = Readonly<{
831
- runId: RunId;
832
- activationId: NodeActivationId;
833
- workflowId: WorkflowId;
834
- nodeId: NodeId;
835
- parent?: ParentExecutionRef;
836
- executionOptions?: RunExecutionOptions;
837
- batchId?: string;
838
- ctx: NodeExecutionContext;
839
- }>;
840
- type NodeActivationRequest = (NodeActivationRequestBase & Readonly<{
841
- kind: "single";
842
- input: Items;
843
- }>) | (NodeActivationRequestBase & Readonly<{
844
- kind: "multi";
845
- inputsByPort: NodeInputsByPort;
846
- }>);
847
- interface NodeActivationReceipt {
848
- receiptId: string;
849
- mode?: "local" | "worker";
850
- queue?: string;
851
- }
852
- interface NodeActivationContinuation {
853
- markNodeRunning(args: {
854
- runId: RunId;
855
- activationId: NodeActivationId;
856
- nodeId: NodeId;
857
- inputsByPort: NodeInputsByPort;
858
- }): Promise<void>;
859
- resumeFromNodeResult(args: {
860
- runId: RunId;
861
- activationId: NodeActivationId;
862
- nodeId: NodeId;
863
- outputs: NodeOutputs;
864
- }): Promise<RunResult>;
865
- resumeFromNodeError(args: {
866
- runId: RunId;
867
- activationId: NodeActivationId;
868
- nodeId: NodeId;
869
- error: Error;
870
- }): Promise<RunResult>;
871
- }
872
- interface NodeActivationScheduler {
873
- setContinuation?(continuation: NodeActivationContinuation): void;
874
- enqueue(request: NodeActivationRequest): Promise<NodeActivationReceipt>;
875
- notifyPendingStatePersisted?(runId: RunId): void;
876
- cancel?(receiptId: string): Promise<void>;
877
- }
878
- interface WorkflowNodeInstanceFactory {
879
- createNodes(workflow: WorkflowDefinition): ReadonlyMap<NodeId, unknown>;
880
- }
881
- interface WorkflowSnapshotFactory {
882
- create(workflow: WorkflowDefinition): PersistedWorkflowSnapshot;
883
- }
884
- interface WorkflowSnapshotResolver {
885
- resolve(args: {
886
- workflowId: WorkflowId;
887
- workflowSnapshot?: PersistedWorkflowSnapshot;
888
- }): WorkflowDefinition | undefined;
889
- }
890
- interface EngineDeps {
891
- credentialSessions: CredentialSessionService;
892
- workflowRunnerResolver: WorkflowRunnerResolver;
893
- workflowCatalog: WorkflowCatalog;
894
- workflowRepository: WorkflowRepository;
895
- nodeResolver: NodeResolver;
896
- webhookRegistrar: WebhookRegistrar;
897
- triggerSetupStateStore: TriggerSetupStateStore;
898
- webhookTriggerMatcher: WebhookTriggerMatcher;
899
- nodeActivationObserver: NodeActivationObserver;
900
- runIdFactory: RunIdFactory;
901
- activationIdFactory: ActivationIdFactory;
902
- webhookBasePath?: string;
903
- runStore: RunStateStore;
904
- activationScheduler: NodeActivationScheduler;
905
- runDataFactory: RunDataFactory;
906
- executionContextFactory: ExecutionContextFactory;
907
- eventBus?: RunEventBus;
908
- tokenRegistry: PersistedWorkflowTokenRegistryLike;
909
- workflowNodeInstanceFactory: WorkflowNodeInstanceFactory;
910
- }
911
- //#endregion
912
- //#region src/contracts/runFinishedAtFactory.d.ts
913
- type RunFinishedAtSource = Pick<PersistedRunState, "status" | "nodeSnapshotsByNodeId">;
914
- /** Derives workflow end time from node snapshots for run listings. */
915
- declare class RunFinishedAtFactory {
916
- static resolveIso(state: RunFinishedAtSource): string | undefined;
917
- }
918
- //#endregion
919
- export { WebhookTriggerMatcher as $, RegistrationOptions as $n, BinaryPreviewKind as $t, PersistedTriggerSetupState as A, RunnableNodeOutputJson as An, RunEventSubscription as At, WorkflowNodeInstanceFactory as B, runnableNodeInputType as Bn, CredentialInstanceId as Bt, NodeActivationStats as C, PersistedTokenId as Cn, RunStateStore as Ct, NodeExecutionScheduler as D, RunIdFactory as Dn, WebhookRunResult as Dt, NodeExecutionRequest as E, RunId as En, RunSummary as Et, TriggerSetupStateFor as F, WorkflowDefinition as Fn, CredentialBinding as Ft, WorkflowSnapshotFactory as G, FixedRetryPolicySpec as Gn, CredentialSetupStatus as Gt, WorkflowRepository as H, triggerNodeOutputType as Hn, CredentialOAuth2AuthDefinition as Ht, TriggerSetupStateStore as I, WorkflowGraph as In, CredentialBindingKey as It, TriggerInstanceId as J, Container as Jn, CredentialTypeRegistry as Jt, WorkflowSnapshotResolver as K, NoneRetryPolicySpec as Kn, CredentialTypeDefinition as Kt, TriggerTestItemsContext as L, WorkflowGraphFactory as Ln, CredentialFieldSchema as Lt, TriggerCleanupHandle as M, TriggerNodeOutputJson as Mn, RetryPolicy as Mt, TriggerNode as N, TriggerNodeSetupState as Nn, NoRetryPolicy as Nt, NodeExecutionStatePublisher as O, RunnableNodeConfig as On, RunEvent as Ot, TriggerSetupContext as P, UpstreamRefPlaceholder as Pn, CredentialAuthDefinition as Pt, WebhookSpec as Q, Lifecycle as Qn, BinaryAttachment as Qt, WebhookRegistrar as R, WorkflowId as Rn, CredentialHealth as Rt, NodeActivationScheduler as S, ParentExecutionRef as Sn, RunStateResetRequest as St, NodeExecutionContext as T, RunDataSnapshot as Tn, RunStopCondition as Tt, WorkflowRunnerResolver as U, triggerNodeSetupStateType as Un, CredentialRequirement as Ut, WorkflowRegistry as V, runnableNodeOutputType as Vn, CredentialMaterialSourceKind as Vt, WorkflowRunnerService as W, ExponentialRetryPolicySpec as Wn, CredentialSessionService as Wt, WebhookInvocationMatch as X, Disposable as Xn, OAuth2ProviderFromPublicConfig as Xt, WebhookControlSignal as Y, DependencyContainer as Yn, CredentialUnboundError as Yt, WebhookRegistration as Z, InjectionToken as Zn, ActivationIdFactory as Zt, NodeActivationContinuation as _, NodeOutputs as _n, RunEventPublisherDeps as _t, BinaryStorageReadResult as a, Items as an, injectable as ar, NodeInputsByPort as at, NodeActivationRequest as b, OutputPortKey as bn, RunQueueEntry as bt, BinaryStorageWriteResult as c, JsonPrimitive as cn, predicateAwareClassFactory as cr, PersistedMutableRunState as ct, ExecutableTriggerNode as d, NodeActivationId as dn, PersistedWorkflowSnapshot as dt, Edge as en, TypeToken as er, CurrentStateExecutionRequest as et, ExecutionBinaryService as f, NodeConfigBase as fn, PersistedWorkflowSnapshotNode as ft, Node as g, NodeOffloadPolicy as gn, RunCurrentState as gt, MultiInputNode as h, NodeKind as hn, RunCompletionNotifier as ht, BinaryStorage as i, ItemBinary as in, injectAll as ir, NodeExecutionStatus as it, TestableTriggerNode as j, TriggerNodeConfig as jn, ExpRetryPolicy as jt, NodeResolver as k, RunnableNodeInputJson as kn, RunEventBus as kt, EngineDeps as l, JsonValue as ln, registry as lr, PersistedRunControlState as lt, ExecutionContextFactory as m, NodeId as mn, PinnedNodeOutputsByPort as mt, BinaryAttachmentCreateRequest as n, InputPortKey as nn, delay as nr, NodeExecutionError as nt, BinaryStorageStatResult as o, JsonArray as on, instanceCachingFactory as or, PendingNodeExecution as ot, ExecutionContext as p, NodeDefinition as pn, PersistedWorkflowTokenRegistryLike as pt, HttpMethod as q, RetryPolicySpec as qn, CredentialTypeId as qt, BinaryBody as r, Item as rn, inject as rr, NodeExecutionSnapshot as rt, BinaryStorageWriteRequest as s, JsonObject as sn, instancePerContainerCachingFactory as sr, PersistedMutableNodeState as st, RunFinishedAtFactory as t, ExecutionMode as tn, container as tr, ExecutionFrontierPlan as tt, EngineHost as u, MutableRunData as un, singleton as ur, PersistedRunState as ut, NodeActivationObserver as v, NodeRef as vn, RunExecutionOptions as vt, NodeBinaryAttachmentService as w, RunDataFactory as wn, RunStatus as wt, NodeActivationRequestBase as x, PairedItemRef as xn, RunResult as xt, NodeActivationReceipt as y, NodeSchedulerDecision as yn, RunListingStore as yt, WorkflowCatalog as z, branchRef as zn, CredentialHealthStatus as zt };
920
- //# sourceMappingURL=index-AZ72Ej-K.d.ts.map