@codemation/core 0.4.0 → 0.6.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.
- package/CHANGELOG.md +41 -0
- package/dist/{EngineRuntimeRegistration.types-DU6MsjU9.d.ts → EngineRuntimeRegistration.types-Dm129RJ6.d.ts} +2 -2
- package/dist/{EngineWorkflowRunnerService-BBkL4VQF.d.cts → EngineWorkflowRunnerService-Bf88QtwB.d.cts} +2 -2
- package/dist/{InMemoryRunDataFactory-CsYEMJK2.d.cts → InMemoryRunDataFactory-Dyl4p2s8.d.cts} +12 -3
- package/dist/{RunIntentService-BvlTpmEb.d.cts → RunIntentService-B1Y3v1H6.d.cts} +33 -10
- package/dist/{RunIntentService-zbTchO9T.d.ts → RunIntentService-BDiodxhf.d.ts} +33 -10
- package/dist/bootstrap/index.cjs +2 -2
- package/dist/bootstrap/index.d.cts +5 -5
- package/dist/bootstrap/index.d.ts +3 -3
- package/dist/bootstrap/index.js +2 -2
- package/dist/{bootstrap-DHH2uo-W.cjs → bootstrap-DVL2ue5v.cjs} +4 -3
- package/dist/bootstrap-DVL2ue5v.cjs.map +1 -0
- package/dist/{bootstrap-DbUlOl11.js → bootstrap-DdeiJ8cd.js} +4 -3
- package/dist/bootstrap-DdeiJ8cd.js.map +1 -0
- package/dist/{index-CUt13qs1.d.ts → index-C2af8ssM.d.ts} +85 -7
- package/dist/index.cjs +79 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +74 -5
- package/dist/index.d.ts +3 -3
- package/dist/index.js +75 -2
- package/dist/index.js.map +1 -1
- package/dist/{runtime-BdH94eBR.js → runtime-7Xh9z3dw.js} +36 -34
- package/dist/runtime-7Xh9z3dw.js.map +1 -0
- package/dist/{runtime-feFn8OmG.cjs → runtime-DVBwxFvX.cjs} +41 -33
- package/dist/runtime-DVBwxFvX.cjs.map +1 -0
- package/dist/testing.cjs +2 -2
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.cts +2 -2
- package/dist/testing.d.ts +2 -2
- package/dist/testing.js +2 -2
- package/dist/testing.js.map +1 -1
- package/package.json +1 -1
- package/src/ai/AiHost.ts +20 -0
- package/src/ai/CallableToolConfig.ts +84 -0
- package/src/ai/CallableToolFactory.ts +13 -0
- package/src/ai/CallableToolKindToken.ts +5 -0
- package/src/authoring/callableTool.types.ts +12 -0
- package/src/authoring/defineNode.types.ts +3 -0
- package/src/authoring/index.ts +1 -0
- package/src/bootstrap/runtime/EngineRuntimeRegistrar.ts +9 -1
- package/src/contracts/credentialTypes.ts +29 -0
- package/src/contracts/runtimeTypes.ts +4 -2
- package/src/contracts/workflowTypes.ts +0 -7
- package/src/execution/NodeExecutor.ts +7 -25
- package/src/execution/NodeExecutorFactory.ts +7 -2
- package/src/execution/NodeOutputNormalizer.ts +22 -23
- package/src/execution/RunnableOutputBehaviorResolver.ts +23 -0
- package/src/execution/index.ts +1 -0
- package/src/index.ts +1 -0
- package/src/testing/SwitchHarnessNode.ts +0 -1
- package/dist/bootstrap-DHH2uo-W.cjs.map +0 -1
- package/dist/bootstrap-DbUlOl11.js.map +0 -1
- package/dist/runtime-BdH94eBR.js.map +0 -1
- package/dist/runtime-feFn8OmG.cjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,46 @@
|
|
|
1
1
|
# @codemation/core
|
|
2
2
|
|
|
3
|
+
## 0.6.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#71](https://github.com/MadeRelevant/codemation/pull/71) [`3044e73`](https://github.com/MadeRelevant/codemation/commit/3044e73fd3cfb33f8e2cbc579c10baf97ed94658) Thanks [@cblokland90](https://github.com/cblokland90)! - Add inline callable agent tools to the workflow DSL.
|
|
8
|
+
|
|
9
|
+
This introduces `callableTool(...)` as a workflow-friendly helper for app-local agent tools, keeps
|
|
10
|
+
`CallableToolFactory.callableTool(...)` as a compatible factory entry point, teaches `AIAgentNode`
|
|
11
|
+
to execute callable tools with the same tracing and validation model as other tool kinds, and
|
|
12
|
+
updates docs, skills, and the test-dev sample to show the new path.
|
|
13
|
+
|
|
14
|
+
- [#73](https://github.com/MadeRelevant/codemation/pull/73) [`418434a`](https://github.com/MadeRelevant/codemation/commit/418434a6a2ad88a6254a94cb70e6f14b886df348) Thanks [@cblokland90](https://github.com/cblokland90)! - Improve credential UX and add extensible advanced field presentation.
|
|
15
|
+
- Run automatic credential health tests after create/save (including OAuth) and keep the dialog open when the test fails; auto-bind newly created credentials to empty workflow slots; auto-bind when picking an existing credential from the workflow slot dropdown while the slot is unbound.
|
|
16
|
+
- Add `CredentialFieldSchema.visibility` (`default` | `advanced`) and optional `CredentialTypeDefinition.advancedSection` (advanced fields always render in a collapsible block; section labels default when omitted). Next host uses stable test ids and fixes collapsible chevron styling.
|
|
17
|
+
- Credential dialog: title uses the credential type name (e.g. **Add …** / type display name on edit); hide the redundant type dropdown in edit mode.
|
|
18
|
+
- Gmail OAuth: group Client ID with Client secret, move scope preset and custom scopes under an **OAuth scopes** advanced section (collapsed by default).
|
|
19
|
+
- Documentation: `packages/core/docs/credential-ui-fields.md`, AGENTS.md, and credential development skill reference.
|
|
20
|
+
|
|
21
|
+
- [#76](https://github.com/MadeRelevant/codemation/pull/76) [`3774fd8`](https://github.com/MadeRelevant/codemation/commit/3774fd80bc357c7eb39957f6963c692f322c38eb) Thanks [@cblokland90](https://github.com/cblokland90)! - Preserve binaries for runnable node outputs and make workflow authoring APIs accept explicit output behavior options.
|
|
22
|
+
|
|
23
|
+
This adds `keepBinaries` support across runnable execution paths, updates `MapData` and related workflow authoring helpers to use an options object for node ids and output behavior, and refreshes tests and docs around the new contract.
|
|
24
|
+
|
|
25
|
+
- [#75](https://github.com/MadeRelevant/codemation/pull/75) [`00bc135`](https://github.com/MadeRelevant/codemation/commit/00bc1351e2dd6222d5101dbff3602a76ead33ce1) Thanks [@cblokland90](https://github.com/cblokland90)! - Add structured-output schemas to AI agents and choose the safer OpenAI response mode per model snapshot.
|
|
26
|
+
|
|
27
|
+
This exposes `outputSchema` on agent configs, teaches `AIAgentNode` to validate and repair structured outputs, and
|
|
28
|
+
avoids opting older OpenAI snapshots into `json_schema` when only function calling is safe.
|
|
29
|
+
|
|
30
|
+
## Unreleased
|
|
31
|
+
|
|
32
|
+
### Minor Changes
|
|
33
|
+
|
|
34
|
+
- Add **`callableTool(...)`** (exported from authoring; same behavior as **`CallableToolFactory.callableTool(...)`**), **`CallableToolConfig`**, and **`CallableToolKindToken`** for inline Zod-typed agent tools (optional **`credentialRequirements`**, structural **`toolKind: "callable"`** for snapshots). Same runtime contract as other agent tools; no implicit merge of workflow **`item.json`** into tool input.
|
|
35
|
+
|
|
36
|
+
## 0.5.0
|
|
37
|
+
|
|
38
|
+
### Minor Changes
|
|
39
|
+
|
|
40
|
+
- [#60](https://github.com/MadeRelevant/codemation/pull/60) [`056c045`](https://github.com/MadeRelevant/codemation/commit/056c045d7813e7e6b749f0dc03bb43855ff7f58c) Thanks [@cblokland90](https://github.com/cblokland90)! - Harden the Gmail plugin so it imports reliably from the package root, returns an authenticated official Gmail session, and supports trigger/read/send/reply/label workflows with one OAuth credential.
|
|
41
|
+
|
|
42
|
+
Add framework support for OAuth scope presets and custom per-credential scope replacement, and update the plugin starter/docs so future plugins scaffold the same publishable root-entrypoint conventions.
|
|
43
|
+
|
|
3
44
|
## 0.4.0
|
|
4
45
|
|
|
5
46
|
### Minor Changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Mi as DependencyContainer, Zi as EngineExecutionLimitsPolicyConfig, ir as TriggerRuntimeDiagnostics, xr as WebhookTriggerRoutingDiagnostics, yr as WebhookTriggerMatcher } from "./RunIntentService-BDiodxhf.js";
|
|
2
2
|
|
|
3
3
|
//#region src/bootstrap/runtime/EngineRuntimeRegistration.types.d.ts
|
|
4
4
|
|
|
@@ -39,4 +39,4 @@ interface EngineRuntimeRegistrationOptions {
|
|
|
39
39
|
}
|
|
40
40
|
//#endregion
|
|
41
41
|
export { TriggerRuntimeDiagnosticsProvider as n, WebhookTriggerMatcherProvider as r, EngineRuntimeRegistrationOptions as t };
|
|
42
|
-
//# sourceMappingURL=EngineRuntimeRegistration.types-
|
|
42
|
+
//# sourceMappingURL=EngineRuntimeRegistration.types-Dm129RJ6.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $t as TriggerRuntimeDiagnostics, Dr as DependencyContainer, E as NodeId, Fn as PersistedWorkflowSnapshot, Gn as RunResult, In as PersistedWorkflowSnapshotNode, J as WorkflowDefinition, Kr as EngineExecutionLimitsPolicyConfig, Ln as PersistedWorkflowTokenRegistryLike, P as ParentExecutionRef, an as WorkflowRepository, b as NodeConfigBase, et as WorkflowId, f as Items, gn as WebhookTriggerRoutingDiagnostics, mn as WebhookTriggerMatcher, r as Engine } from "./RunIntentService-B1Y3v1H6.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/workflowSnapshots/WorkflowSnapshotCodec.d.ts
|
|
4
4
|
declare class WorkflowSnapshotCodec {
|
|
@@ -70,4 +70,4 @@ declare class EngineWorkflowRunnerService {
|
|
|
70
70
|
}
|
|
71
71
|
//#endregion
|
|
72
72
|
export { WorkflowSnapshotCodec as a, WebhookTriggerMatcherProvider as i, EngineRuntimeRegistrationOptions as n, TriggerRuntimeDiagnosticsProvider as r, EngineWorkflowRunnerService as t };
|
|
73
|
-
//# sourceMappingURL=EngineWorkflowRunnerService-
|
|
73
|
+
//# sourceMappingURL=EngineWorkflowRunnerService-Bf88QtwB.d.cts.map
|
package/dist/{InMemoryRunDataFactory-CsYEMJK2.d.cts → InMemoryRunDataFactory-Dyl4p2s8.d.cts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Ct as BinaryStorageWriteResult, Dt as ExecutionBinaryService, E as NodeId, L as RunDataFactory, Ot as ExecutionContext, P as ParentExecutionRef, R as RunDataSnapshot, Rt as NodeBinaryAttachmentService, Ut as NodeExecutionStatePublisher, V as RunnableNodeConfig, a as BinaryAttachment, bt as BinaryStorageReadResult, et as WorkflowId, gt as RetryPolicySpec, k as NodeOutputs, kt as ExecutionContextFactory, u as Item, v as MutableRunData, vr as CredentialSessionService, vt as BinaryBody, xt as BinaryStorageStatResult, y as NodeActivationId, yt as BinaryStorage, z as RunId, zt as NodeExecutionContext } from "./RunIntentService-B1Y3v1H6.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/execution/CredentialResolverFactory.d.ts
|
|
4
4
|
declare class CredentialResolverFactory {
|
|
@@ -55,6 +55,15 @@ declare class ItemValueResolver {
|
|
|
55
55
|
resolveConfigForItem<TConfig extends RunnableNodeConfig<any, any>>(ctx: NodeExecutionContext<TConfig>, item: Item, itemIndex: number, items: ReadonlyArray<Item>): Promise<NodeExecutionContext<TConfig>>;
|
|
56
56
|
}
|
|
57
57
|
//#endregion
|
|
58
|
+
//#region src/execution/RunnableOutputBehaviorResolver.d.ts
|
|
59
|
+
type RunnableOutputBehavior = Readonly<{
|
|
60
|
+
keepBinaries: boolean;
|
|
61
|
+
}>;
|
|
62
|
+
declare class RunnableOutputBehaviorResolver {
|
|
63
|
+
resolve(config: RunnableNodeConfig): RunnableOutputBehavior;
|
|
64
|
+
private isKeepBinariesEnabled;
|
|
65
|
+
}
|
|
66
|
+
//#endregion
|
|
58
67
|
//#region src/binaries/UnavailableBinaryStorage.d.ts
|
|
59
68
|
declare class UnavailableBinaryStorage implements BinaryStorage {
|
|
60
69
|
readonly driverName = "unavailable";
|
|
@@ -98,5 +107,5 @@ declare class InMemoryRunDataFactory implements RunDataFactory {
|
|
|
98
107
|
create(initial?: Record<NodeId, NodeOutputs>): MutableRunData;
|
|
99
108
|
}
|
|
100
109
|
//#endregion
|
|
101
|
-
export {
|
|
102
|
-
//# sourceMappingURL=InMemoryRunDataFactory-
|
|
110
|
+
export { RunnableOutputBehavior as a, InProcessRetryRunner as c, AsyncSleeper as d, CredentialResolverFactory as f, UnavailableBinaryStorage as i, DefaultExecutionContextFactory as l, InMemoryBinaryStorage as n, RunnableOutputBehaviorResolver as o, DefaultExecutionBinaryService as r, ItemValueResolver as s, InMemoryRunDataFactory as t, DefaultAsyncSleeper as u };
|
|
111
|
+
//# sourceMappingURL=InMemoryRunDataFactory-Dyl4p2s8.d.cts.map
|
|
@@ -115,6 +115,12 @@ type CredentialFieldSchema = Readonly<{
|
|
|
115
115
|
type: "string" | "password" | "textarea" | "json" | "boolean";
|
|
116
116
|
required?: true;
|
|
117
117
|
order?: number;
|
|
118
|
+
/**
|
|
119
|
+
* Where this field appears in the credential dialog. Use `"advanced"` for optional or
|
|
120
|
+
* power-user fields; they render inside a collapsible section (see `CredentialTypeDefinition.advancedSection`).
|
|
121
|
+
* Defaults to `"default"` when omitted.
|
|
122
|
+
*/
|
|
123
|
+
visibility?: "default" | "advanced";
|
|
118
124
|
placeholder?: string;
|
|
119
125
|
helpText?: string;
|
|
120
126
|
/** When set, host resolves this field from process.env at runtime; env wins over stored values. */
|
|
@@ -157,26 +163,47 @@ type OAuth2ProviderFromPublicConfig = Readonly<{
|
|
|
157
163
|
tokenUrlFieldKey: string;
|
|
158
164
|
userInfoUrlFieldKey?: string;
|
|
159
165
|
}>;
|
|
166
|
+
type CredentialOAuth2ScopesFromPublicConfig = Readonly<{
|
|
167
|
+
presetFieldKey: string;
|
|
168
|
+
presetScopes: Readonly<Record<string, ReadonlyArray<string>>>;
|
|
169
|
+
customPresetKey?: string;
|
|
170
|
+
customScopesFieldKey?: string;
|
|
171
|
+
}>;
|
|
160
172
|
type CredentialOAuth2AuthDefinition = Readonly<{
|
|
161
173
|
kind: "oauth2";
|
|
162
174
|
providerId: string;
|
|
163
175
|
scopes: ReadonlyArray<string>;
|
|
176
|
+
scopesFromPublicConfig?: CredentialOAuth2ScopesFromPublicConfig;
|
|
164
177
|
clientIdFieldKey?: string;
|
|
165
178
|
clientSecretFieldKey?: string;
|
|
166
179
|
} | {
|
|
167
180
|
kind: "oauth2";
|
|
168
181
|
providerFromPublicConfig: OAuth2ProviderFromPublicConfig;
|
|
169
182
|
scopes: ReadonlyArray<string>;
|
|
183
|
+
scopesFromPublicConfig?: CredentialOAuth2ScopesFromPublicConfig;
|
|
170
184
|
clientIdFieldKey?: string;
|
|
171
185
|
clientSecretFieldKey?: string;
|
|
172
186
|
}>;
|
|
173
187
|
type CredentialAuthDefinition = CredentialOAuth2AuthDefinition;
|
|
188
|
+
type CredentialAdvancedSectionPresentation = Readonly<{
|
|
189
|
+
/** Collapsible section title (default: "Advanced"). */
|
|
190
|
+
title?: string;
|
|
191
|
+
/** Optional short helper text shown inside the section (above the fields). */
|
|
192
|
+
description?: string;
|
|
193
|
+
/** When true, the advanced section starts expanded. Default: false (collapsed). */
|
|
194
|
+
defaultOpen?: boolean;
|
|
195
|
+
}>;
|
|
174
196
|
type CredentialTypeDefinition = Readonly<{
|
|
175
197
|
typeId: CredentialTypeId;
|
|
176
198
|
displayName: string;
|
|
177
199
|
description?: string;
|
|
178
200
|
publicFields?: ReadonlyArray<CredentialFieldSchema>;
|
|
179
201
|
secretFields?: ReadonlyArray<CredentialFieldSchema>;
|
|
202
|
+
/**
|
|
203
|
+
* Optional labels for the collapsible block that contains every field with `visibility: "advanced"`.
|
|
204
|
+
* If omitted, the UI still shows that block with defaults (title "Advanced", collapsed).
|
|
205
|
+
*/
|
|
206
|
+
advancedSection?: CredentialAdvancedSectionPresentation;
|
|
180
207
|
supportedSourceKinds?: ReadonlyArray<CredentialMaterialSourceKind>;
|
|
181
208
|
auth?: CredentialAuthDefinition;
|
|
182
209
|
}>;
|
|
@@ -766,8 +793,10 @@ interface EngineHost {
|
|
|
766
793
|
workflows?: WorkflowRunnerService;
|
|
767
794
|
}
|
|
768
795
|
/**
|
|
769
|
-
* Per-item runnable node: return JSON, an array to fan-out on `main`, or {@link emitPorts}
|
|
770
|
-
* Engine applies `inputSchema.parse(item.json)` and passes the result as `args.input`
|
|
796
|
+
* Per-item runnable node: return JSON, an array to fan-out on `main`, an explicit `Item`, or {@link emitPorts}
|
|
797
|
+
* for multi-port emission. Engine applies `inputSchema.parse(item.json)` and passes the result as `args.input`
|
|
798
|
+
* (wire `item.json` is unchanged). Transform helpers may opt into binary preservation, while routers and
|
|
799
|
+
* pass-through nodes should return explicit items when they need to preserve full item state.
|
|
771
800
|
*/
|
|
772
801
|
interface RunnableNodeExecuteArgs<TConfig extends RunnableNodeConfig<any, any> = RunnableNodeConfig<any, any>, TInputJson$1 = unknown> {
|
|
773
802
|
readonly input: TInputJson$1;
|
|
@@ -1052,7 +1081,6 @@ interface NodeConfigBase {
|
|
|
1052
1081
|
declare const runnableNodeInputType: unique symbol;
|
|
1053
1082
|
declare const runnableNodeOutputType: unique symbol;
|
|
1054
1083
|
declare const triggerNodeOutputType: unique symbol;
|
|
1055
|
-
type LineageCarryPolicy = "emitOnly" | "carryThrough";
|
|
1056
1084
|
/**
|
|
1057
1085
|
* Runnable node: **`TInputJson`** is what **`inputSchema`** validates on **`item.json`** (the wire payload).
|
|
1058
1086
|
* **`TOutputJson`** is emitted `item.json` on outputs.
|
|
@@ -1066,11 +1094,6 @@ interface RunnableNodeConfig<TInputJson$1 = unknown, TOutputJson$1 = unknown> ex
|
|
|
1066
1094
|
* Resolution order: node instance `inputSchema`, then config `inputSchema`, then `z.unknown()`.
|
|
1067
1095
|
*/
|
|
1068
1096
|
readonly inputSchema?: ZodType<TInputJson$1>;
|
|
1069
|
-
/**
|
|
1070
|
-
* Overrides default lineage propagation for `execute` outputs (binary/meta/paired).
|
|
1071
|
-
* Routers with multiple {@link RunnableNode#outputPorts} default to **`carryThrough`**; others default to **`emitOnly`**.
|
|
1072
|
-
*/
|
|
1073
|
-
readonly lineageCarry?: LineageCarryPolicy;
|
|
1074
1097
|
/**
|
|
1075
1098
|
* When an activation receives **zero** input items, the engine normally runs `execute` zero times.
|
|
1076
1099
|
* Set to **`runOnce`** to run `execute` once with an empty `items` batch (and a synthetic wire item for schema parsing).
|
|
@@ -1431,5 +1454,5 @@ declare class RunIntentService {
|
|
|
1431
1454
|
private createWebhookExecutionOptions;
|
|
1432
1455
|
}
|
|
1433
1456
|
//#endregion
|
|
1434
|
-
export {
|
|
1435
|
-
//# sourceMappingURL=RunIntentService-
|
|
1457
|
+
export { WorkflowGraphFactory as $, WorkflowExecutionRepository as $n, TriggerRuntimeDiagnostics as $t, NodeRef as A, PersistedMutableNodeState as An, Lifecycle as Ar, ItemNode as At, RunIdFactory as B, RunCurrentState as Bn, predicateAwareClassFactory as Br, NodeExecutionRequest as Bt, NodeErrorHandler as C, EngineRunCounters as Cn, CredentialTypeRegistry as Cr, BinaryStorageWriteResult as Ct, NodeKind as D, NodeExecutionStatus as Dn, DependencyContainer$1 as Dr, ExecutionBinaryService as Dt, NodeId as E, NodeExecutionSnapshot as En, Container as Er, ExecutableTriggerNode as Et, PersistedRunPolicySnapshot as F, PersistedWorkflowSnapshot as Fn, inject as Fr, NodeActivationRequest as Ft, TriggerNodeOutputJson as G, RunResult as Gn, EngineExecutionLimitsPolicy as Gr, NodeResolver as Gt, RunnableNodeInputJson as H, RunExecutionOptions as Hn, singleton as Hr, NodeExecutionScheduler as Ht, PersistedTokenId as I, PersistedWorkflowSnapshotNode as In, injectAll as Ir, NodeActivationRequestBase as It, WorkflowDefinition as J, RunStopCondition as Jn, RunEventBus as Jr, RunnableNode as Jt, TriggerNodeSetupState as K, RunStateResetRequest as Kn, EngineExecutionLimitsPolicyConfig as Kr, PersistedTriggerSetupState as Kt, RunDataFactory as L, PersistedWorkflowTokenRegistryLike as Ln, injectable as Lr, NodeActivationScheduler as Lt, OutputPortKey as M, PersistedRunControlState as Mn, TypeToken as Mr, MultiInputNode as Mt, PairedItemRef as N, PersistedRunSchedulingState as Nn, container as Nr, NodeActivationContinuation as Nt, NodeOffloadPolicy as O, NodeInputsByPort as On, Disposable as Or, ExecutionContext as Ot, ParentExecutionRef as P, PersistedRunState as Pn, delay as Pr, NodeActivationReceipt as Pt, WorkflowGraph as Q, WorkflowExecutionPruneRepository as Qn, TriggerNode as Qt, RunDataSnapshot as R, PinnedNodeOutputsByPort as Rn, instanceCachingFactory as Rr, NodeBinaryAttachmentService as Rt, NodeDefinition as S, CurrentStateExecutionRequest as Sn, CredentialTypeId as Sr, BinaryStorageWriteRequest as St, NodeErrorHandlerSpec as T, NodeExecutionError as Tn, OAuth2ProviderFromPublicConfig as Tr, EngineHost as Tt, RunnableNodeOutputJson as U, RunPruneCandidate as Un, CoreTokens as Ur, NodeExecutionStatePublisher as Ut, RunnableNodeConfig as V, RunEventPublisherDeps as Vn, registry as Vr, NodeExecutionRequestHandler as Vt, TriggerNodeConfig as W, RunQueueEntry as Wn, ENGINE_EXECUTION_LIMITS_DEFAULTS as Wr, NodeExecutor as Wt, WorkflowErrorHandler as X, WebhookRunResult as Xn, TestableTriggerNode as Xt, WorkflowErrorContext as Y, RunSummary as Yn, RunEventSubscription as Yr, RunnableNodeExecuteArgs as Yt, WorkflowErrorHandlerSpec as Z, WorkflowExecutionListingRepository as Zn, TriggerCleanupHandle as Zt, JsonValue as _, AllWorkflowsActiveWorkflowActivationPolicy as _n, CredentialSessionFactoryArgs as _r, BinaryAttachmentCreateRequest as _t, BinaryAttachment as a, WorkflowRepository as an, CredentialFieldSchema as ar, WorkflowStoragePolicyMode as at, NodeConfigBase as b, ConnectionInvocationId as bn, CredentialType as br, BinaryStorageReadResult as bt, ExecutionMode as c, WorkflowSnapshotFactory as cn, CredentialHealthTester as cr, branchRef as ct, ItemBinary as d, TriggerInstanceId as dn, CredentialJsonRecord as dr, triggerNodeOutputType as dt, TriggerSetupContext as en, AnyCredentialType as er, WorkflowId as et, Items as f, WebhookControlSignal as fn, CredentialMaterialSourceKind as fr, triggerNodeSetupStateType as ft, JsonPrimitive as g, WebhookTriggerRoutingDiagnostics as gn, CredentialSessionFactory as gr, RetryPolicySpec as gt, JsonObject as h, WebhookTriggerResolution as hn, CredentialRequirement as hr, NoneRetryPolicySpec as ht, ActivationIdFactory as i, WorkflowNodeInstanceFactory as in, CredentialBindingKey as ir, WorkflowStoragePolicyDecisionArgs as it, NodeSchedulerDecision as j, PersistedMutableRunState as jn, RegistrationOptions as jr, LiveWorkflowRepository as jt, NodeOutputs as k, PendingNodeExecution as kn, InjectionToken$1 as kr, ExecutionContextFactory as kt, InputPortKey as l, WorkflowSnapshotResolver as ln, CredentialInstanceId as lr, runnableNodeInputType as lt, JsonNonArray as m, WebhookTriggerMatcher as mn, CredentialOAuth2ScopesFromPublicConfig as mr, FixedRetryPolicySpec as mt, InMemoryLiveWorkflowRepository as n, TriggerSetupStateRepository as nn, CredentialAuthDefinition as nr, WorkflowPolicyRuntimeDefaults as nt, BinaryPreviewKind as o, WorkflowRunnerResolver as on, CredentialHealth as or, WorkflowStoragePolicyResolver as ot, JsonArray as p, WebhookInvocationMatch as pn, CredentialOAuth2AuthDefinition as pr, ExponentialRetryPolicySpec as pt, UpstreamRefPlaceholder as q, RunStatus as qn, RunEvent as qr, PreparedNodeActivationDispatch as qt, Engine as r, TriggerTestItemsContext as rn, CredentialBinding as rr, WorkflowPrunePolicySpec as rt, Edge as s, WorkflowRunnerService as sn, CredentialHealthStatus as sr, WorkflowStoragePolicySpec as st, RunIntentService as t, TriggerSetupStateFor as tn, CredentialAdvancedSectionPresentation as tr, WorkflowNodeConnection as tt, Item as u, HttpMethod as un, CredentialInstanceRecord as ur, runnableNodeOutputType as ut, MutableRunData as v, WorkflowActivationPolicy as vn, CredentialSessionService as vr, BinaryBody as vt, NodeErrorHandlerArgs as w, ExecutionFrontierPlan as wn, CredentialUnboundError as wr, EngineDeps as wt, NodeConnectionName as x, ConnectionInvocationRecord as xn, CredentialTypeDefinition as xr, BinaryStorageStatResult as xt, NodeActivationId as y, ConnectionInvocationAppendArgs as yn, CredentialSetupStatus as yr, BinaryStorage as yt, RunId as z, RunCompletionNotifier as zn, instancePerContainerCachingFactory as zr, NodeExecutionContext as zt };
|
|
1458
|
+
//# sourceMappingURL=RunIntentService-B1Y3v1H6.d.cts.map
|
|
@@ -116,6 +116,12 @@ type CredentialFieldSchema = Readonly<{
|
|
|
116
116
|
type: "string" | "password" | "textarea" | "json" | "boolean";
|
|
117
117
|
required?: true;
|
|
118
118
|
order?: number;
|
|
119
|
+
/**
|
|
120
|
+
* Where this field appears in the credential dialog. Use `"advanced"` for optional or
|
|
121
|
+
* power-user fields; they render inside a collapsible section (see `CredentialTypeDefinition.advancedSection`).
|
|
122
|
+
* Defaults to `"default"` when omitted.
|
|
123
|
+
*/
|
|
124
|
+
visibility?: "default" | "advanced";
|
|
119
125
|
placeholder?: string;
|
|
120
126
|
helpText?: string;
|
|
121
127
|
/** When set, host resolves this field from process.env at runtime; env wins over stored values. */
|
|
@@ -158,26 +164,47 @@ type OAuth2ProviderFromPublicConfig = Readonly<{
|
|
|
158
164
|
tokenUrlFieldKey: string;
|
|
159
165
|
userInfoUrlFieldKey?: string;
|
|
160
166
|
}>;
|
|
167
|
+
type CredentialOAuth2ScopesFromPublicConfig = Readonly<{
|
|
168
|
+
presetFieldKey: string;
|
|
169
|
+
presetScopes: Readonly<Record<string, ReadonlyArray<string>>>;
|
|
170
|
+
customPresetKey?: string;
|
|
171
|
+
customScopesFieldKey?: string;
|
|
172
|
+
}>;
|
|
161
173
|
type CredentialOAuth2AuthDefinition = Readonly<{
|
|
162
174
|
kind: "oauth2";
|
|
163
175
|
providerId: string;
|
|
164
176
|
scopes: ReadonlyArray<string>;
|
|
177
|
+
scopesFromPublicConfig?: CredentialOAuth2ScopesFromPublicConfig;
|
|
165
178
|
clientIdFieldKey?: string;
|
|
166
179
|
clientSecretFieldKey?: string;
|
|
167
180
|
} | {
|
|
168
181
|
kind: "oauth2";
|
|
169
182
|
providerFromPublicConfig: OAuth2ProviderFromPublicConfig;
|
|
170
183
|
scopes: ReadonlyArray<string>;
|
|
184
|
+
scopesFromPublicConfig?: CredentialOAuth2ScopesFromPublicConfig;
|
|
171
185
|
clientIdFieldKey?: string;
|
|
172
186
|
clientSecretFieldKey?: string;
|
|
173
187
|
}>;
|
|
174
188
|
type CredentialAuthDefinition = CredentialOAuth2AuthDefinition;
|
|
189
|
+
type CredentialAdvancedSectionPresentation = Readonly<{
|
|
190
|
+
/** Collapsible section title (default: "Advanced"). */
|
|
191
|
+
title?: string;
|
|
192
|
+
/** Optional short helper text shown inside the section (above the fields). */
|
|
193
|
+
description?: string;
|
|
194
|
+
/** When true, the advanced section starts expanded. Default: false (collapsed). */
|
|
195
|
+
defaultOpen?: boolean;
|
|
196
|
+
}>;
|
|
175
197
|
type CredentialTypeDefinition = Readonly<{
|
|
176
198
|
typeId: CredentialTypeId;
|
|
177
199
|
displayName: string;
|
|
178
200
|
description?: string;
|
|
179
201
|
publicFields?: ReadonlyArray<CredentialFieldSchema>;
|
|
180
202
|
secretFields?: ReadonlyArray<CredentialFieldSchema>;
|
|
203
|
+
/**
|
|
204
|
+
* Optional labels for the collapsible block that contains every field with `visibility: "advanced"`.
|
|
205
|
+
* If omitted, the UI still shows that block with defaults (title "Advanced", collapsed).
|
|
206
|
+
*/
|
|
207
|
+
advancedSection?: CredentialAdvancedSectionPresentation;
|
|
181
208
|
supportedSourceKinds?: ReadonlyArray<CredentialMaterialSourceKind>;
|
|
182
209
|
auth?: CredentialAuthDefinition;
|
|
183
210
|
}>;
|
|
@@ -767,8 +794,10 @@ interface EngineHost {
|
|
|
767
794
|
workflows?: WorkflowRunnerService;
|
|
768
795
|
}
|
|
769
796
|
/**
|
|
770
|
-
* Per-item runnable node: return JSON, an array to fan-out on `main`, or {@link emitPorts}
|
|
771
|
-
* Engine applies `inputSchema.parse(item.json)` and passes the result as `args.input`
|
|
797
|
+
* Per-item runnable node: return JSON, an array to fan-out on `main`, an explicit `Item`, or {@link emitPorts}
|
|
798
|
+
* for multi-port emission. Engine applies `inputSchema.parse(item.json)` and passes the result as `args.input`
|
|
799
|
+
* (wire `item.json` is unchanged). Transform helpers may opt into binary preservation, while routers and
|
|
800
|
+
* pass-through nodes should return explicit items when they need to preserve full item state.
|
|
772
801
|
*/
|
|
773
802
|
interface RunnableNodeExecuteArgs<TConfig extends RunnableNodeConfig<any, any> = RunnableNodeConfig<any, any>, TInputJson$1 = unknown> {
|
|
774
803
|
readonly input: TInputJson$1;
|
|
@@ -1053,7 +1082,6 @@ interface NodeConfigBase {
|
|
|
1053
1082
|
declare const runnableNodeInputType: unique symbol;
|
|
1054
1083
|
declare const runnableNodeOutputType: unique symbol;
|
|
1055
1084
|
declare const triggerNodeOutputType: unique symbol;
|
|
1056
|
-
type LineageCarryPolicy = "emitOnly" | "carryThrough";
|
|
1057
1085
|
/**
|
|
1058
1086
|
* Runnable node: **`TInputJson`** is what **`inputSchema`** validates on **`item.json`** (the wire payload).
|
|
1059
1087
|
* **`TOutputJson`** is emitted `item.json` on outputs.
|
|
@@ -1067,11 +1095,6 @@ interface RunnableNodeConfig<TInputJson$1 = unknown, TOutputJson$1 = unknown> ex
|
|
|
1067
1095
|
* Resolution order: node instance `inputSchema`, then config `inputSchema`, then `z.unknown()`.
|
|
1068
1096
|
*/
|
|
1069
1097
|
readonly inputSchema?: ZodType<TInputJson$1>;
|
|
1070
|
-
/**
|
|
1071
|
-
* Overrides default lineage propagation for `execute` outputs (binary/meta/paired).
|
|
1072
|
-
* Routers with multiple {@link RunnableNode#outputPorts} default to **`carryThrough`**; others default to **`emitOnly`**.
|
|
1073
|
-
*/
|
|
1074
|
-
readonly lineageCarry?: LineageCarryPolicy;
|
|
1075
1098
|
/**
|
|
1076
1099
|
* When an activation receives **zero** input items, the engine normally runs `execute` zero times.
|
|
1077
1100
|
* Set to **`runOnce`** to run `execute` once with an empty `items` batch (and a synthetic wire item for schema parsing).
|
|
@@ -1883,5 +1906,5 @@ declare class RunIntentService {
|
|
|
1883
1906
|
private createWebhookExecutionOptions;
|
|
1884
1907
|
}
|
|
1885
1908
|
//#endregion
|
|
1886
|
-
export { ItemValueResolvedContext as $,
|
|
1887
|
-
//# sourceMappingURL=RunIntentService-
|
|
1909
|
+
export { ItemValueResolvedContext as $, RunEventBus as $i, RunnableNode as $n, RunStopCondition as $r, WorkflowDefinition as $t, ExecutionInstanceDto as A, OAuth2ProviderFromPublicConfig as Ai, EngineHost as An, NodeExecutionError as Ar, NodeErrorHandlerSpec as At, RunSlotProjectionState as B, inject as Bi, NodeActivationRequest as Bn, PersistedWorkflowSnapshot as Br, PersistedRunPolicySnapshot as Bt, BranchOutputGuard as C, CredentialSessionService as Ci, BinaryBody as Cn, WorkflowActivationPolicy as Cr, MutableRunData as Ct, RunFinishedAtFactory as D, CredentialTypeId as Di, BinaryStorageWriteRequest as Dn, CurrentStateExecutionRequest as Dr, NodeDefinition as Dt, ValidStepSequence as E, CredentialTypeDefinition as Ei, BinaryStorageStatResult as En, ConnectionInvocationRecord as Er, NodeConnectionName as Et, PersistedExecutionInstanceRecord as F, Lifecycle as Fi, ItemNode as Fn, PersistedMutableNodeState as Fr, NodeRef as Ft, WorkflowRunDetailDto as G, predicateAwareClassFactory as Gi, NodeExecutionRequest as Gn, RunCurrentState as Gr, RunIdFactory as Gt, WorkItemId as H, injectable as Hi, NodeActivationScheduler as Hn, PersistedWorkflowTokenRegistryLike as Hr, RunDataFactory as Ht, PersistedRunSlotProjectionRecord as I, RegistrationOptions as Ii, LiveWorkflowRepository as In, PersistedMutableRunState as Ir, NodeSchedulerDecision as It, NoRetryPolicy as J, CoreTokens as Ji, NodeExecutionStatePublisher as Jn, RunPruneCandidate as Jr, RunnableNodeOutputJson as Jt, ExpRetryPolicy as K, registry as Ki, NodeExecutionRequestHandler as Kn, RunEventPublisherDeps as Kr, RunnableNodeConfig as Kt, PersistedRunWorkItemKind as L, TypeToken as Li, MultiInputNode as Ln, PersistedRunControlState as Lr, OutputPortKey as Lt, ExecutionPayloadPolicyFields as M, DependencyContainer$1 as Mi, ExecutionBinaryService as Mn, NodeExecutionStatus as Mr, NodeKind as Mt, PayloadStorageKind as N, Disposable as Ni, ExecutionContext as Nn, NodeInputsByPort as Nr, NodeOffloadPolicy as Nt, BatchId as O, CredentialTypeRegistry as Oi, BinaryStorageWriteResult as On, EngineRunCounters as Or, NodeErrorHandler as Ot, PersistedExecutionInstanceKind as P, InjectionToken$1 as Pi, ExecutionContextFactory as Pn, PendingNodeExecution as Pr, NodeOutputs as Pt, ItemValueContext as Q, RunEvent as Qi, PreparedNodeActivationDispatch as Qn, RunStatus as Qr, UpstreamRefPlaceholder as Qt, PersistedRunWorkItemRecord as R, container$1 as Ri, NodeActivationContinuation as Rn, PersistedRunSchedulingState as Rr, PairedItemRef as Rt, BranchMoreArgs as S, CredentialSessionFactoryArgs as Si, BinaryAttachmentCreateRequest as Sn, AllWorkflowsActiveWorkflowActivationPolicy as Sr, JsonValue as St, StepSequenceOutput as T, CredentialType as Ti, BinaryStorageReadResult as Tn, ConnectionInvocationId as Tr, NodeConfigBase as Tt, WorkItemStatus as U, instanceCachingFactory as Ui, NodeBinaryAttachmentService as Un, PinnedNodeOutputsByPort as Ur, RunDataSnapshot as Ut, SlotExecutionStateDto as V, injectAll as Vi, NodeActivationRequestBase as Vn, PersistedWorkflowSnapshotNode as Vr, PersistedTokenId as Vt, WorkflowDetailSelectionState as W, instancePerContainerCachingFactory as Wi, NodeExecutionContext as Wn, RunCompletionNotifier as Wr, RunId as Wt, ItemValueArgs as X, EngineExecutionLimitsPolicy as Xi, NodeResolver as Xn, RunResult as Xr, TriggerNodeOutputJson as Xt, ItemValue as Y, ENGINE_EXECUTION_LIMITS_DEFAULTS as Yi, NodeExecutor as Yn, RunQueueEntry as Yr, TriggerNodeConfig as Yt, ItemValueCallback as Z, EngineExecutionLimitsPolicyConfig as Zi, PersistedTriggerSetupState as Zn, RunStateResetRequest as Zr, TriggerNodeSetupState as Zt, ChainCursor as _, CredentialMaterialSourceKind as _i, triggerNodeSetupStateType as _n, WebhookControlSignal as _r, Items as _t, RunTerminalPersistenceCoordinator as a, AnyCredentialType as ai, WorkflowId as an, TriggerSetupContext as ar, PortsEmission as at, AnyTriggerNodeConfig as b, CredentialRequirement as bi, NoneRetryPolicySpec as bn, WebhookTriggerResolution as br, JsonObject as bt, EngineExecutionLimitsPolicyFactory as c, CredentialBinding as ci, WorkflowPrunePolicySpec as cn, TriggerTestItemsContext as cr, isUnbrandedPortsEmissionShape as ct, DefaultWorkflowGraphFactory as d, CredentialHealth as di, WorkflowStoragePolicyResolver as dn, WorkflowRunnerResolver as dr, BinaryPreviewKind as dt, RunEventSubscription as ea, RunSummary as ei, WorkflowErrorContext as en, RunnableNodeExecuteArgs as er, isItemValue as et, WorkflowExecutableNodeClassifierFactory as f, CredentialHealthStatus as fi, WorkflowStoragePolicySpec as fn, WorkflowRunnerService as fr, Edge as ft, WorkflowBuilder as g, CredentialJsonRecord as gi, triggerNodeOutputType as gn, TriggerInstanceId as gr, ItemBinary as gt, ConnectionInvocationIdFactory as h, CredentialInstanceRecord as hi, runnableNodeOutputType as hn, HttpMethod as hr, Item as ht, WorkflowPolicyErrorServices as i, WorkflowExecutionRepository as ii, WorkflowGraphFactory as in, TriggerRuntimeDiagnostics as ir, getOriginIndexFromItem as it, ExecutionInstanceId as j, Container as ji, ExecutableTriggerNode as jn, NodeExecutionSnapshot as jr, NodeId as jt, ConnectionInvocationKind as k, CredentialUnboundError as ki, EngineDeps as kn, ExecutionFrontierPlan as kr, NodeErrorHandlerArgs as kt, WorkflowSnapshotCodec as l, CredentialBindingKey as li, WorkflowStoragePolicyDecisionArgs as ln, WorkflowNodeInstanceFactory as lr, ActivationIdFactory as lt, ConnectionNodeIdFactory as m, CredentialInstanceId as mi, runnableNodeInputType as mn, WorkflowSnapshotResolver as mr, InputPortKey as mt, InMemoryLiveWorkflowRepository as n, WorkflowExecutionListingRepository as ni, WorkflowErrorHandlerSpec as nn, TriggerCleanupHandle as nr, resolveItemValuesForExecution as nt, WorkflowStoragePolicyEvaluator as o, CredentialAdvancedSectionPresentation as oi, WorkflowNodeConnection as on, TriggerSetupStateFor as or, emitPorts as ot, WorkflowExecutableNodeClassifier as p, CredentialHealthTester as pi, branchRef as pn, WorkflowSnapshotFactory as pr, ExecutionMode as pt, RetryPolicy as q, singleton as qi, NodeExecutionScheduler as qn, RunExecutionOptions as qr, RunnableNodeInputJson as qt, EngineWorkflowRunnerService as r, WorkflowExecutionPruneRepository as ri, WorkflowGraph as rn, TriggerNode as rr, resolveItemValuesInUnknown as rt, RunPolicySnapshotFactory as s, CredentialAuthDefinition as si, WorkflowPolicyRuntimeDefaults as sn, TriggerSetupStateRepository as sr, isPortsEmission as st, RunIntentService as t, WebhookRunResult as ti, WorkflowErrorHandler as tn, TestableTriggerNode as tr, itemValue as tt, Engine as u, CredentialFieldSchema as ui, WorkflowStoragePolicyMode as un, WorkflowRepository as ur, BinaryAttachment as ut, WhenBuilder as v, CredentialOAuth2AuthDefinition as vi, ExponentialRetryPolicySpec as vn, WebhookInvocationMatch as vr, JsonArray as vt, BranchStepsArg as w, CredentialSetupStatus as wi, BinaryStorage as wn, ConnectionInvocationAppendArgs as wr, NodeActivationId as wt, BooleanWhenOverloads as x, CredentialSessionFactory as xi, RetryPolicySpec as xn, WebhookTriggerRoutingDiagnostics as xr, JsonPrimitive as xt, AnyRunnableNodeConfig as y, CredentialOAuth2ScopesFromPublicConfig as yi, FixedRetryPolicySpec as yn, WebhookTriggerMatcher as yr, JsonNonArray as yt, RunRevision as z, delay as zi, NodeActivationReceipt as zn, PersistedRunState as zr, ParentExecutionRef as zt };
|
|
1910
|
+
//# sourceMappingURL=RunIntentService-BDiodxhf.d.ts.map
|
package/dist/bootstrap/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const require_runtime = require('../runtime-
|
|
2
|
-
const require_bootstrap = require('../bootstrap-
|
|
1
|
+
const require_runtime = require('../runtime-DVBwxFvX.cjs');
|
|
2
|
+
const require_bootstrap = require('../bootstrap-DVL2ue5v.cjs');
|
|
3
3
|
|
|
4
4
|
exports.ConfigDrivenOffloadPolicy = require_runtime.ConfigDrivenOffloadPolicy;
|
|
5
5
|
exports.CredentialResolverFactory = require_runtime.CredentialResolverFactory;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { $n as
|
|
2
|
-
import { a as WorkflowSnapshotCodec, i as WebhookTriggerMatcherProvider, n as EngineRuntimeRegistrationOptions, r as TriggerRuntimeDiagnosticsProvider, t as EngineWorkflowRunnerService } from "../EngineWorkflowRunnerService-
|
|
3
|
-
import {
|
|
1
|
+
import { $n as WorkflowExecutionRepository, Bt as NodeExecutionRequest, C as NodeErrorHandler, Cn as EngineRunCounters, Dr as DependencyContainer, E as NodeId, F as PersistedRunPolicySnapshot, Ft as NodeActivationRequest, Gr as EngineExecutionLimitsPolicy, Gt as NodeResolver, Ht as NodeExecutionScheduler, I as PersistedTokenId, In as PersistedWorkflowSnapshotNode, J as WorkflowDefinition, Kr as EngineExecutionLimitsPolicyConfig, Lt as NodeActivationScheduler, Mr as TypeToken, Nn as PersistedRunSchedulingState, Nt as NodeActivationContinuation, O as NodeOffloadPolicy, P as ParentExecutionRef, Pn as PersistedRunState, Qn as WorkflowExecutionPruneRepository, S as NodeDefinition, T as NodeErrorHandlerSpec, Un as RunPruneCandidate, Wr as ENGINE_EXECUTION_LIMITS_DEFAULTS, X as WorkflowErrorHandler, Yn as RunSummary, Z as WorkflowErrorHandlerSpec, Zn as WorkflowExecutionListingRepository, an as WorkflowRepository, b as NodeConfigBase, c as ExecutionMode, et as WorkflowId, gn as WebhookTriggerRoutingDiagnostics, in as WorkflowNodeInstanceFactory, it as WorkflowStoragePolicyDecisionArgs, j as NodeSchedulerDecision, k as NodeOutputs, mn as WebhookTriggerMatcher, n as InMemoryLiveWorkflowRepository, nt as WorkflowPolicyRuntimeDefaults, pn as WebhookInvocationMatch, qt as PreparedNodeActivationDispatch, r as Engine, t as RunIntentService, un as HttpMethod, vn as WorkflowActivationPolicy, wt as EngineDeps, z as RunId } from "../RunIntentService-B1Y3v1H6.cjs";
|
|
2
|
+
import { a as WorkflowSnapshotCodec, i as WebhookTriggerMatcherProvider, n as EngineRuntimeRegistrationOptions, r as TriggerRuntimeDiagnosticsProvider, t as EngineWorkflowRunnerService } from "../EngineWorkflowRunnerService-Bf88QtwB.cjs";
|
|
3
|
+
import { c as InProcessRetryRunner, d as AsyncSleeper, f as CredentialResolverFactory, i as UnavailableBinaryStorage, l as DefaultExecutionContextFactory, n as InMemoryBinaryStorage, o as RunnableOutputBehaviorResolver, r as DefaultExecutionBinaryService, s as ItemValueResolver, t as InMemoryRunDataFactory, u as DefaultAsyncSleeper } from "../InMemoryRunDataFactory-Dyl4p2s8.cjs";
|
|
4
4
|
|
|
5
5
|
//#region src/workflowSnapshots/MissingRuntimeFallbacksFactory.d.ts
|
|
6
6
|
declare class MissingRuntimeFallbacks {
|
|
@@ -52,7 +52,8 @@ declare class NodeExecutor {
|
|
|
52
52
|
private readonly fanInMerger;
|
|
53
53
|
private readonly outputNormalizer;
|
|
54
54
|
private readonly itemValueResolver;
|
|
55
|
-
|
|
55
|
+
private readonly outputBehaviorResolver;
|
|
56
|
+
constructor(nodeInstanceFactory: WorkflowNodeInstanceFactory, retryRunner: InProcessRetryRunner, itemValueResolver?: ItemValueResolver, outputBehaviorResolver?: RunnableOutputBehaviorResolver);
|
|
56
57
|
execute(request: NodeActivationRequest): Promise<NodeOutputs>;
|
|
57
58
|
private executeMultiInputActivation;
|
|
58
59
|
private executeSingleInputNode;
|
|
@@ -66,7 +67,6 @@ declare class NodeExecutor {
|
|
|
66
67
|
private resolveInputSchema;
|
|
67
68
|
private assertItemJsonNotTopLevelArray;
|
|
68
69
|
private assertNoPortEnvelopeBypass;
|
|
69
|
-
private resolveLineageCarry;
|
|
70
70
|
}
|
|
71
71
|
//#endregion
|
|
72
72
|
//#region src/execution/NodeInstanceFactory.d.ts
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as TriggerRuntimeDiagnosticsProvider, r as WebhookTriggerMatcherProvider, t as EngineRuntimeRegistrationOptions } from "../EngineRuntimeRegistration.types-
|
|
1
|
+
import { $t as WorkflowDefinition, Li as TypeToken, Mi as DependencyContainer, Vt as PersistedTokenId, Xi as EngineExecutionLimitsPolicy, Yi as ENGINE_EXECUTION_LIMITS_DEFAULTS, Zi as EngineExecutionLimitsPolicyConfig, a as RunTerminalPersistenceCoordinator, c as EngineExecutionLimitsPolicyFactory, i as WorkflowPolicyErrorServices, n as InMemoryLiveWorkflowRepository, o as WorkflowStoragePolicyEvaluator, r as EngineWorkflowRunnerService, s as RunPolicySnapshotFactory, t as RunIntentService, u as Engine } from "../RunIntentService-BDiodxhf.js";
|
|
2
|
+
import { Gt as CredentialResolverFactory, Ht as DefaultExecutionContextFactory, It as NodeInstanceFactory, Jt as EngineFactory, Lt as NodeExecutor, Ut as DefaultAsyncSleeper, Vt as InProcessRetryRunner, Wt as AsyncSleeper, a as ConfigDrivenOffloadPolicy, c as InMemoryWorkflowExecutionRepository, d as DefaultExecutionBinaryService, f as UnavailableBinaryStorage, i as InlineDrivingScheduler, l as InMemoryRunDataFactory, n as HintOnlyOffloadPolicy, o as WorkflowRepositoryWebhookTriggerMatcher, qt as EngineCompositionDeps, r as DefaultDrivingScheduler, s as RunSummaryMapper, t as LocalOnlyScheduler, u as InMemoryBinaryStorage } from "../index-C2af8ssM.js";
|
|
3
|
+
import { n as TriggerRuntimeDiagnosticsProvider, r as WebhookTriggerMatcherProvider, t as EngineRuntimeRegistrationOptions } from "../EngineRuntimeRegistration.types-Dm129RJ6.js";
|
|
4
4
|
|
|
5
5
|
//#region src/bootstrap/runtime/EngineRuntimeRegistrar.d.ts
|
|
6
6
|
|
package/dist/bootstrap/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as NodeExecutor, B as
|
|
2
|
-
import { i as EngineExecutionLimitsPolicyFactory, n as InMemoryWorkflowExecutionRepository, r as RunSummaryMapper, t as EngineRuntimeRegistrar } from "../bootstrap-
|
|
1
|
+
import { A as NodeExecutor, B as DefaultAsyncSleeper, C as RunPolicySnapshotFactory, D as PersistedWorkflowTokenRegistry, O as MissingRuntimeTriggerToken, R as InProcessRetryRunner, S as ConfigDrivenOffloadPolicy, T as NodeInstanceFactory, U as DefaultExecutionBinaryService, V as CredentialResolverFactory, W as UnavailableBinaryStorage, _ as EngineExecutionLimitsPolicy, a as InMemoryLiveWorkflowRepository, b as HintOnlyOffloadPolicy, c as EngineFactory, d as InMemoryRunDataFactory, f as InMemoryBinaryStorage, g as ENGINE_EXECUTION_LIMITS_DEFAULTS, h as RunTerminalPersistenceCoordinator, i as RunIntentService, l as Engine, m as WorkflowPolicyErrorServices, n as WorkflowRepositoryWebhookTriggerMatcher, p as WorkflowStoragePolicyEvaluator, s as EngineWorkflowRunnerService, v as LocalOnlyScheduler, x as DefaultDrivingScheduler, y as InlineDrivingScheduler, z as DefaultExecutionContextFactory } from "../runtime-7Xh9z3dw.js";
|
|
2
|
+
import { i as EngineExecutionLimitsPolicyFactory, n as InMemoryWorkflowExecutionRepository, r as RunSummaryMapper, t as EngineRuntimeRegistrar } from "../bootstrap-DdeiJ8cd.js";
|
|
3
3
|
|
|
4
4
|
export { ConfigDrivenOffloadPolicy, CredentialResolverFactory, DefaultAsyncSleeper, DefaultDrivingScheduler, DefaultExecutionBinaryService, DefaultExecutionContextFactory, ENGINE_EXECUTION_LIMITS_DEFAULTS, Engine, EngineExecutionLimitsPolicy, EngineExecutionLimitsPolicyFactory, EngineFactory, EngineRuntimeRegistrar, EngineWorkflowRunnerService, HintOnlyOffloadPolicy, InMemoryBinaryStorage, InMemoryLiveWorkflowRepository, InMemoryRunDataFactory, InMemoryWorkflowExecutionRepository, InProcessRetryRunner, InlineDrivingScheduler, LocalOnlyScheduler, MissingRuntimeTriggerToken, NodeExecutor, NodeInstanceFactory, PersistedWorkflowTokenRegistry, RunIntentService, RunPolicySnapshotFactory, RunSummaryMapper, RunTerminalPersistenceCoordinator, UnavailableBinaryStorage, WorkflowPolicyErrorServices, WorkflowRepositoryWebhookTriggerMatcher, WorkflowStoragePolicyEvaluator };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_runtime = require('./runtime-
|
|
1
|
+
const require_runtime = require('./runtime-DVBwxFvX.cjs');
|
|
2
2
|
let tsyringe = require("tsyringe");
|
|
3
3
|
tsyringe = require_runtime.__toESM(tsyringe);
|
|
4
4
|
|
|
@@ -127,6 +127,7 @@ var EngineRuntimeRegistrar = class {
|
|
|
127
127
|
registerSupportFactories(container) {
|
|
128
128
|
if (!container.isRegistered(require_runtime.ItemValueResolver, true)) container.registerSingleton(require_runtime.ItemValueResolver, require_runtime.ItemValueResolver);
|
|
129
129
|
if (!container.isRegistered(require_runtime.NodeOutputNormalizer, true)) container.registerSingleton(require_runtime.NodeOutputNormalizer, require_runtime.NodeOutputNormalizer);
|
|
130
|
+
if (!container.isRegistered(require_runtime.RunnableOutputBehaviorResolver, true)) container.registerSingleton(require_runtime.RunnableOutputBehaviorResolver, require_runtime.RunnableOutputBehaviorResolver);
|
|
130
131
|
container.register(EngineExecutionLimitsPolicyFactory, { useClass: EngineExecutionLimitsPolicyFactory });
|
|
131
132
|
container.register(require_runtime.NodeInstanceFactoryFactory, { useClass: require_runtime.NodeInstanceFactoryFactory });
|
|
132
133
|
container.register(require_runtime.DefaultAsyncSleeper, { useClass: require_runtime.DefaultAsyncSleeper });
|
|
@@ -154,7 +155,7 @@ var EngineRuntimeRegistrar = class {
|
|
|
154
155
|
if (container.isRegistered(require_runtime.NodeExecutor, true)) return;
|
|
155
156
|
container.register(require_runtime.NodeExecutor, { useFactory: (0, tsyringe.instanceCachingFactory)((dependencyContainer) => {
|
|
156
157
|
const retryRunner = dependencyContainer.resolve(require_runtime.InProcessRetryRunnerFactory).create(dependencyContainer.resolve(require_runtime.DefaultAsyncSleeper));
|
|
157
|
-
return dependencyContainer.resolve(require_runtime.NodeExecutorFactory).create(dependencyContainer.resolve(require_runtime.CoreTokens.WorkflowNodeInstanceFactory), retryRunner);
|
|
158
|
+
return dependencyContainer.resolve(require_runtime.NodeExecutorFactory).create(dependencyContainer.resolve(require_runtime.CoreTokens.WorkflowNodeInstanceFactory), retryRunner, dependencyContainer.resolve(require_runtime.RunnableOutputBehaviorResolver));
|
|
158
159
|
}) });
|
|
159
160
|
}
|
|
160
161
|
registerDefaultActivationScheduler(container) {
|
|
@@ -239,4 +240,4 @@ Object.defineProperty(exports, 'RunSummaryMapper', {
|
|
|
239
240
|
return RunSummaryMapper;
|
|
240
241
|
}
|
|
241
242
|
});
|
|
242
|
-
//# sourceMappingURL=bootstrap-
|
|
243
|
+
//# sourceMappingURL=bootstrap-DVL2ue5v.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap-DVL2ue5v.cjs","names":["EngineExecutionLimitsPolicy","ENGINE_EXECUTION_LIMITS_DEFAULTS","RunFinishedAtFactory","out: RunPruneCandidate[]","RunFinishedAtFactory","InlineDrivingScheduler","ItemValueResolver","NodeOutputNormalizer","RunnableOutputBehaviorResolver","NodeInstanceFactoryFactory","DefaultAsyncSleeper","InProcessRetryRunnerFactory","NodeExecutorFactory","RunIntentServiceFactory","EngineWorkflowRunnerServiceFactory","WorkflowRepositoryWebhookTriggerMatcherFactory","CoreTokens","NodeExecutor","InlineDrivingScheduler","EngineFactory","Engine","RunIntentService"],"sources":["../src/policies/executionLimits/EngineExecutionLimitsPolicyFactory.ts","../src/runStorage/RunSummaryMapper.ts","../src/runStorage/InMemoryWorkflowExecutionRepository.ts","../src/scheduler/InlineDrivingSchedulerFactory.ts","../src/bootstrap/runtime/EngineRuntimeRegistrar.ts"],"sourcesContent":["import {\n EngineExecutionLimitsPolicy,\n ENGINE_EXECUTION_LIMITS_DEFAULTS,\n type EngineExecutionLimitsPolicyConfig,\n} from \"./EngineExecutionLimitsPolicy\";\n\n/**\n * Builds {@link EngineExecutionLimitsPolicy} by merging {@link ENGINE_EXECUTION_LIMITS_DEFAULTS} with optional `overrides` (e.g. host `runtime.engineExecutionLimits`).\n */\nexport class EngineExecutionLimitsPolicyFactory {\n create(overrides?: Partial<EngineExecutionLimitsPolicyConfig>): EngineExecutionLimitsPolicy {\n return new EngineExecutionLimitsPolicy({ ...ENGINE_EXECUTION_LIMITS_DEFAULTS, ...overrides });\n }\n}\n","import { RunFinishedAtFactory } from \"../contracts/runFinishedAtFactory\";\nimport type { PersistedRunState, RunSummary } from \"../types\";\n\n/** Maps persisted run state to API run summaries for listings. */\nexport class RunSummaryMapper {\n static fromPersistedState(state: PersistedRunState): RunSummary {\n return {\n runId: state.runId,\n workflowId: state.workflowId,\n startedAt: state.startedAt,\n status: state.status,\n finishedAt: RunFinishedAtFactory.resolveIso(state),\n parent: state.parent,\n executionOptions: state.executionOptions,\n };\n }\n}\n","import type {\n EngineRunCounters,\n NodeId,\n NodeOutputs,\n ParentExecutionRef,\n PersistedRunSchedulingState,\n PersistedRunState,\n RunId,\n RunSummary,\n WorkflowExecutionListingRepository,\n WorkflowExecutionPruneRepository,\n WorkflowExecutionRepository,\n RunPruneCandidate,\n WorkflowId,\n} from \"../types\";\nimport { RunFinishedAtFactory } from \"../contracts/runFinishedAtFactory\";\nimport { RunSummaryMapper } from \"./RunSummaryMapper\";\n\nexport class InMemoryWorkflowExecutionRepository\n implements WorkflowExecutionRepository, WorkflowExecutionListingRepository, WorkflowExecutionPruneRepository\n{\n private readonly runs = new Map<RunId, PersistedRunState>();\n\n async createRun(args: {\n runId: RunId;\n workflowId: WorkflowId;\n startedAt: string;\n parent?: ParentExecutionRef;\n executionOptions?: PersistedRunState[\"executionOptions\"];\n control?: PersistedRunState[\"control\"];\n workflowSnapshot?: PersistedRunState[\"workflowSnapshot\"];\n mutableState?: PersistedRunState[\"mutableState\"];\n policySnapshot?: PersistedRunState[\"policySnapshot\"];\n engineCounters?: EngineRunCounters;\n }): Promise<void> {\n this.runs.set(args.runId, {\n runId: args.runId,\n workflowId: args.workflowId,\n startedAt: args.startedAt,\n revision: 0,\n parent: args.parent,\n executionOptions: args.executionOptions,\n control: args.control,\n workflowSnapshot: args.workflowSnapshot,\n mutableState: args.mutableState,\n policySnapshot: args.policySnapshot,\n engineCounters: args.engineCounters,\n status: \"running\",\n queue: [],\n outputsByNode: {} as Record<NodeId, NodeOutputs>,\n nodeSnapshotsByNodeId: {},\n connectionInvocations: [],\n });\n }\n\n async load(runId: RunId): Promise<PersistedRunState | undefined> {\n return this.runs.get(runId);\n }\n\n async loadSchedulingState(runId: RunId): Promise<PersistedRunSchedulingState | undefined> {\n const state = this.runs.get(runId);\n if (!state) {\n return undefined;\n }\n return {\n pending: state.pending ? { ...state.pending } : undefined,\n queue: state.queue.map((entry) => ({ ...entry })),\n };\n }\n\n async save(state: PersistedRunState): Promise<void> {\n this.runs.set(state.runId, { ...state, revision: (state.revision ?? 0) + 1 });\n }\n\n async deleteRun(runId: RunId): Promise<void> {\n this.runs.delete(runId);\n }\n\n async listRuns(args?: Readonly<{ workflowId?: WorkflowId; limit?: number }>): Promise<ReadonlyArray<RunSummary>> {\n const limit = args?.limit ?? 50;\n const summaries = [...this.runs.values()]\n .filter((s) => (args?.workflowId ? s.workflowId === args.workflowId : true))\n .sort((a, b) => b.startedAt.localeCompare(a.startedAt))\n .slice(0, limit)\n .map((s) => RunSummaryMapper.fromPersistedState(s));\n return summaries;\n }\n\n async listRunsOlderThan(\n args: Readonly<{ beforeIso: string; limit?: number }>,\n ): Promise<ReadonlyArray<RunPruneCandidate>> {\n const limit = args.limit ?? 100;\n const out: RunPruneCandidate[] = [];\n for (const s of this.runs.values()) {\n if (s.status !== \"completed\" && s.status !== \"failed\") continue;\n const finishedAt = RunFinishedAtFactory.resolveIso(s);\n if (!finishedAt || finishedAt >= args.beforeIso) continue;\n out.push({\n runId: s.runId,\n workflowId: s.workflowId,\n startedAt: s.startedAt,\n finishedAt,\n });\n }\n out.sort((a, b) => a.finishedAt.localeCompare(b.finishedAt));\n return out.slice(0, limit);\n }\n}\n","import { NodeExecutor } from \"../execution/NodeExecutor\";\n\nimport { InlineDrivingScheduler } from \"./InlineDrivingScheduler\";\n\nexport class InlineDrivingSchedulerFactory {\n create(nodeExecutor: NodeExecutor): InlineDrivingScheduler {\n return new InlineDrivingScheduler(nodeExecutor);\n }\n}\n","import { instanceCachingFactory, type DependencyContainer } from \"../../di\";\nimport { CoreTokens } from \"../../di\";\nimport { EngineExecutionLimitsPolicyFactory } from \"../../policies/executionLimits/EngineExecutionLimitsPolicyFactory\";\nimport {\n DefaultAsyncSleeper,\n InProcessRetryRunnerFactory,\n ItemValueResolver,\n NodeExecutor,\n NodeExecutorFactory,\n NodeInstanceFactoryFactory,\n NodeOutputNormalizer,\n RunnableOutputBehaviorResolver,\n} from \"../../execution\";\nimport {\n EngineFactory,\n EngineWorkflowRunnerServiceFactory,\n RunIntentServiceFactory,\n RunIntentService,\n WorkflowRepositoryWebhookTriggerMatcherFactory,\n} from \"../../runtime\";\nimport { InlineDrivingScheduler } from \"../../scheduler/InlineDrivingScheduler\";\nimport { InlineDrivingSchedulerFactory } from \"../../scheduler/InlineDrivingSchedulerFactory\";\nimport { Engine } from \"../../orchestration/Engine\";\nimport type { EngineRuntimeRegistrationOptions } from \"./EngineRuntimeRegistration.types\";\nimport type { WebhookTriggerMatcherProvider } from \"./EngineRuntimeRegistration.types\";\n\n/**\n * Container-first entry: call on a host/test container **after** workflow, run, node, and credential\n * ports are registered. The registrar owns the default inline scheduler, engine binding,\n * and intent-surface wiring so hosts only override the seams they actually replace.\n */\nexport class EngineRuntimeRegistrar {\n register(container: DependencyContainer, options?: EngineRuntimeRegistrationOptions): void {\n this.registerSupportFactories(container);\n this.registerExecutionLimitsPolicy(container, options);\n this.ensureWorkflowNodeInstanceFactory(container);\n this.ensureNodeExecutor(container);\n this.registerDefaultActivationScheduler(container);\n this.registerEngine(container, options);\n this.registerIntentServices(container);\n }\n\n private registerSupportFactories(container: DependencyContainer): void {\n if (!container.isRegistered(ItemValueResolver, true)) {\n container.registerSingleton(ItemValueResolver, ItemValueResolver);\n }\n if (!container.isRegistered(NodeOutputNormalizer, true)) {\n container.registerSingleton(NodeOutputNormalizer, NodeOutputNormalizer);\n }\n if (!container.isRegistered(RunnableOutputBehaviorResolver, true)) {\n container.registerSingleton(RunnableOutputBehaviorResolver, RunnableOutputBehaviorResolver);\n }\n container.register(EngineExecutionLimitsPolicyFactory, { useClass: EngineExecutionLimitsPolicyFactory });\n container.register(NodeInstanceFactoryFactory, { useClass: NodeInstanceFactoryFactory });\n container.register(DefaultAsyncSleeper, { useClass: DefaultAsyncSleeper });\n container.register(InProcessRetryRunnerFactory, { useClass: InProcessRetryRunnerFactory });\n container.register(NodeExecutorFactory, { useClass: NodeExecutorFactory });\n container.register(InlineDrivingSchedulerFactory, { useClass: InlineDrivingSchedulerFactory });\n container.register(RunIntentServiceFactory, { useClass: RunIntentServiceFactory });\n container.register(EngineWorkflowRunnerServiceFactory, {\n useClass: EngineWorkflowRunnerServiceFactory,\n });\n container.register(WorkflowRepositoryWebhookTriggerMatcherFactory, {\n useClass: WorkflowRepositoryWebhookTriggerMatcherFactory,\n });\n }\n\n private registerExecutionLimitsPolicy(\n container: DependencyContainer,\n options: EngineRuntimeRegistrationOptions | undefined,\n ): void {\n if (container.isRegistered(CoreTokens.EngineExecutionLimitsPolicy, true)) {\n return;\n }\n container.register(CoreTokens.EngineExecutionLimitsPolicy, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n const fromResolver = options?.resolveEngineExecutionLimits?.();\n const merged = fromResolver ?? options?.engineExecutionLimits;\n return dependencyContainer.resolve(EngineExecutionLimitsPolicyFactory).create(merged);\n }),\n });\n }\n\n private ensureWorkflowNodeInstanceFactory(container: DependencyContainer): void {\n if (container.isRegistered(CoreTokens.WorkflowNodeInstanceFactory, true)) {\n return;\n }\n container.register(CoreTokens.WorkflowNodeInstanceFactory, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n return dependencyContainer\n .resolve(NodeInstanceFactoryFactory)\n .create(dependencyContainer.resolve(CoreTokens.NodeResolver));\n }),\n });\n }\n\n private ensureNodeExecutor(container: DependencyContainer): void {\n if (container.isRegistered(NodeExecutor, true)) {\n return;\n }\n container.register(NodeExecutor, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n const retryRunner = dependencyContainer\n .resolve(InProcessRetryRunnerFactory)\n .create(dependencyContainer.resolve(DefaultAsyncSleeper));\n return dependencyContainer\n .resolve(NodeExecutorFactory)\n .create(\n dependencyContainer.resolve(CoreTokens.WorkflowNodeInstanceFactory),\n retryRunner,\n dependencyContainer.resolve(RunnableOutputBehaviorResolver),\n );\n }),\n });\n }\n\n private registerDefaultActivationScheduler(container: DependencyContainer): void {\n if (container.isRegistered(CoreTokens.NodeActivationScheduler, true)) {\n return;\n }\n container.register(InlineDrivingScheduler, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n return dependencyContainer\n .resolve(InlineDrivingSchedulerFactory)\n .create(dependencyContainer.resolve(NodeExecutor));\n }),\n });\n container.register(CoreTokens.NodeActivationScheduler, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n return dependencyContainer.resolve(InlineDrivingScheduler);\n }),\n });\n }\n\n private registerEngine(container: DependencyContainer, options: EngineRuntimeRegistrationOptions | undefined): void {\n container.register(EngineFactory, { useClass: EngineFactory });\n const matcherProvider = this.resolveMatcherProvider(options);\n container.register(Engine, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n const liveWorkflowRepository = dependencyContainer.resolve(CoreTokens.LiveWorkflowRepository);\n const nodeResolver = dependencyContainer.resolve(CoreTokens.NodeResolver);\n const tokenRegistryLike = dependencyContainer.resolve(CoreTokens.PersistedWorkflowTokenRegistry);\n const workflowActivationPolicy = dependencyContainer.resolve(CoreTokens.WorkflowActivationPolicy);\n const webhookTriggerMatcher = matcherProvider.createMatcher(dependencyContainer);\n const workflowNodeInstanceFactory = dependencyContainer.resolve(CoreTokens.WorkflowNodeInstanceFactory);\n const triggerRuntimeDiagnostics = options?.triggerRuntimeDiagnosticsProvider?.create(dependencyContainer);\n return dependencyContainer.resolve(EngineFactory).create({\n credentialSessions: dependencyContainer.resolve(CoreTokens.CredentialSessionService),\n liveWorkflowRepository,\n workflowRepository: dependencyContainer.resolve(CoreTokens.WorkflowRepository),\n workflowActivationPolicy,\n nodeResolver,\n triggerSetupStateRepository: dependencyContainer.resolve(CoreTokens.TriggerSetupStateRepository),\n webhookTriggerMatcher,\n runIdFactory: dependencyContainer.resolve(CoreTokens.RunIdFactory),\n activationIdFactory: dependencyContainer.resolve(CoreTokens.ActivationIdFactory),\n workflowExecutionRepository: dependencyContainer.resolve(CoreTokens.WorkflowExecutionRepository),\n activationScheduler: dependencyContainer.resolve(CoreTokens.NodeActivationScheduler),\n runDataFactory: dependencyContainer.resolve(CoreTokens.RunDataFactory),\n executionContextFactory: dependencyContainer.resolve(CoreTokens.ExecutionContextFactory),\n nodeExecutor: dependencyContainer.resolve(NodeExecutor),\n eventBus: dependencyContainer.resolve(CoreTokens.RunEventBus),\n tokenRegistry: tokenRegistryLike,\n workflowNodeInstanceFactory,\n executionLimitsPolicy: dependencyContainer.resolve(CoreTokens.EngineExecutionLimitsPolicy),\n triggerRuntimeDiagnostics,\n });\n }),\n });\n }\n\n private registerIntentServices(container: DependencyContainer): void {\n container.register(RunIntentService, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n return dependencyContainer\n .resolve(RunIntentServiceFactory)\n .create(dependencyContainer.resolve(Engine), dependencyContainer.resolve(CoreTokens.WorkflowRepository));\n }),\n });\n container.register(CoreTokens.WorkflowRunnerService, {\n useFactory: instanceCachingFactory((dependencyContainer) => {\n return dependencyContainer\n .resolve(EngineWorkflowRunnerServiceFactory)\n .create(dependencyContainer.resolve(Engine), dependencyContainer.resolve(CoreTokens.WorkflowRepository));\n }),\n });\n }\n\n private resolveMatcherProvider(options: EngineRuntimeRegistrationOptions | undefined): WebhookTriggerMatcherProvider {\n if (options?.webhookTriggerMatcherProvider) {\n return options.webhookTriggerMatcherProvider;\n }\n return {\n createMatcher: (container) =>\n container\n .resolve(WorkflowRepositoryWebhookTriggerMatcherFactory)\n .create(\n container.resolve(CoreTokens.WorkflowRepository),\n container.resolve(CoreTokens.WorkflowActivationPolicy),\n options?.webhookTriggerRoutingDiagnostics,\n ),\n };\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as NodeExecutor,
|
|
1
|
+
import { A as NodeExecutor, B as DefaultAsyncSleeper, L as ItemValueResolver, M as RunnableOutputBehaviorResolver, N as NodeOutputNormalizer, _ as EngineExecutionLimitsPolicy, _t as CoreTokens, c as EngineFactory, ft as instanceCachingFactory, g as ENGINE_EXECUTION_LIMITS_DEFAULTS, i as RunIntentService, j as InProcessRetryRunnerFactory, k as NodeExecutorFactory, l as Engine, o as EngineWorkflowRunnerServiceFactory, r as RunIntentServiceFactory, t as WorkflowRepositoryWebhookTriggerMatcherFactory, u as RunFinishedAtFactory, w as NodeInstanceFactoryFactory, y as InlineDrivingScheduler } from "./runtime-7Xh9z3dw.js";
|
|
2
2
|
|
|
3
3
|
//#region src/policies/executionLimits/EngineExecutionLimitsPolicyFactory.ts
|
|
4
4
|
/**
|
|
@@ -125,6 +125,7 @@ var EngineRuntimeRegistrar = class {
|
|
|
125
125
|
registerSupportFactories(container) {
|
|
126
126
|
if (!container.isRegistered(ItemValueResolver, true)) container.registerSingleton(ItemValueResolver, ItemValueResolver);
|
|
127
127
|
if (!container.isRegistered(NodeOutputNormalizer, true)) container.registerSingleton(NodeOutputNormalizer, NodeOutputNormalizer);
|
|
128
|
+
if (!container.isRegistered(RunnableOutputBehaviorResolver, true)) container.registerSingleton(RunnableOutputBehaviorResolver, RunnableOutputBehaviorResolver);
|
|
128
129
|
container.register(EngineExecutionLimitsPolicyFactory, { useClass: EngineExecutionLimitsPolicyFactory });
|
|
129
130
|
container.register(NodeInstanceFactoryFactory, { useClass: NodeInstanceFactoryFactory });
|
|
130
131
|
container.register(DefaultAsyncSleeper, { useClass: DefaultAsyncSleeper });
|
|
@@ -152,7 +153,7 @@ var EngineRuntimeRegistrar = class {
|
|
|
152
153
|
if (container.isRegistered(NodeExecutor, true)) return;
|
|
153
154
|
container.register(NodeExecutor, { useFactory: instanceCachingFactory((dependencyContainer) => {
|
|
154
155
|
const retryRunner = dependencyContainer.resolve(InProcessRetryRunnerFactory).create(dependencyContainer.resolve(DefaultAsyncSleeper));
|
|
155
|
-
return dependencyContainer.resolve(NodeExecutorFactory).create(dependencyContainer.resolve(CoreTokens.WorkflowNodeInstanceFactory), retryRunner);
|
|
156
|
+
return dependencyContainer.resolve(NodeExecutorFactory).create(dependencyContainer.resolve(CoreTokens.WorkflowNodeInstanceFactory), retryRunner, dependencyContainer.resolve(RunnableOutputBehaviorResolver));
|
|
156
157
|
}) });
|
|
157
158
|
}
|
|
158
159
|
registerDefaultActivationScheduler(container) {
|
|
@@ -214,4 +215,4 @@ var EngineRuntimeRegistrar = class {
|
|
|
214
215
|
|
|
215
216
|
//#endregion
|
|
216
217
|
export { EngineExecutionLimitsPolicyFactory as i, InMemoryWorkflowExecutionRepository as n, RunSummaryMapper as r, EngineRuntimeRegistrar as t };
|
|
217
|
-
//# sourceMappingURL=bootstrap-
|
|
218
|
+
//# sourceMappingURL=bootstrap-DdeiJ8cd.js.map
|