@n8n/instance-ai 1.12.3 → 1.13.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.d.ts +2 -0
- package/dist/agent/apply-agent-thinking.js +41 -0
- package/dist/agent/apply-agent-thinking.js.map +1 -0
- package/dist/agent/instance-agent.js +10 -2
- package/dist/agent/instance-agent.js.map +1 -1
- package/dist/agent/sanitize-mcp-schemas.js +133 -125
- package/dist/agent/sanitize-mcp-schemas.js.map +1 -1
- package/dist/agent/shared-prompts.d.ts +0 -1
- package/dist/agent/shared-prompts.js +4 -11
- package/dist/agent/shared-prompts.js.map +1 -1
- package/dist/agent/sub-agent-debriefing.d.ts +4 -4
- package/dist/agent/system-prompt.js +3 -10
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/debug/run-debug-buffer.d.ts +63 -0
- package/dist/debug/run-debug-buffer.js +177 -0
- package/dist/debug/run-debug-buffer.js.map +1 -0
- package/dist/debug/sanitize-debug-snapshot.d.ts +2 -0
- package/dist/debug/sanitize-debug-snapshot.js +88 -0
- package/dist/debug/sanitize-debug-snapshot.js.map +1 -0
- package/dist/error-formatting.js +3 -5
- package/dist/error-formatting.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/knowledge-base/build-templates-index.d.ts +1 -0
- package/dist/knowledge-base/build-templates-index.js +18 -2
- package/dist/knowledge-base/build-templates-index.js.map +1 -1
- package/dist/knowledge-base/materialize-knowledge-base.d.ts +2 -3
- package/dist/knowledge-base/materialize-knowledge-base.js +10 -7
- package/dist/knowledge-base/materialize-knowledge-base.js.map +1 -1
- package/dist/mcp/mcp-client-manager.d.ts +1 -1
- package/dist/mcp/mcp-client-manager.js +13 -9
- package/dist/mcp/mcp-client-manager.js.map +1 -1
- package/dist/runtime/memory-task-registry.d.ts +8 -0
- package/dist/runtime/memory-task-registry.js +42 -0
- package/dist/runtime/memory-task-registry.js.map +1 -0
- package/dist/runtime/resumable-stream-executor.d.ts +3 -0
- package/dist/runtime/resumable-stream-executor.js +171 -90
- package/dist/runtime/resumable-stream-executor.js.map +1 -1
- package/dist/runtime/run-state-registry.d.ts +2 -0
- package/dist/runtime/run-state-registry.js +3 -0
- package/dist/runtime/run-state-registry.js.map +1 -1
- package/dist/runtime/stream-runner.d.ts +3 -0
- package/dist/runtime/stream-runner.js +3 -0
- package/dist/runtime/stream-runner.js.map +1 -1
- package/dist/skills/materialize-runtime-skills.d.ts +3 -3
- package/dist/skills/materialize-runtime-skills.js +1 -1
- package/dist/skills/materialize-runtime-skills.js.map +1 -1
- package/dist/source-map-filter.js +0 -1
- package/dist/source-map-filter.js.map +1 -1
- package/dist/storage/terminal-outcome-storage.d.ts +2 -2
- package/dist/storage/workflow-loop-storage.d.ts +75 -4
- package/dist/stream/map-chunk.js +198 -237
- package/dist/stream/map-chunk.js.map +1 -1
- package/dist/stream/output-redaction.js +2 -2
- package/dist/stream/output-redaction.js.map +1 -1
- package/dist/stream/usage-accumulator.d.ts +90 -0
- package/dist/stream/usage-accumulator.js +89 -0
- package/dist/stream/usage-accumulator.js.map +1 -0
- package/dist/stream/work-summary-accumulator.d.ts +6 -6
- package/dist/tools/attachments/parse-file.tool.js +1 -1
- package/dist/tools/attachments/parse-file.tool.js.map +1 -1
- package/dist/tools/credentials.tool.js +4 -1
- package/dist/tools/credentials.tool.js.map +1 -1
- package/dist/tools/data-tables.tool.js +5 -2
- package/dist/tools/data-tables.tool.js.map +1 -1
- package/dist/tools/evals/column-ref-utils.d.ts +1 -2
- package/dist/tools/evals/column-ref-utils.js +19 -18
- package/dist/tools/evals/column-ref-utils.js.map +1 -1
- package/dist/tools/evals/describe-metric-for-workflow.service.js +7 -25
- package/dist/tools/evals/describe-metric-for-workflow.service.js.map +1 -1
- package/dist/tools/evals/detect-tool-refs.service.js +2 -1
- package/dist/tools/evals/detect-tool-refs.service.js.map +1 -1
- package/dist/tools/evals/eval-data-requirements.service.js +10 -9
- package/dist/tools/evals/eval-data-requirements.service.js.map +1 -1
- package/dist/tools/evals/evals.tool.js +2 -2
- package/dist/tools/evals/evals.tool.js.map +1 -1
- package/dist/tools/evals/extract-rows-from-history.service.js +8 -8
- package/dist/tools/evals/extract-rows-from-history.service.js.map +1 -1
- package/dist/tools/evals/generate-sample-rows.service.d.ts +2 -2
- package/dist/tools/evals/generate-sample-rows.service.js +30 -49
- package/dist/tools/evals/generate-sample-rows.service.js.map +1 -1
- package/dist/tools/evals/generate-tool-ref-pin-data.service.js +10 -23
- package/dist/tools/evals/generate-tool-ref-pin-data.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 +10 -2
- package/dist/tools/executions.tool.js.map +1 -1
- package/dist/tools/filesystem/create-tools-from-mcp-server.d.ts +1 -1
- package/dist/tools/filesystem/create-tools-from-mcp-server.js +8 -10
- package/dist/tools/filesystem/create-tools-from-mcp-server.js.map +1 -1
- package/dist/tools/index.js +1 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/nodes/node-search-engine.js +21 -42
- package/dist/tools/nodes/node-search-engine.js.map +1 -1
- package/dist/tools/nodes/node-search-engine.types.d.ts +2 -0
- package/dist/tools/nodes/preferred-chat-model.d.ts +1 -0
- package/dist/tools/nodes/preferred-chat-model.js +19 -0
- package/dist/tools/nodes/preferred-chat-model.js.map +1 -0
- package/dist/tools/nodes/suggested-nodes-data.js +13 -3
- package/dist/tools/nodes/suggested-nodes-data.js.map +1 -1
- package/dist/tools/nodes.tool.js +32 -7
- package/dist/tools/nodes.tool.js.map +1 -1
- package/dist/tools/orchestration/complete-checkpoint.tool.js +3 -5
- package/dist/tools/orchestration/complete-checkpoint.tool.js.map +1 -1
- package/dist/tools/orchestration/eval-data-agent.tool.js +2 -1
- package/dist/tools/orchestration/eval-data-agent.tool.js.map +1 -1
- package/dist/tools/orchestration/eval-setup-agent.prompt.d.ts +1 -1
- package/dist/tools/orchestration/eval-setup-agent.prompt.js +3 -3
- package/dist/tools/orchestration/report-verification-verdict.tool.d.ts +2 -2
- package/dist/tools/orchestration/report-verification-verdict.tool.js +1 -1
- package/dist/tools/orchestration/report-verification-verdict.tool.js.map +1 -1
- package/dist/tools/orchestration/verify-built-workflow.tool.js +320 -307
- package/dist/tools/orchestration/verify-built-workflow.tool.js.map +1 -1
- package/dist/tools/research.tool.js +1 -1
- 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 +6 -1
- package/dist/tools/shared/ask-user.tool.js.map +1 -1
- package/dist/tools/tool-ids.d.ts +0 -1
- package/dist/tools/tool-ids.js +0 -1
- package/dist/tools/tool-ids.js.map +1 -1
- package/dist/tools/workflows/build-workflow.tool.d.ts +4 -22
- package/dist/tools/workflows/build-workflow.tool.js +373 -317
- package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
- package/dist/tools/workflows/classify-node-destructiveness.service.d.ts +7 -0
- package/dist/tools/workflows/classify-node-destructiveness.service.js +307 -0
- package/dist/tools/workflows/classify-node-destructiveness.service.js.map +1 -0
- package/dist/tools/workflows/generate-simulation-fixtures.service.d.ts +8 -0
- package/dist/tools/workflows/generate-simulation-fixtures.service.js +95 -0
- package/dist/tools/workflows/generate-simulation-fixtures.service.js.map +1 -0
- package/dist/tools/workflows/plan-verification-simulation.d.ts +15 -0
- package/dist/tools/workflows/plan-verification-simulation.js +32 -0
- package/dist/tools/workflows/plan-verification-simulation.js.map +1 -0
- package/dist/tools/workflows/resolve-credentials.d.ts +0 -2
- package/dist/tools/workflows/resolve-credentials.js +0 -13
- package/dist/tools/workflows/resolve-credentials.js.map +1 -1
- package/dist/tools/workflows/setup-workflow.service.js +259 -215
- package/dist/tools/workflows/setup-workflow.service.js.map +1 -1
- package/dist/tools/workflows/validate-workflow.service.js +81 -66
- package/dist/tools/workflows/validate-workflow.service.js.map +1 -1
- package/dist/tools/workflows/workflow-build-context.d.ts +33 -0
- package/dist/tools/workflows/workflow-build-context.js +80 -0
- package/dist/tools/workflows/workflow-build-context.js.map +1 -0
- package/dist/tools/workflows/workflow-build-remediation.d.ts +11 -0
- package/dist/tools/workflows/workflow-build-remediation.js +89 -0
- package/dist/tools/workflows/workflow-build-remediation.js.map +1 -0
- package/dist/tools/workflows/workflow-build-reporting.d.ts +19 -0
- package/dist/tools/workflows/workflow-build-reporting.js +78 -0
- package/dist/tools/workflows/workflow-build-reporting.js.map +1 -0
- package/dist/tools/workflows/workflow-build-routing.d.ts +2 -0
- package/dist/tools/workflows/workflow-build-routing.js +83 -0
- package/dist/tools/workflows/workflow-build-routing.js.map +1 -0
- package/dist/tools/workflows/workflow-build-telemetry.d.ts +18 -0
- package/dist/tools/workflows/workflow-build-telemetry.js +33 -0
- package/dist/tools/workflows/workflow-build-telemetry.js.map +1 -0
- package/dist/tools/workflows/workflow-file-bindings.d.ts +28 -0
- package/dist/tools/workflows/workflow-file-bindings.js +104 -0
- package/dist/tools/workflows/workflow-file-bindings.js.map +1 -0
- package/dist/tools/workflows/workflow-json-utils.d.ts +3 -0
- package/dist/tools/workflows/workflow-json-utils.js +54 -5
- package/dist/tools/workflows/workflow-json-utils.js.map +1 -1
- package/dist/tools/workflows/workflow-source-compiler.d.ts +19 -0
- package/dist/tools/workflows/workflow-source-compiler.js +217 -0
- package/dist/tools/workflows/workflow-source-compiler.js.map +1 -0
- package/dist/tools/workflows/workflow-validation-warnings.d.ts +14 -0
- package/dist/tools/workflows/workflow-validation-warnings.js +28 -0
- package/dist/tools/workflows/workflow-validation-warnings.js.map +1 -0
- package/dist/tools/workflows.tool.js +107 -99
- package/dist/tools/workflows.tool.js.map +1 -1
- package/dist/tracing/langsmith-tracing.js +7 -7
- package/dist/tracing/langsmith-tracing.js.map +1 -1
- package/dist/tracing/trace-payloads.d.ts +2 -1
- package/dist/tracing/trace-payloads.js +152 -114
- package/dist/tracing/trace-payloads.js.map +1 -1
- package/dist/types.d.ts +24 -4
- package/dist/types.js.map +1 -1
- package/dist/utils/eval-agents.d.ts +0 -3
- package/dist/utils/eval-agents.js +3 -11
- package/dist/utils/eval-agents.js.map +1 -1
- package/dist/utils/generate-validated-json.d.ts +16 -0
- package/dist/utils/generate-validated-json.js +38 -0
- package/dist/utils/generate-validated-json.js.map +1 -0
- package/dist/utils/stream-helpers.d.ts +0 -1
- package/dist/utils/stream-helpers.js +5 -8
- package/dist/utils/stream-helpers.js.map +1 -1
- package/dist/workflow-builder/build-failure-tracker.js +25 -1
- package/dist/workflow-builder/build-failure-tracker.js.map +1 -1
- package/dist/workflow-builder/index.d.ts +0 -4
- package/dist/workflow-builder/index.js +1 -11
- package/dist/workflow-builder/index.js.map +1 -1
- package/dist/workflow-loop/guidance.js +14 -15
- package/dist/workflow-loop/guidance.js.map +1 -1
- package/dist/workflow-loop/runtime.js +1 -0
- package/dist/workflow-loop/runtime.js.map +1 -1
- package/dist/workflow-loop/verification-obligation.js +8 -1
- package/dist/workflow-loop/verification-obligation.js.map +1 -1
- package/dist/workflow-loop/workflow-loop-controller.js +17 -1
- package/dist/workflow-loop/workflow-loop-controller.js.map +1 -1
- package/dist/workflow-loop/workflow-loop-state.d.ts +90 -6
- package/dist/workflow-loop/workflow-loop-state.js +13 -1
- package/dist/workflow-loop/workflow-loop-state.js.map +1 -1
- package/dist/workspace/builder-templates-service.d.ts +5 -5
- package/dist/workspace/builder-templates-service.js +17 -14
- package/dist/workspace/builder-templates-service.js.map +1 -1
- package/dist/workspace/create-workspace.js +8 -1
- package/dist/workspace/create-workspace.js.map +1 -1
- package/dist/workspace/prebaked-workspace-bundle.d.ts +2 -2
- package/dist/workspace/prebaked-workspace-bundle.js +5 -5
- package/dist/workspace/prebaked-workspace-bundle.js.map +1 -1
- package/dist/workspace/sandbox-setup.d.ts +1 -1
- package/dist/workspace/sandbox-setup.js +10 -37
- package/dist/workspace/sandbox-setup.js.map +1 -1
- package/dist/workspace/snapshot-manager.d.ts +1 -1
- package/dist/workspace/template-telemetry.js +2 -5
- package/dist/workspace/template-telemetry.js.map +1 -1
- package/dist/workspace/workspace-files.d.ts +1 -1
- package/dist/workspace/workspace-files.js +3 -3
- package/dist/workspace/workspace-files.js.map +1 -1
- package/dist/workspace/workspace-manifest.js +2 -2
- package/dist/workspace/workspace-manifest.js.map +1 -1
- package/dist/workspace/workspace-paths.d.ts +4 -0
- package/dist/workspace/workspace-paths.js +25 -0
- package/dist/workspace/workspace-paths.js.map +1 -0
- package/knowledge-base/reference/open-ai-output-shape.md +79 -0
- package/knowledge-base/reference/workflow-builder-guardrails.md +15 -0
- package/package.json +13 -12
- package/skills/planned-task-runtime/SKILL.md +3 -2
- package/skills/planning/SKILL.md +5 -0
- package/skills/post-build-flow/SKILL.md +25 -9
- package/skills/workflow-builder/SKILL.md +89 -134
- package/dist/tools/workflows/submit-workflow-identity.d.ts +0 -39
- package/dist/tools/workflows/submit-workflow-identity.js +0 -181
- package/dist/tools/workflows/submit-workflow-identity.js.map +0 -1
- package/dist/tools/workflows/submit-workflow.tool.d.ts +0 -223
- package/dist/tools/workflows/submit-workflow.tool.js +0 -491
- package/dist/tools/workflows/submit-workflow.tool.js.map +0 -1
- package/dist/workflow-builder/extract-code.d.ts +0 -5
- package/dist/workflow-builder/extract-code.js +0 -105
- package/dist/workflow-builder/extract-code.js.map +0 -1
- package/dist/workflow-builder/parse-validate.d.ts +0 -10
- package/dist/workflow-builder/parse-validate.js +0 -50
- package/dist/workflow-builder/parse-validate.js.map +0 -1
- package/dist/workflow-builder/patch-code.d.ts +0 -14
- package/dist/workflow-builder/patch-code.js +0 -117
- package/dist/workflow-builder/patch-code.js.map +0 -1
- package/dist/workflow-builder/types.d.ts +0 -11
- package/dist/workflow-builder/types.js +0 -3
- package/dist/workflow-builder/types.js.map +0 -1
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseAndValidate = parseAndValidate;
|
|
4
|
-
exports.partitionWarnings = partitionWarnings;
|
|
5
|
-
const workflow_sdk_1 = require("@n8n/workflow-sdk");
|
|
6
|
-
const extract_code_1 = require("./extract-code");
|
|
7
|
-
function collectValidationIssues(issues, allWarnings) {
|
|
8
|
-
for (const issue of issues) {
|
|
9
|
-
allWarnings.push({
|
|
10
|
-
code: issue.code,
|
|
11
|
-
message: issue.message,
|
|
12
|
-
nodeName: issue.nodeName,
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
function parseAndValidate(code, options = {}) {
|
|
17
|
-
const codeToParse = (0, extract_code_1.stripImportStatements)(code);
|
|
18
|
-
const { nodeTypesProvider } = options;
|
|
19
|
-
try {
|
|
20
|
-
const builder = (0, workflow_sdk_1.parseWorkflowCodeToBuilder)(codeToParse);
|
|
21
|
-
builder.regenerateNodeIds();
|
|
22
|
-
const allWarnings = [];
|
|
23
|
-
const graphValidation = builder.validate({ nodeTypesProvider });
|
|
24
|
-
collectValidationIssues(graphValidation.errors, allWarnings);
|
|
25
|
-
collectValidationIssues(graphValidation.warnings, allWarnings);
|
|
26
|
-
const json = builder.toJSON({ tidyUp: true });
|
|
27
|
-
const schemaValidation = (0, workflow_sdk_1.validateWorkflow)(json, { nodeTypesProvider, strictMode: true });
|
|
28
|
-
collectValidationIssues(schemaValidation.errors, allWarnings);
|
|
29
|
-
collectValidationIssues(schemaValidation.warnings, allWarnings);
|
|
30
|
-
return { workflow: json, warnings: allWarnings };
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
throw new Error(`Failed to parse workflow code: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
function partitionWarnings(warnings) {
|
|
37
|
-
const informationalCodes = new Set(['MISSING_TRIGGER', 'DISCONNECTED_NODE']);
|
|
38
|
-
const errors = [];
|
|
39
|
-
const informational = [];
|
|
40
|
-
for (const w of warnings) {
|
|
41
|
-
if (informationalCodes.has(w.code)) {
|
|
42
|
-
informational.push(w);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
errors.push(w);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return { errors, informational };
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=parse-validate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse-validate.js","sourceRoot":"","sources":["../../src/workflow-builder/parse-validate.ts"],"names":[],"mappings":";;AAyDA,4CAsCC;AAQD,8CAmBC;AAlHD,oDAAiF;AAGjF,iDAAuD;AAqBvD,SAAS,uBAAuB,CAC/B,MAAyB,EACzB,WAAgC;IAEhC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACxB,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAcD,SAAgB,gBAAgB,CAC/B,IAAY,EACZ,UAAmC,EAAE;IAGrC,MAAM,WAAW,GAAG,IAAA,oCAAqB,EAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAEtC,IAAI,CAAC;QAEJ,MAAM,OAAO,GAAG,IAAA,yCAA0B,EAAC,WAAW,CAAC,CAAC;QAGxD,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAE5B,MAAM,WAAW,GAAwB,EAAE,CAAC;QAG5C,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAChE,uBAAuB,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC7D,uBAAuB,CAAC,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAE/D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAK9C,MAAM,gBAAgB,GAAG,IAAA,+BAAgB,EAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACzF,uBAAuB,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC9D,uBAAuB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAEhE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACd,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC5F,CAAC;IACH,CAAC;AACF,CAAC;AAQD,SAAgB,iBAAiB,CAAC,QAA6B;IAK9D,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAE7E,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,MAAM,aAAa,GAAwB,EAAE,CAAC;IAE9C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACF,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;AAClC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
interface Patch {
|
|
2
|
-
old_str: string;
|
|
3
|
-
new_str: string;
|
|
4
|
-
}
|
|
5
|
-
interface PatchResult {
|
|
6
|
-
success: true;
|
|
7
|
-
code: string;
|
|
8
|
-
}
|
|
9
|
-
interface PatchError {
|
|
10
|
-
success: false;
|
|
11
|
-
error: string;
|
|
12
|
-
}
|
|
13
|
-
export declare function applyPatches(code: string, patches: Patch[]): PatchResult | PatchError;
|
|
14
|
-
export {};
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.applyPatches = applyPatches;
|
|
4
|
-
function normalizeWhitespace(s) {
|
|
5
|
-
return s.replace(/\s+/g, ' ').trim();
|
|
6
|
-
}
|
|
7
|
-
function normalizeTrimmedLines(s) {
|
|
8
|
-
return s
|
|
9
|
-
.split('\n')
|
|
10
|
-
.map((line) => line.trim())
|
|
11
|
-
.join('\n');
|
|
12
|
-
}
|
|
13
|
-
function fuzzyFind(haystack, needle, normalizer) {
|
|
14
|
-
const normalizedNeedle = normalizer(needle);
|
|
15
|
-
if (!normalizedNeedle)
|
|
16
|
-
return null;
|
|
17
|
-
const normalizedHaystack = normalizer(haystack);
|
|
18
|
-
const idx = normalizedHaystack.indexOf(normalizedNeedle);
|
|
19
|
-
if (idx === -1)
|
|
20
|
-
return null;
|
|
21
|
-
const ratio = haystack.length / Math.max(normalizedHaystack.length, 1);
|
|
22
|
-
const approxStart = Math.max(0, Math.floor(idx * ratio) - 50);
|
|
23
|
-
const approxEnd = Math.min(haystack.length, Math.ceil((idx + normalizedNeedle.length) * ratio) + 50);
|
|
24
|
-
for (let start = approxStart; start <= approxEnd; start++) {
|
|
25
|
-
for (let end = start + needle.length - 20; end <= Math.min(haystack.length, start + needle.length + 50); end++) {
|
|
26
|
-
const candidate = haystack.slice(start, end);
|
|
27
|
-
if (normalizer(candidate) === normalizedNeedle) {
|
|
28
|
-
return { start, end };
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
for (let start = 0; start < haystack.length; start++) {
|
|
33
|
-
for (let end = start + 1; end <= Math.min(haystack.length, start + needle.length * 2); end++) {
|
|
34
|
-
const candidate = haystack.slice(start, end);
|
|
35
|
-
if (normalizer(candidate) === normalizedNeedle) {
|
|
36
|
-
return { start, end };
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
function findMatch(code, needle) {
|
|
43
|
-
const exactIdx = code.indexOf(needle);
|
|
44
|
-
if (exactIdx !== -1) {
|
|
45
|
-
return { start: exactIdx, end: exactIdx + needle.length, strategy: 'exact' };
|
|
46
|
-
}
|
|
47
|
-
const wsMatch = fuzzyFind(code, needle, normalizeWhitespace);
|
|
48
|
-
if (wsMatch) {
|
|
49
|
-
return { ...wsMatch, strategy: 'whitespace-normalized' };
|
|
50
|
-
}
|
|
51
|
-
const trimMatch = fuzzyFind(code, needle, normalizeTrimmedLines);
|
|
52
|
-
if (trimMatch) {
|
|
53
|
-
return { ...trimMatch, strategy: 'trimmed-lines' };
|
|
54
|
-
}
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
function getContextForError(code, needle) {
|
|
58
|
-
const firstLine = needle.split('\n')[0].trim();
|
|
59
|
-
if (!firstLine)
|
|
60
|
-
return '';
|
|
61
|
-
const lines = code.split('\n');
|
|
62
|
-
let bestLineIdx = -1;
|
|
63
|
-
let bestScore = 0;
|
|
64
|
-
for (let i = 0; i < lines.length; i++) {
|
|
65
|
-
const line = lines[i].trim();
|
|
66
|
-
if (!line)
|
|
67
|
-
continue;
|
|
68
|
-
if (line.includes(firstLine) || firstLine.includes(line)) {
|
|
69
|
-
bestLineIdx = i;
|
|
70
|
-
bestScore = 100;
|
|
71
|
-
break;
|
|
72
|
-
}
|
|
73
|
-
const needleWords = new Set(firstLine.toLowerCase().split(/\W+/).filter(Boolean));
|
|
74
|
-
const lineWords = line.toLowerCase().split(/\W+/).filter(Boolean);
|
|
75
|
-
const overlap = lineWords.filter((w) => needleWords.has(w)).length;
|
|
76
|
-
if (overlap > bestScore) {
|
|
77
|
-
bestScore = overlap;
|
|
78
|
-
bestLineIdx = i;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
if (bestLineIdx === -1 || bestScore < 2)
|
|
82
|
-
return '';
|
|
83
|
-
const start = Math.max(0, bestLineIdx - 3);
|
|
84
|
-
const end = Math.min(lines.length, bestLineIdx + 4);
|
|
85
|
-
const context = lines
|
|
86
|
-
.slice(start, end)
|
|
87
|
-
.map((l, i) => {
|
|
88
|
-
const lineNum = start + i + 1;
|
|
89
|
-
const marker = start + i === bestLineIdx ? '> ' : ' ';
|
|
90
|
-
return `${marker}${lineNum}: ${l}`;
|
|
91
|
-
})
|
|
92
|
-
.join('\n');
|
|
93
|
-
return `\nNearest match in code around line ${bestLineIdx + 1}:\n${context}`;
|
|
94
|
-
}
|
|
95
|
-
function applyPatches(code, patches) {
|
|
96
|
-
let result = code;
|
|
97
|
-
for (const patch of patches) {
|
|
98
|
-
const match = findMatch(result, patch.old_str);
|
|
99
|
-
if (!match) {
|
|
100
|
-
const context = getContextForError(result, patch.old_str);
|
|
101
|
-
const truncated = patch.old_str.slice(0, 150) + (patch.old_str.length > 150 ? '...' : '');
|
|
102
|
-
return {
|
|
103
|
-
success: false,
|
|
104
|
-
error: 'Patch failed: could not find old_str in code.' +
|
|
105
|
-
'\nSearched for: "' +
|
|
106
|
-
truncated +
|
|
107
|
-
'"' +
|
|
108
|
-
'\nTried: exact match, whitespace-normalized, trimmed-lines.' +
|
|
109
|
-
(context || '\nNo similar code found nearby.') +
|
|
110
|
-
'\nTip: use get-workflow-as-code to see the exact current code, then match it precisely.',
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
result = result.slice(0, match.start) + patch.new_str + result.slice(match.end);
|
|
114
|
-
}
|
|
115
|
-
return { success: true, code: result };
|
|
116
|
-
}
|
|
117
|
-
//# sourceMappingURL=patch-code.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"patch-code.js","sourceRoot":"","sources":["../../src/workflow-builder/patch-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { WorkflowJSON } from '@n8n/workflow-sdk';
|
|
2
|
-
export interface ValidationWarning {
|
|
3
|
-
code: string;
|
|
4
|
-
message: string;
|
|
5
|
-
nodeName?: string;
|
|
6
|
-
parameterPath?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface ParseAndValidateResult {
|
|
9
|
-
workflow: WorkflowJSON;
|
|
10
|
-
warnings: ValidationWarning[];
|
|
11
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/workflow-builder/types.ts"],"names":[],"mappings":""}
|