@n8n/instance-ai 1.14.7 → 1.15.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/dist/agent/apply-agent-thinking.js +3 -3
- package/dist/agent/apply-agent-thinking.js.map +1 -1
- package/dist/agent/computer-use-prompt.js +12 -10
- package/dist/agent/computer-use-prompt.js.map +1 -1
- package/dist/agent/instance-agent.js +5 -2
- package/dist/agent/instance-agent.js.map +1 -1
- package/dist/agent/sanitize-mcp-schemas.js +3 -3
- package/dist/agent/sanitize-mcp-schemas.js.map +1 -1
- package/dist/agent/shared-prompts.js +3 -5
- package/dist/agent/shared-prompts.js.map +1 -1
- package/dist/agent/sub-agent-debriefing.d.ts +4 -4
- package/dist/agent/system-prompt.d.ts +1 -0
- package/dist/agent/system-prompt.js +10 -5
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/debug/run-debug-buffer.js +4 -4
- package/dist/debug/run-debug-buffer.js.map +1 -1
- package/dist/debug/sanitize-debug-snapshot.js +6 -5
- package/dist/debug/sanitize-debug-snapshot.js.map +1 -1
- package/dist/domain-access/domain-access-tracker.d.ts +8 -4
- package/dist/domain-access/domain-access-tracker.js +12 -7
- package/dist/domain-access/domain-access-tracker.js.map +1 -1
- package/dist/domain-access/domain-gating.d.ts +4 -4
- package/dist/domain-access/domain-gating.js +5 -5
- package/dist/domain-access/domain-gating.js.map +1 -1
- package/dist/error-formatting.js +3 -3
- package/dist/error-formatting.js.map +1 -1
- package/dist/index.d.ts +3 -20
- package/dist/index.js +4 -22
- package/dist/index.js.map +1 -1
- package/dist/mcp/mcp-client-manager.d.ts +11 -2
- package/dist/mcp/mcp-client-manager.js +17 -9
- package/dist/mcp/mcp-client-manager.js.map +1 -1
- package/dist/runtime/resumable-stream-executor.js +8 -8
- package/dist/runtime/resumable-stream-executor.js.map +1 -1
- package/dist/runtime/run-state-registry.d.ts +4 -0
- package/dist/runtime/run-state-registry.js +22 -8
- package/dist/runtime/run-state-registry.js.map +1 -1
- package/dist/runtime/terminal-response-guard.js +6 -1
- package/dist/runtime/terminal-response-guard.js.map +1 -1
- package/dist/storage/terminal-outcome-storage.d.ts +4 -4
- package/dist/storage/workflow-loop-storage.d.ts +94 -94
- package/dist/stream/map-chunk.js +17 -17
- package/dist/stream/map-chunk.js.map +1 -1
- package/dist/stream/output-redaction.js +8 -6
- package/dist/stream/output-redaction.js.map +1 -1
- package/dist/stream/usage-accumulator.d.ts +18 -18
- package/dist/stream/work-summary-accumulator.d.ts +6 -6
- package/dist/tools/attachments/parse-file.tool.d.ts +18 -18
- package/dist/tools/credentials.tool.d.ts +2 -2
- package/dist/tools/data-tables.tool.js +2 -2
- package/dist/tools/data-tables.tool.js.map +1 -1
- package/dist/tools/evals/column-ref-utils.js +4 -4
- package/dist/tools/evals/column-ref-utils.js.map +1 -1
- package/dist/tools/evals/describe-metric-for-workflow.service.js +3 -3
- package/dist/tools/evals/describe-metric-for-workflow.service.js.map +1 -1
- package/dist/tools/evals/detect-tool-refs.service.js +2 -2
- package/dist/tools/evals/detect-tool-refs.service.js.map +1 -1
- package/dist/tools/evals/eval-data-requirements.service.js +10 -10
- package/dist/tools/evals/eval-data-requirements.service.js.map +1 -1
- package/dist/tools/evals/evals.tool.js +7 -8
- package/dist/tools/evals/evals.tool.js.map +1 -1
- package/dist/tools/evals/extract-rows-from-history.service.js +7 -7
- package/dist/tools/evals/extract-rows-from-history.service.js.map +1 -1
- package/dist/tools/evals/generate-sample-rows.service.js +5 -5
- package/dist/tools/evals/generate-sample-rows.service.js.map +1 -1
- package/dist/tools/evals/metric-catalog.js +3 -3
- package/dist/tools/evals/metric-catalog.js.map +1 -1
- package/dist/tools/executions.tool.js +4 -6
- package/dist/tools/executions.tool.js.map +1 -1
- package/dist/tools/filesystem/create-tools-from-mcp-server.js +6 -6
- package/dist/tools/filesystem/create-tools-from-mcp-server.js.map +1 -1
- package/dist/tools/n8n-docs/schemas.d.ts +4 -4
- package/dist/tools/nodes/node-search-engine.js +3 -3
- package/dist/tools/nodes/node-search-engine.js.map +1 -1
- package/dist/tools/nodes.tool.js +13 -30
- package/dist/tools/nodes.tool.js.map +1 -1
- package/dist/tools/orchestration/complete-checkpoint.tool.js +2 -2
- package/dist/tools/orchestration/complete-checkpoint.tool.js.map +1 -1
- package/dist/tools/orchestration/delegate.schemas.d.ts +1 -1
- package/dist/tools/orchestration/report-verification-verdict.tool.d.ts +8 -8
- package/dist/tools/orchestration/verification/analyze-result.js +4 -3
- package/dist/tools/orchestration/verification/analyze-result.js.map +1 -1
- package/dist/tools/orchestration/verify-built-workflow.tool.d.ts +2 -2
- package/dist/tools/orchestration/verify-built-workflow.tool.js +4 -7
- package/dist/tools/orchestration/verify-built-workflow.tool.js.map +1 -1
- package/dist/tools/research.tool.js +2 -2
- package/dist/tools/research.tool.js.map +1 -1
- package/dist/tools/shared/ask-user.tool.d.ts +4 -4
- package/dist/tools/shared/ask-user.tool.js +11 -21
- package/dist/tools/shared/ask-user.tool.js.map +1 -1
- package/dist/tools/tool-ids.d.ts +1 -0
- package/dist/tools/tool-ids.js +2 -1
- package/dist/tools/tool-ids.js.map +1 -1
- package/dist/tools/workflows/apply-workflow-credentials.tool.js +6 -11
- package/dist/tools/workflows/apply-workflow-credentials.tool.js.map +1 -1
- package/dist/tools/workflows/build-workflow.tool.d.ts +9 -2
- package/dist/tools/workflows/build-workflow.tool.js +127 -5
- package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
- package/dist/tools/workflows/classify-node-destructiveness.service.js +4 -4
- package/dist/tools/workflows/classify-node-destructiveness.service.js.map +1 -1
- package/dist/tools/workflows/credential-url-resolver.d.ts +21 -0
- package/dist/tools/workflows/credential-url-resolver.js +79 -0
- package/dist/tools/workflows/credential-url-resolver.js.map +1 -0
- package/dist/tools/workflows/credential-utils.d.ts +28 -0
- package/dist/tools/workflows/credential-utils.js +61 -0
- package/dist/tools/workflows/credential-utils.js.map +1 -0
- package/dist/tools/workflows/detect-array-input-collapse.js +4 -4
- package/dist/tools/workflows/detect-array-input-collapse.js.map +1 -1
- package/dist/tools/workflows/detect-wrong-kind-locator.d.ts +10 -0
- package/dist/tools/workflows/detect-wrong-kind-locator.js +105 -0
- package/dist/tools/workflows/detect-wrong-kind-locator.js.map +1 -0
- package/dist/tools/workflows/generate-simulation-fixtures.service.js +3 -3
- package/dist/tools/workflows/generate-simulation-fixtures.service.js.map +1 -1
- package/dist/tools/workflows/materialize-node-type.tool.d.ts +4 -4
- package/dist/tools/workflows/setup-workflow.schema.d.ts +63 -27
- package/dist/tools/workflows/setup-workflow.service.js +26 -43
- package/dist/tools/workflows/setup-workflow.service.js.map +1 -1
- package/dist/tools/workflows/summarize-workflow.d.ts +5 -0
- package/dist/tools/workflows/summarize-workflow.js +114 -0
- package/dist/tools/workflows/summarize-workflow.js.map +1 -0
- package/dist/tools/workflows/workflow-json-utils.js +6 -5
- package/dist/tools/workflows/workflow-json-utils.js.map +1 -1
- package/dist/tools/workflows/workflow-source-compiler.js +48 -9
- package/dist/tools/workflows/workflow-source-compiler.js.map +1 -1
- package/dist/tools/workflows/workflow-validation-warnings.js +5 -1
- package/dist/tools/workflows/workflow-validation-warnings.js.map +1 -1
- package/dist/tools/workflows.tool.d.ts +1 -1
- package/dist/tools/workflows.tool.js +47 -22
- package/dist/tools/workflows.tool.js.map +1 -1
- package/dist/tracing/langsmith-tracing.d.ts +5 -1
- package/dist/tracing/langsmith-tracing.js +66 -13
- package/dist/tracing/langsmith-tracing.js.map +1 -1
- package/dist/tracing/trace-payloads.d.ts +1 -0
- package/dist/tracing/trace-payloads.js +46 -29
- package/dist/tracing/trace-payloads.js.map +1 -1
- package/dist/types.d.ts +16 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/stream-helpers.js +5 -5
- package/dist/utils/stream-helpers.js.map +1 -1
- package/dist/workflow-builder/index.d.ts +0 -1
- package/dist/workflow-builder/index.js +1 -6
- package/dist/workflow-builder/index.js.map +1 -1
- package/dist/workflow-loop/index.d.ts +0 -1
- package/dist/workflow-loop/index.js +1 -3
- package/dist/workflow-loop/index.js.map +1 -1
- package/dist/workflow-loop/workflow-loop-state.d.ts +112 -112
- package/dist/workspace/snapshot-image-context.js +24 -11
- package/dist/workspace/snapshot-image-context.js.map +1 -1
- package/dist/workspace/snapshot-manager.d.ts +0 -1
- package/dist/workspace/snapshot-manager.js +0 -7
- package/dist/workspace/snapshot-manager.js.map +1 -1
- package/dist/workspace/template-telemetry.js +5 -4
- package/dist/workspace/template-telemetry.js.map +1 -1
- package/dist/workspace/workspace-manifest.js +2 -2
- package/dist/workspace/workspace-manifest.js.map +1 -1
- package/knowledge-base/reference/workflow-builder-guardrails.md +33 -0
- package/package.json +14 -12
- package/skills/post-build-flow/SKILL.md +106 -10
- package/skills/workflow-builder/SKILL.md +174 -225
- package/skills/workflow-builder/references/compositional-workflows.md +66 -0
- package/skills/workflow-builder/references/error-workflows.md +35 -0
- package/dist/tools/nodes/suggested-nodes-data.d.ts +0 -11
- package/dist/tools/nodes/suggested-nodes-data.js +0 -333
- package/dist/tools/nodes/suggested-nodes-data.js.map +0 -1
- package/dist/workflow-builder/sdk-prompt-sections.d.ts +0 -1
- package/dist/workflow-builder/sdk-prompt-sections.js +0 -9
- package/dist/workflow-builder/sdk-prompt-sections.js.map +0 -1
- package/dist/workflow-loop/terminal-remediation-guard.d.ts +0 -6
- package/dist/workflow-loop/terminal-remediation-guard.js +0 -18
- package/dist/workflow-loop/terminal-remediation-guard.js.map +0 -1
|
@@ -86,14 +86,11 @@ const verifyBuiltWorkflowOutputSchema = zod_1.z.object({
|
|
|
86
86
|
});
|
|
87
87
|
function createVerifyBuiltWorkflowTool(context) {
|
|
88
88
|
return new agents_1.Tool('verify-built-workflow')
|
|
89
|
-
.description('
|
|
90
|
-
'
|
|
91
|
-
'Use this as the standard verifier for workflows produced by the workflow-builder. ' +
|
|
92
|
-
'It supports manual, schedule, form, webhook, chat, and other event triggers with build-outcome pin data, mocked credential context, or trigger-shaped inputData. ' +
|
|
89
|
+
.description('Standard post-build verifier: runs a built workflow with sidecar verification context from the build outcome ' +
|
|
90
|
+
'(pin data, mocked credentials, trigger-shaped inputData; all trigger types supported). ' +
|
|
93
91
|
'Use `executions(action="run")` only for ad hoc runs outside build verification. ' +
|
|
94
|
-
'CRITICAL: `inputData` shape depends on the trigger type
|
|
95
|
-
'
|
|
96
|
-
'look like an expression bug but are not. Do not patch the workflow; re-run verify with the correct shape.')
|
|
92
|
+
'CRITICAL: `inputData` shape depends on the trigger type (see the field description) — a wrong shape produces ' +
|
|
93
|
+
'null downstream values that look like an expression bug; re-run verify with the correct shape instead of patching the workflow.')
|
|
97
94
|
.input(exports.verifyBuiltWorkflowInputSchema)
|
|
98
95
|
.output(verifyBuiltWorkflowOutputSchema)
|
|
99
96
|
.handler(async (input) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-built-workflow.tool.js","sourceRoot":"","sources":["../../../src/tools/orchestration/verify-built-workflow.tool.ts"],"names":[],"mappings":";;;AA8GA,
|
|
1
|
+
{"version":3,"file":"verify-built-workflow.tool.js","sourceRoot":"","sources":["../../../src/tools/orchestration/verify-built-workflow.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,7 +93,7 @@ async function handleWebSearch(context, input, ctx) {
|
|
|
93
93
|
}
|
|
94
94
|
const resumeData = ctx.resumeData;
|
|
95
95
|
if (resumeData !== undefined && resumeData !== null) {
|
|
96
|
-
const { proceed } = (0, domain_access_1.applyWebSearchAccessResume)({
|
|
96
|
+
const { proceed } = await (0, domain_access_1.applyWebSearchAccessResume)({
|
|
97
97
|
resumeData,
|
|
98
98
|
tracker: context.domainAccessTracker,
|
|
99
99
|
runId: context.runId,
|
|
@@ -147,7 +147,7 @@ async function handleFetchUrl(context, input, ctx) {
|
|
|
147
147
|
catch {
|
|
148
148
|
host = input.url;
|
|
149
149
|
}
|
|
150
|
-
const { proceed } = (0, domain_access_1.applyDomainAccessResume)({
|
|
150
|
+
const { proceed } = await (0, domain_access_1.applyDomainAccessResume)({
|
|
151
151
|
resumeData,
|
|
152
152
|
host,
|
|
153
153
|
tracker: context.domainAccessTracker,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"research.tool.js","sourceRoot":"","sources":["../../src/tools/research.tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqPA,gDAiBC;AAnQD,wCAAmC;AACnC,6BAAwB;AAExB,wEAAoE;AACpE,oDAO0B;AAE1B,8EAA4F;AAG5F,KAAK,UAAU,gCAAgC,CAC9C,WAAmB,EACnB,WAAmB;IAEnB,IAAI,YAAoB,CAAC;IACzB,IAAI,cAAmB,CAAC;IACxB,IAAI,CAAC;QACJ,YAAY,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC;QAC7C,cAAc,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,cAAc,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,wDAAa,KAAK,GAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACvD,OAAO,cAAc,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,IAAI,cAAc,KAAK,cAAc,CAAC;AAChG,CAAC;AAID,MAAM,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC1E,KAAK,EAAE,OAAC;SACN,MAAM,EAAE;SACR,QAAQ,CAAC,+EAA+E,CAAC;IAC3F,UAAU,EAAE,OAAC;SACX,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,yDAAyD,CAAC;IACrE,cAAc,EAAE,OAAC;SACf,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;CACzE,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC/F,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAC1D,gBAAgB,EAAE,OAAC;SACjB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,GAAG,CAAC,OAAO,CAAC;SACZ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,EAAE;SACV,QAAQ,CAAC,sDAAsD,CAAC;CAClE,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,IAAA,0CAAmB,EACtC,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC,CACjE,CAAC;AAYF,KAAK,UAAU,eAAe,CAC7B,OAA0B,EAC1B,KAA+C,EAC/C,GAA4B;IAE5B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;QACzC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;IAGlC,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACrD,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,0CAA0B,EAAC;
|
|
1
|
+
{"version":3,"file":"research.tool.js","sourceRoot":"","sources":["../../src/tools/research.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,29 +8,29 @@ export declare const askUserInputSchema: z.ZodObject<{
|
|
|
8
8
|
type: z.ZodEnum<["single", "multi", "text"]>;
|
|
9
9
|
options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
10
10
|
}, "strip", z.ZodTypeAny, {
|
|
11
|
-
type: "text" | "single" | "multi";
|
|
12
11
|
id: string;
|
|
12
|
+
type: "text" | "single" | "multi";
|
|
13
13
|
question: string;
|
|
14
14
|
options?: string[] | undefined;
|
|
15
15
|
}, {
|
|
16
|
-
type: "text" | "single" | "multi";
|
|
17
16
|
id: string;
|
|
17
|
+
type: "text" | "single" | "multi";
|
|
18
18
|
question: string;
|
|
19
19
|
options?: string[] | undefined;
|
|
20
20
|
}>, "many">;
|
|
21
21
|
introMessage: z.ZodOptional<z.ZodString>;
|
|
22
22
|
}, "strip", z.ZodTypeAny, {
|
|
23
23
|
questions: {
|
|
24
|
-
type: "text" | "single" | "multi";
|
|
25
24
|
id: string;
|
|
25
|
+
type: "text" | "single" | "multi";
|
|
26
26
|
question: string;
|
|
27
27
|
options?: string[] | undefined;
|
|
28
28
|
}[];
|
|
29
29
|
introMessage?: string | undefined;
|
|
30
30
|
}, {
|
|
31
31
|
questions: {
|
|
32
|
-
type: "text" | "single" | "multi";
|
|
33
32
|
id: string;
|
|
33
|
+
type: "text" | "single" | "multi";
|
|
34
34
|
question: string;
|
|
35
35
|
options?: string[] | undefined;
|
|
36
36
|
}[];
|
|
@@ -37,27 +37,17 @@ exports.askUserResumeSchema = zod_1.z.object({
|
|
|
37
37
|
});
|
|
38
38
|
function createAskUserTool() {
|
|
39
39
|
return new agents_1.Tool(tool_ids_1.ASK_USER_TOOL_ID)
|
|
40
|
-
.description('Ask the user only
|
|
41
|
-
'single-select
|
|
42
|
-
'
|
|
43
|
-
'
|
|
44
|
-
'
|
|
45
|
-
'
|
|
46
|
-
'
|
|
47
|
-
'
|
|
48
|
-
'
|
|
49
|
-
'
|
|
50
|
-
'
|
|
51
|
-
'options like "Something else", "Other", "None of the above", or similar in ' +
|
|
52
|
-
'the options array — they duplicate the built-in input and confuse users. ' +
|
|
53
|
-
'Also NEVER add a separate follow-up question asking the user to elaborate ' +
|
|
54
|
-
'on a previous "other" choice. Keep questions concise and ' +
|
|
55
|
-
'avoid questions that reference answers to previous questions. ' +
|
|
56
|
-
'A question is asked at most once: if the user skips or dismisses it (you ' +
|
|
57
|
-
'receive answered: false, or an individual answer with skipped: true), treat that ' +
|
|
58
|
-
'as a deliberate "proceed without this" — ' +
|
|
59
|
-
'make a sensible default assumption where one exists, otherwise leave the detail ' +
|
|
60
|
-
'for setup, and NEVER re-present a question the user has already answered, deferred, or skipped. ' +
|
|
40
|
+
.description('Ask the user when only a human can decide; the run suspends until they respond. ' +
|
|
41
|
+
'Questions are single-select, multi-select, or free-text. ' +
|
|
42
|
+
'Before the first build-workflow call, use only for choices that change workflow intent or topology ' +
|
|
43
|
+
'(e.g. destination service) — setup values (recipients, accounts, resources, channels, credentials, ' +
|
|
44
|
+
'timezone) use placeholders or unresolved newCredential() calls instead. ' +
|
|
45
|
+
'The UI adds a built-in "Something else" free-text input to every select question: NEVER include ' +
|
|
46
|
+
'catch-all options ("Something else", "Other", "None of the above") in the options array, and NEVER ' +
|
|
47
|
+
'add a follow-up question elaborating a previous "other" answer. Keep questions concise and independent ' +
|
|
48
|
+
"of each other's answers. A question is asked at most once — a skip or dismissal (answered: false, or " +
|
|
49
|
+
'skipped: true) means "proceed without this": assume a sensible default or leave the detail for setup, ' +
|
|
50
|
+
'and NEVER re-present an answered, deferred, or skipped question. ' +
|
|
61
51
|
'NEVER ask the user to paste passwords, API keys, tokens, cookies, connection strings, or private keys here.')
|
|
62
52
|
.input(exports.askUserInputSchema)
|
|
63
53
|
.output(zod_1.z.object({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-user.tool.js","sourceRoot":"","sources":["../../../src/tools/shared/ask-user.tool.ts"],"names":[],"mappings":";;;AAwCA,
|
|
1
|
+
{"version":3,"file":"ask-user.tool.js","sourceRoot":"","sources":["../../../src/tools/shared/ask-user.tool.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/tool-ids.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare const DOMAIN_TOOL_IDS: {
|
|
|
12
12
|
readonly BUILD_WORKFLOW: "build-workflow";
|
|
13
13
|
readonly PARSE_FILE: "parse-file";
|
|
14
14
|
};
|
|
15
|
+
export declare const COMPILED_WORKFLOW_TRACE_RUN_NAME = "compiled-workflow";
|
|
15
16
|
export declare const ORCHESTRATION_TOOL_IDS: {
|
|
16
17
|
readonly CREATE_TASKS: "create-tasks";
|
|
17
18
|
readonly TASK_CONTROL: "task-control";
|
package/dist/tools/tool-ids.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CHECKPOINT_FOLLOW_UP_TOOL_NAMES = exports.ALWAYS_LOADED_TOOL_NAMES = exports.ORCHESTRATION_TOOL_NAMES = exports.N8N_DOCS_TOOL_ID = exports.ASK_USER_TOOL_ID = exports.DATA_TABLES_TOOL_ID = exports.CREDENTIALS_TOOL_ID = exports.WORKSPACE_TOOL_IDS = exports.ORCHESTRATION_TOOL_IDS = exports.DOMAIN_TOOL_IDS = void 0;
|
|
3
|
+
exports.CHECKPOINT_FOLLOW_UP_TOOL_NAMES = exports.ALWAYS_LOADED_TOOL_NAMES = exports.ORCHESTRATION_TOOL_NAMES = exports.N8N_DOCS_TOOL_ID = exports.ASK_USER_TOOL_ID = exports.DATA_TABLES_TOOL_ID = exports.CREDENTIALS_TOOL_ID = exports.WORKSPACE_TOOL_IDS = exports.ORCHESTRATION_TOOL_IDS = exports.COMPILED_WORKFLOW_TRACE_RUN_NAME = exports.DOMAIN_TOOL_IDS = void 0;
|
|
4
4
|
exports.DOMAIN_TOOL_IDS = {
|
|
5
5
|
WORKFLOWS: 'workflows',
|
|
6
6
|
EVALS: 'evals',
|
|
@@ -15,6 +15,7 @@ exports.DOMAIN_TOOL_IDS = {
|
|
|
15
15
|
BUILD_WORKFLOW: 'build-workflow',
|
|
16
16
|
PARSE_FILE: 'parse-file',
|
|
17
17
|
};
|
|
18
|
+
exports.COMPILED_WORKFLOW_TRACE_RUN_NAME = 'compiled-workflow';
|
|
18
19
|
exports.ORCHESTRATION_TOOL_IDS = {
|
|
19
20
|
CREATE_TASKS: 'create-tasks',
|
|
20
21
|
TASK_CONTROL: 'task-control',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-ids.js","sourceRoot":"","sources":["../../src/tools/tool-ids.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG;IAC9B,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;CACf,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-ids.js","sourceRoot":"","sources":["../../src/tools/tool-ids.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG;IAC9B,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;CACf,CAAC;AAME,QAAA,gCAAgC,GAAG,mBAAmB,CAAC;AAEvD,QAAA,sBAAsB,GAAG;IACrC,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;IACpB,qBAAqB,EAAE,uBAAuB;IAC9C,SAAS,EAAE,WAAW;IACtB,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,2BAA2B,EAAE,6BAA6B;IAC1D,0BAA0B,EAAE,4BAA4B;CAC/C,CAAC;AAEE,QAAA,kBAAkB,GAAG;IACjC,UAAU,EAAE,YAAY;CACf,CAAC;AAEE,QAAA,mBAAmB,GAAG,uBAAe,CAAC,WAAW,CAAC;AAClD,QAAA,mBAAmB,GAAG,uBAAe,CAAC,WAAW,CAAC;AAClD,QAAA,gBAAgB,GAAG,uBAAe,CAAC,QAAQ,CAAC;AAC5C,QAAA,gBAAgB,GAAG,uBAAe,CAAC,QAAQ,CAAC;AAE5C,QAAA,wBAAwB,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,8BAAsB,CAAC,CAAC,CAAC;AAElF,QAAA,wBAAwB,GAAG,IAAI,GAAG,CAAS;IACvD,8BAAsB,CAAC,YAAY;IACnC,8BAAsB,CAAC,QAAQ;IAC/B,uBAAe,CAAC,QAAQ;IACxB,uBAAe,CAAC,WAAW;IAC3B,uBAAe,CAAC,SAAS;IACzB,uBAAe,CAAC,UAAU;IAC1B,uBAAe,CAAC,WAAW;IAC3B,uBAAe,CAAC,UAAU;IAC1B,uBAAe,CAAC,cAAc;IAC9B,uBAAe,CAAC,KAAK;IACrB,uBAAe,CAAC,QAAQ;IACxB,8BAAsB,CAAC,qBAAqB;IAC5C,uBAAe,CAAC,QAAQ;IACxB,uBAAe,CAAC,KAAK;IACrB,YAAY;IACZ,WAAW;CACX,CAAC,CAAC;AAEU,QAAA,+BAA+B,GAAG,IAAI,GAAG,CAAS;IAC9D,8BAAsB,CAAC,mBAAmB;IAC1C,uBAAe,CAAC,UAAU;CAC1B,CAAC,CAAC"}
|
|
@@ -4,6 +4,7 @@ exports.applyWorkflowCredentialsInputSchema = void 0;
|
|
|
4
4
|
exports.createApplyWorkflowCredentialsTool = createApplyWorkflowCredentialsTool;
|
|
5
5
|
const agents_1 = require("@n8n/agents");
|
|
6
6
|
const zod_1 = require("zod");
|
|
7
|
+
const credential_utils_1 = require("./credential-utils");
|
|
7
8
|
exports.applyWorkflowCredentialsInputSchema = zod_1.z.object({
|
|
8
9
|
workItemId: zod_1.z.string().describe('The work item ID from the build (wi_XXXXXXXX)'),
|
|
9
10
|
workflowId: zod_1.z.string().describe('The workflow ID to update'),
|
|
@@ -31,7 +32,7 @@ function createApplyWorkflowCredentialsTool(context) {
|
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
34
|
const { mockedCredentialsByNode } = buildOutcome;
|
|
34
|
-
const {
|
|
35
|
+
const { workflowService } = context.domainContext;
|
|
35
36
|
let json;
|
|
36
37
|
try {
|
|
37
38
|
json = await workflowService.getAsWorkflowJSON(input.workflowId);
|
|
@@ -50,16 +51,10 @@ function createApplyWorkflowCredentialsTool(context) {
|
|
|
50
51
|
const credId = input.credentials[credType];
|
|
51
52
|
if (!credId)
|
|
52
53
|
continue;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
catch {
|
|
58
|
-
return {
|
|
59
|
-
success: false,
|
|
60
|
-
error: `Credential ${credId} for type ${credType} no longer exists.`,
|
|
61
|
-
};
|
|
62
|
-
}
|
|
54
|
+
const resolved = await (0, credential_utils_1.resolveCredentialForApply)(credType, credId, context.domainContext);
|
|
55
|
+
if (!resolved.resolved)
|
|
56
|
+
return { success: false, error: resolved.error };
|
|
57
|
+
(0, credential_utils_1.assignCredentialToNode)(node, credType, resolved.credential);
|
|
63
58
|
}
|
|
64
59
|
appliedNodes.push(nodeName);
|
|
65
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply-workflow-credentials.tool.js","sourceRoot":"","sources":["../../../src/tools/workflows/apply-workflow-credentials.tool.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"apply-workflow-credentials.tool.js","sourceRoot":"","sources":["../../../src/tools/workflows/apply-workflow-credentials.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { z } from 'zod';
|
|
|
2
2
|
import type { InstanceAiContext } from '../../types';
|
|
3
3
|
export declare const buildWorkflowInputSchema: z.ZodObject<{
|
|
4
4
|
filePath: z.ZodEffects<z.ZodString, string, string>;
|
|
5
|
+
sourceCode: z.ZodOptional<z.ZodString>;
|
|
5
6
|
workflowId: z.ZodOptional<z.ZodString>;
|
|
6
7
|
projectId: z.ZodOptional<z.ZodString>;
|
|
7
8
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -9,17 +10,23 @@ export declare const buildWorkflowInputSchema: z.ZodObject<{
|
|
|
9
10
|
isSupportingWorkflow: z.ZodOptional<z.ZodBoolean>;
|
|
10
11
|
}, "strict", z.ZodTypeAny, {
|
|
11
12
|
filePath: string;
|
|
13
|
+
name?: string | undefined;
|
|
12
14
|
workItemId?: string | undefined;
|
|
13
15
|
workflowId?: string | undefined;
|
|
14
|
-
name?: string | undefined;
|
|
15
16
|
projectId?: string | undefined;
|
|
16
17
|
isSupportingWorkflow?: boolean | undefined;
|
|
18
|
+
sourceCode?: string | undefined;
|
|
17
19
|
}, {
|
|
18
20
|
filePath: string;
|
|
21
|
+
name?: string | undefined;
|
|
19
22
|
workItemId?: string | undefined;
|
|
20
23
|
workflowId?: string | undefined;
|
|
21
|
-
name?: string | undefined;
|
|
22
24
|
projectId?: string | undefined;
|
|
23
25
|
isSupportingWorkflow?: boolean | undefined;
|
|
26
|
+
sourceCode?: string | undefined;
|
|
24
27
|
}>;
|
|
28
|
+
export declare function autoImportMissingSdkSymbols(source: string, errors: string[]): {
|
|
29
|
+
source: string;
|
|
30
|
+
symbols: string[];
|
|
31
|
+
} | undefined;
|
|
25
32
|
export declare function createBuildWorkflowTool(context: InstanceAiContext): import("@n8n/agents").BuiltTool;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildWorkflowInputSchema = void 0;
|
|
4
|
+
exports.autoImportMissingSdkSymbols = autoImportMissingSdkSymbols;
|
|
4
5
|
exports.createBuildWorkflowTool = createBuildWorkflowTool;
|
|
5
6
|
const agents_1 = require("@n8n/agents");
|
|
6
7
|
const api_types_1 = require("@n8n/api-types");
|
|
7
|
-
const
|
|
8
|
+
const placeholder_1 = require("@n8n/utils/placeholder");
|
|
9
|
+
const workflow_sdk_1 = require("@n8n/workflow-sdk");
|
|
8
10
|
const nanoid_1 = require("nanoid");
|
|
9
11
|
const node_fs_1 = require("node:fs");
|
|
10
12
|
const node_path_1 = require("node:path");
|
|
@@ -20,11 +22,15 @@ const workflow_build_telemetry_1 = require("./workflow-build-telemetry");
|
|
|
20
22
|
const workflow_file_bindings_1 = require("./workflow-file-bindings");
|
|
21
23
|
const workflow_json_utils_1 = require("./workflow-json-utils");
|
|
22
24
|
const workflow_source_compiler_1 = require("./workflow-source-compiler");
|
|
25
|
+
const langsmith_tracing_1 = require("../../tracing/langsmith-tracing");
|
|
26
|
+
const tool_ids_1 = require("../tool-ids");
|
|
23
27
|
const workflow_validation_warnings_1 = require("./workflow-validation-warnings");
|
|
24
28
|
const runtime_skills_1 = require("../../skills/runtime-skills");
|
|
25
29
|
const build_failure_tracker_1 = require("../../workflow-builder/build-failure-tracker");
|
|
26
30
|
const remediation_1 = require("../../workflow-loop/remediation");
|
|
27
31
|
const workflow_loop_state_1 = require("../../workflow-loop/workflow-loop-state");
|
|
32
|
+
const workspace_files_1 = require("../../workspace/workspace-files");
|
|
33
|
+
const MAX_COMPILED_WORKFLOW_TRACE_CHARS = 1_000_000;
|
|
28
34
|
const confirmationSuspendSchema = zod_1.z.object({
|
|
29
35
|
requestId: zod_1.z.string(),
|
|
30
36
|
message: zod_1.z.string(),
|
|
@@ -48,6 +54,10 @@ exports.buildWorkflowInputSchema = zod_1.z
|
|
|
48
54
|
}
|
|
49
55
|
}, { message: 'Workflow source file path must stay within the workspace root.' })
|
|
50
56
|
.describe('Workspace path to the workflow source file to build. Supports TypeScript SDK files and WorkflowJSON .json files.'),
|
|
57
|
+
sourceCode: zod_1.z
|
|
58
|
+
.string()
|
|
59
|
+
.optional()
|
|
60
|
+
.describe('Full source to write to filePath before building — use this instead of a separate workspace_write_file call when creating or fully rewriting the source. Omit to build the existing file content (preferred for targeted edits made with file tools).'),
|
|
51
61
|
workflowId: zod_1.z
|
|
52
62
|
.string()
|
|
53
63
|
.optional()
|
|
@@ -98,6 +108,37 @@ const setupRequirementOutputSchema = zod_1.z.discriminatedUnion('status', [
|
|
|
98
108
|
guidance: zod_1.z.string(),
|
|
99
109
|
}),
|
|
100
110
|
]);
|
|
111
|
+
const SDK_IMPORTABLE_SYMBOLS = new Set(workflow_sdk_1.SDK_IMPORTABLE_FUNCTIONS);
|
|
112
|
+
const SDK_IMPORT_REGEX = /import\s*\{([^}]*)\}\s*from\s*['"]@n8n\/workflow-sdk['"]/;
|
|
113
|
+
function autoImportMissingSdkSymbols(source, errors) {
|
|
114
|
+
const missing = new Set();
|
|
115
|
+
for (const error of errors) {
|
|
116
|
+
for (const match of error.matchAll(/\b([A-Za-z_$][\w$]*) is not defined\b/g)) {
|
|
117
|
+
if (SDK_IMPORTABLE_SYMBOLS.has(match[1]))
|
|
118
|
+
missing.add(match[1]);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (missing.size === 0)
|
|
122
|
+
return undefined;
|
|
123
|
+
const symbols = Array.from(missing);
|
|
124
|
+
const existing = SDK_IMPORT_REGEX.exec(source);
|
|
125
|
+
if (existing) {
|
|
126
|
+
const names = new Set(existing[1]
|
|
127
|
+
.split(',')
|
|
128
|
+
.map((name) => name.trim())
|
|
129
|
+
.filter(Boolean));
|
|
130
|
+
for (const symbol of symbols)
|
|
131
|
+
names.add(symbol);
|
|
132
|
+
return {
|
|
133
|
+
source: source.replace(SDK_IMPORT_REGEX, `import {\n ${Array.from(names).join(',\n ')},\n} from '@n8n/workflow-sdk'`),
|
|
134
|
+
symbols,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
source: `import { ${symbols.join(', ')} } from '@n8n/workflow-sdk';\n\n${source}`,
|
|
139
|
+
symbols,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
101
142
|
const POST_BUILD_FLOW_SKILL_ID = 'post-build-flow';
|
|
102
143
|
const POST_BUILD_FLOW_GUIDANCE = 'This direct build is not complete yet. Follow the post-build instructions in `instructions` now (do NOT load the post-build-flow skill — they are the same instructions) before verification, setup, error-workflow follow-up, publishing, testing, or any final user-visible summary. Follow-up order is verification/setup first, then mocked/no-mock live-test when latest verification used mocks or simulations, then explicit error-workflow opt-in for direct new primary workflows, then generic testing prompts. Do not replace the error-workflow opt-in with a generic add-anything, publish, or test question.';
|
|
103
144
|
let postBuildFlowInstructionsCache;
|
|
@@ -139,9 +180,10 @@ function directPostBuildFlowHandoff(owner, isAuxiliarySupportingWorkflow) {
|
|
|
139
180
|
function createBuildWorkflowTool(context) {
|
|
140
181
|
const failureTracker = new build_failure_tracker_1.BuildFailureTracker();
|
|
141
182
|
return new agents_1.Tool('build-workflow')
|
|
142
|
-
.description('Build and save a workflow from
|
|
183
|
+
.description('Build and save a workflow from workflow source. ' +
|
|
143
184
|
'Use TypeScript SDK source for new workflows, or WorkflowJSON .json source for existing workflow edits. ' +
|
|
144
|
-
'
|
|
185
|
+
'For new or fully rewritten source, pass it in `sourceCode` (the tool writes filePath and builds in one call — ' +
|
|
186
|
+
'do not spend a separate workspace_write_file call). Pass filePath alone only after editing an existing file with file tools.')
|
|
145
187
|
.input(exports.buildWorkflowInputSchema)
|
|
146
188
|
.output(zod_1.z.object({
|
|
147
189
|
success: zod_1.z.boolean(),
|
|
@@ -297,6 +339,36 @@ function createBuildWorkflowTool(context) {
|
|
|
297
339
|
});
|
|
298
340
|
}
|
|
299
341
|
}
|
|
342
|
+
if (input.sourceCode !== undefined && context.workspace) {
|
|
343
|
+
try {
|
|
344
|
+
await (0, workspace_files_1.writeWorkspaceFile)(context.workspace, filePath, input.sourceCode, {
|
|
345
|
+
logger: context.logger,
|
|
346
|
+
resourceLabel: 'Workflow source file',
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
catch (error) {
|
|
350
|
+
const remediation = (0, workflow_build_remediation_1.createCodeFixableRemediation)({
|
|
351
|
+
reason: 'workflow_source_write_failed',
|
|
352
|
+
guidance: 'The inline sourceCode could not be written to filePath. Write the file with workspace file tools, then call build-workflow again with the same filePath.',
|
|
353
|
+
});
|
|
354
|
+
(0, workflow_build_telemetry_1.trackWorkflowSourceBuild)(context, {
|
|
355
|
+
result: 'failure',
|
|
356
|
+
stage: 'source_read',
|
|
357
|
+
binding,
|
|
358
|
+
targetWorkflowId,
|
|
359
|
+
isSupportingWorkflow: input.isSupportingWorkflow,
|
|
360
|
+
remediation,
|
|
361
|
+
errorCount: 1,
|
|
362
|
+
});
|
|
363
|
+
return {
|
|
364
|
+
success: false,
|
|
365
|
+
...(0, workflow_build_context_1.sourceResponseBase)(binding),
|
|
366
|
+
workflowId: targetWorkflowId,
|
|
367
|
+
errors: [error instanceof Error ? error.message : String(error)],
|
|
368
|
+
remediation,
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
}
|
|
300
372
|
let sourceCode;
|
|
301
373
|
let sourceHash;
|
|
302
374
|
try {
|
|
@@ -350,7 +422,40 @@ function createBuildWorkflowTool(context) {
|
|
|
350
422
|
return escalation ? [...errors, escalation] : errors;
|
|
351
423
|
};
|
|
352
424
|
let informational = [];
|
|
353
|
-
|
|
425
|
+
let compiled = await (0, workflow_source_compiler_1.compileWorkflowSource)(context, filePath, sourceCode);
|
|
426
|
+
if (!compiled.success &&
|
|
427
|
+
compiled.reason === 'workflow_source_build_failed' &&
|
|
428
|
+
context.workspace) {
|
|
429
|
+
const recovery = autoImportMissingSdkSymbols(sourceCode, compiled.errors);
|
|
430
|
+
if (recovery) {
|
|
431
|
+
try {
|
|
432
|
+
await (0, workspace_files_1.writeWorkspaceFile)(context.workspace, filePath, recovery.source, {
|
|
433
|
+
logger: context.logger,
|
|
434
|
+
resourceLabel: 'Workflow source file',
|
|
435
|
+
});
|
|
436
|
+
const retried = await (0, workflow_source_compiler_1.compileWorkflowSource)(context, filePath, recovery.source);
|
|
437
|
+
sourceCode = recovery.source;
|
|
438
|
+
sourceHash = (0, workflow_file_bindings_1.hashWorkflowSource)(recovery.source);
|
|
439
|
+
compiled = retried.success
|
|
440
|
+
? {
|
|
441
|
+
...retried,
|
|
442
|
+
warnings: [
|
|
443
|
+
...retried.warnings,
|
|
444
|
+
{
|
|
445
|
+
code: 'auto_imported_sdk_symbols',
|
|
446
|
+
message: `Auto-added missing @n8n/workflow-sdk import(s): ${recovery.symbols.join(', ')}. Include them in future source.`,
|
|
447
|
+
},
|
|
448
|
+
],
|
|
449
|
+
}
|
|
450
|
+
: retried;
|
|
451
|
+
}
|
|
452
|
+
catch (error) {
|
|
453
|
+
context.logger.debug('Auto-import recovery failed; returning original errors', {
|
|
454
|
+
error: error instanceof Error ? error.message : String(error),
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
354
459
|
if (!compiled.success) {
|
|
355
460
|
const errors = compiled.editable ? withEscalation(compiled.errors) : compiled.errors;
|
|
356
461
|
const remediation = (0, workflow_build_remediation_1.createSourceCompileRemediation)({
|
|
@@ -489,7 +594,7 @@ function createBuildWorkflowTool(context) {
|
|
|
489
594
|
.filter((n) => (0, workflow_json_utils_1.isTriggerNodeType)(n.type))
|
|
490
595
|
.map((n) => ({ nodeName: n.name, nodeType: n.type }))
|
|
491
596
|
.filter((t) => Boolean(t.nodeName) && Boolean(t.nodeType));
|
|
492
|
-
const hasPlaceholders = (json.nodes ?? []).some((n) => (0,
|
|
597
|
+
const hasPlaceholders = (json.nodes ?? []).some((n) => (0, placeholder_1.hasPlaceholderDeep)(n.parameters));
|
|
493
598
|
const createSuccessResponse = async (saved, operation) => {
|
|
494
599
|
const setupRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, saved.id);
|
|
495
600
|
const workflowNeedsSetup = setupRequests.some((request) => request.needsAction);
|
|
@@ -509,6 +614,23 @@ function createBuildWorkflowTool(context) {
|
|
|
509
614
|
workflowVersionId: saved.versionId,
|
|
510
615
|
sourceHash,
|
|
511
616
|
});
|
|
617
|
+
try {
|
|
618
|
+
const payload = { workflowId: saved.id, sourceHash, workflow: json };
|
|
619
|
+
const withinSizeGate = JSON.stringify(payload).length <= MAX_COMPILED_WORKFLOW_TRACE_CHARS;
|
|
620
|
+
const emittedVia = await (0, langsmith_tracing_1.emitTraceOnlyChildRun)(context.tracing, {
|
|
621
|
+
name: tool_ids_1.COMPILED_WORKFLOW_TRACE_RUN_NAME,
|
|
622
|
+
runType: 'chain',
|
|
623
|
+
canonicalName: `instance-ai.${tool_ids_1.COMPILED_WORKFLOW_TRACE_RUN_NAME}`,
|
|
624
|
+
tags: [tool_ids_1.COMPILED_WORKFLOW_TRACE_RUN_NAME],
|
|
625
|
+
metadata: { workflow_id: saved.id, source_hash: sourceHash },
|
|
626
|
+
}, withinSizeGate
|
|
627
|
+
? { outputs: payload, rawOutputs: true }
|
|
628
|
+
: { outputs: { workflowId: saved.id, sourceHash, truncated: true } });
|
|
629
|
+
context.logger.debug(`[build-workflow] compiled-workflow trace event: ${emittedVia}${withinSizeGate ? '' : ' (payload over size gate, emitted truncated marker)'}`);
|
|
630
|
+
}
|
|
631
|
+
catch (error) {
|
|
632
|
+
context.logger.debug(`[build-workflow] compiled-workflow trace event failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
633
|
+
}
|
|
512
634
|
const outcome = (0, workflow_build_routing_1.withDeterministicRouting)({
|
|
513
635
|
workItemId: resolvedWorkItemId,
|
|
514
636
|
...(runId ? { runId } : {}),
|