n8n-nodes-autotask 2.25.1 → 2.26.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../nodes/Autotask/ai-tools/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,KAAK,EAAE,CAAC,IAAI,YAAY,EAAE,MAAM,KAAK,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,KAAK,yBAAyB,GAAG,KAAK,MAAM,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAC/C,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9D,KAAK,qBAAqB,CAAC;AAE5B,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC;AAE7C,KAAK,YAAY,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,gBAAgB,EAAE,oBAAoB,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../nodes/Autotask/ai-tools/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,KAAK,EAAE,CAAC,IAAI,YAAY,EAAE,MAAM,KAAK,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,KAAK,yBAAyB,GAAG,KAAK,MAAM,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAC/C,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9D,KAAK,qBAAqB,CAAC;AAE5B,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC;AAE7C,KAAK,YAAY,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,gBAAgB,EAAE,oBAAoB,KAAK,CAAC,CAAC;AAgM9E,wBAAgB,iBAAiB,IAAI,yBAAyB,CAY7D;AAED,wBAAgB,iBAAiB,IAAI,UAAU,CAW9C;AAED,wBAAgB,iBAAiB,IAAI,YAAY,GAAG,IAAI,CA0BvD;AAiBD,eAAO,MAAM,4BAA4B,EAAE,yBAYb,CAAC;AAE/B,eAAO,MAAM,UAAU,EAAE,UAaV,CAAC"}
|
|
@@ -4,42 +4,62 @@ exports.runtimeZod = exports.RuntimeDynamicStructuredTool = void 0;
|
|
|
4
4
|
exports.getLazyRuntimeDST = getLazyRuntimeDST;
|
|
5
5
|
exports.getLazyRuntimeZod = getLazyRuntimeZod;
|
|
6
6
|
exports.getLazyLogWrapper = getLazyLogWrapper;
|
|
7
|
+
// This package's own name, used only as a belt-and-suspenders skip in the
|
|
8
|
+
// require.cache walk so we never anchor a fallback resolution off our own
|
|
9
|
+
// bundled copy. It is NOT the correctness mechanism — anchor-package identity
|
|
10
|
+
// (below) is. See issue #111.
|
|
11
|
+
const OWN_PACKAGE_NAME = 'n8n-nodes-autotask';
|
|
12
|
+
// Anchor packages n8n owns (a community node never bundles these) used to reach
|
|
13
|
+
// n8n's DynamicStructuredTool. Anchoring on @n8n/n8n-nodes-langchain first is
|
|
14
|
+
// deliberate: it is the package whose normalizeToolSchema runs the
|
|
15
|
+
// `instanceof DynamicStructuredTool` check, and it is always resident in
|
|
16
|
+
// require.cache by the time supplyData() runs (n8n invokes the tool through it),
|
|
17
|
+
// so this anchor effectively always succeeds in a real invocation.
|
|
7
18
|
const ANCHOR_CANDIDATES = [
|
|
8
19
|
'@langchain/classic/agents',
|
|
9
20
|
'langchain/agents',
|
|
10
21
|
];
|
|
11
|
-
//
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
//
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
//
|
|
20
|
-
//
|
|
21
|
-
//
|
|
22
|
-
//
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
// require.cache key patterns matching n8n-owned trees. createRequire() from a
|
|
23
|
+
// module inside one of these trees walks n8n's real dependency graph to n8n's
|
|
24
|
+
// own copy of the target — independent of cache ordering and pnpm virtual-store
|
|
25
|
+
// path naming, which a bare-module-path match is not.
|
|
26
|
+
const LANGCHAIN_TREE_PATTERNS = [
|
|
27
|
+
/[\\/]@n8n[\\/]n8n-nodes-langchain[\\/]/,
|
|
28
|
+
/[\\/]@langchain[\\/]classic[\\/]/,
|
|
29
|
+
];
|
|
30
|
+
// zod anchors: @n8n/n8n-nodes-langchain first (its normalizeToolSchema does
|
|
31
|
+
// `instanceof ZodType` against n8n's TOP-LEVEL zod), then n8n's core packages.
|
|
32
|
+
// Deliberately NOT anchored on @langchain/classic — that reaches its *nested*
|
|
33
|
+
// zod copy, whose class identity fails n8n's top-level instanceof ZodType check.
|
|
34
|
+
const ZOD_TREE_PATTERNS = [
|
|
35
|
+
/[\\/]@n8n[\\/]n8n-nodes-langchain[\\/]/,
|
|
36
|
+
/[\\/]n8n-workflow[\\/]/,
|
|
37
|
+
/[\\/]n8n-core[\\/]/,
|
|
38
|
+
];
|
|
39
|
+
const AI_UTILITIES_TREE_PATTERNS = [
|
|
40
|
+
/[\\/]@n8n[\\/]ai-utilities[\\/]/,
|
|
41
|
+
/[\\/]@n8n[\\/]n8n-nodes-langchain[\\/]/,
|
|
42
|
+
];
|
|
43
|
+
// Host-anchor resolution: n8n's own module tree provides the exact
|
|
44
|
+
// DynamicStructuredTool/zod instances its Agent/MCP Trigger code checks
|
|
45
|
+
// `instanceof` against. Anchor on require.main (n8n's process entry point) so
|
|
46
|
+
// local devDependency copies never shadow n8n's own during development (npm
|
|
47
|
+
// link). require.main can be undefined under ESM launch / queue-mode workers;
|
|
48
|
+
// there is deliberately NO __filename fallback — anchoring off this module's own
|
|
49
|
+
// filename would resolve THIS package's bundled copy, whose class identity fails
|
|
50
|
+
// the host's instanceof checks. Returns null (never throws) so callers fall back
|
|
51
|
+
// to the identity-anchored require.cache walk (requireFromCachedTree) below.
|
|
52
|
+
// See: https://github.com/msoukhomlinov/n8n-nodes-autotask/issues/108, #111
|
|
53
|
+
function resolveAnchorRequire() {
|
|
26
54
|
var _a;
|
|
27
55
|
const { createRequire } = require('module');
|
|
28
56
|
const mainFile = (_a = require.main) === null || _a === void 0 ? void 0 : _a.filename;
|
|
29
|
-
if (mainFile)
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
try {
|
|
33
|
-
return createRequire(mainRequire.resolve(candidate));
|
|
34
|
-
}
|
|
35
|
-
catch {
|
|
36
|
-
// try next candidate / strategy
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
57
|
+
if (!mainFile)
|
|
58
|
+
return null;
|
|
59
|
+
const mainRequire = createRequire(mainFile);
|
|
40
60
|
for (const candidate of ANCHOR_CANDIDATES) {
|
|
41
61
|
try {
|
|
42
|
-
return createRequire(
|
|
62
|
+
return createRequire(mainRequire.resolve(candidate));
|
|
43
63
|
}
|
|
44
64
|
catch {
|
|
45
65
|
// try next candidate
|
|
@@ -47,34 +67,46 @@ function getRuntimeRequire() {
|
|
|
47
67
|
}
|
|
48
68
|
return null;
|
|
49
69
|
}
|
|
50
|
-
// Scans Node's process-global
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
//
|
|
70
|
+
// Identity-anchored require.cache fallback. Scans Node's process-global
|
|
71
|
+
// require.cache for an already-loaded module whose key sits inside an n8n-owned
|
|
72
|
+
// anchor tree, then createRequire()s the target dependency FROM that module's
|
|
73
|
+
// filename. This walks n8n's real dependency graph to n8n's own copy — unlike a
|
|
74
|
+
// bare-module-path match, which under pnpm's flat virtual store returns whatever
|
|
75
|
+
// copy happens to be first in cache (potentially another community node's
|
|
76
|
+
// private bundled copy, whose class identity fails instanceof).
|
|
54
77
|
//
|
|
55
|
-
//
|
|
56
|
-
//
|
|
57
|
-
// supplyData() on a connected sub-node, so by execution time those modules are
|
|
58
|
-
// guaranteed to be resident in the cache regardless of install layout — and scanning
|
|
59
|
-
// for them there returns the EXACT SAME class/namespace instance n8n itself uses,
|
|
60
|
-
// preserving instanceof compatibility that a locally-bundled copy could not.
|
|
78
|
+
// Patterns are tried in order (most authoritative anchor first), and within each
|
|
79
|
+
// pattern the first cache entry that yields a validate()-passing module wins.
|
|
61
80
|
//
|
|
62
|
-
// Must be called lazily (not at module load)
|
|
63
|
-
// before any workflow runs, i.e. before LangChain is
|
|
64
|
-
function
|
|
81
|
+
// Must be called lazily (not at module load): n8n registers node files for
|
|
82
|
+
// discovery before any workflow runs, i.e. before LangChain is in the cache.
|
|
83
|
+
function requireFromCachedTree(patterns, id, validate) {
|
|
65
84
|
try {
|
|
66
85
|
const cache = require.cache;
|
|
67
86
|
if (!cache)
|
|
68
87
|
return undefined;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
88
|
+
const { createRequire } = require('module');
|
|
89
|
+
const keys = Object.keys(cache);
|
|
90
|
+
for (const pattern of patterns) {
|
|
91
|
+
for (const key of keys) {
|
|
92
|
+
// Belt-and-suspenders: never anchor off our own bundled tree.
|
|
93
|
+
if (key.includes(OWN_PACKAGE_NAME))
|
|
94
|
+
continue;
|
|
95
|
+
if (!pattern.test(key))
|
|
96
|
+
continue;
|
|
97
|
+
const entry = cache[key];
|
|
98
|
+
if (!(entry === null || entry === void 0 ? void 0 : entry.filename))
|
|
99
|
+
continue;
|
|
100
|
+
try {
|
|
101
|
+
const mod = createRequire(entry.filename)(id);
|
|
102
|
+
const result = validate(mod);
|
|
103
|
+
if (result !== undefined)
|
|
104
|
+
return result;
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
// this anchor could not resolve the target — try next entry
|
|
108
|
+
}
|
|
109
|
+
}
|
|
78
110
|
}
|
|
79
111
|
}
|
|
80
112
|
catch {
|
|
@@ -82,42 +114,43 @@ function findCachedExports(pathPattern, validate) {
|
|
|
82
114
|
}
|
|
83
115
|
return undefined;
|
|
84
116
|
}
|
|
85
|
-
//
|
|
86
|
-
//
|
|
87
|
-
//
|
|
88
|
-
//
|
|
89
|
-
let
|
|
117
|
+
// All memoised on SUCCESS ONLY. A negative result must never latch: the anchor
|
|
118
|
+
// tree and cache are populated progressively during n8n startup, so a resolution
|
|
119
|
+
// that fails on an early call can succeed once n8n has finished loading its
|
|
120
|
+
// langchain-dependent nodes. Caching null would permanently disable that recovery.
|
|
121
|
+
let _anchorRequire;
|
|
90
122
|
let _RuntimeDST;
|
|
91
123
|
let _runtimeZod;
|
|
92
124
|
let _logWrapper;
|
|
93
|
-
function
|
|
94
|
-
if (
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
125
|
+
function getAnchorRequire() {
|
|
126
|
+
if (_anchorRequire)
|
|
127
|
+
return _anchorRequire;
|
|
128
|
+
const resolved = resolveAnchorRequire();
|
|
129
|
+
if (resolved)
|
|
130
|
+
_anchorRequire = resolved;
|
|
131
|
+
return resolved;
|
|
98
132
|
}
|
|
99
133
|
function resolveRuntimeDST() {
|
|
100
134
|
if (_RuntimeDST)
|
|
101
135
|
return _RuntimeDST;
|
|
102
|
-
const
|
|
103
|
-
if (
|
|
136
|
+
const anchorRequire = getAnchorRequire();
|
|
137
|
+
if (anchorRequire) {
|
|
104
138
|
try {
|
|
105
|
-
const coreTools =
|
|
139
|
+
const coreTools = anchorRequire('@langchain/core/tools');
|
|
106
140
|
if (typeof (coreTools === null || coreTools === void 0 ? void 0 : coreTools.DynamicStructuredTool) === 'function') {
|
|
107
141
|
_RuntimeDST = coreTools.DynamicStructuredTool;
|
|
108
142
|
return _RuntimeDST;
|
|
109
143
|
}
|
|
110
144
|
}
|
|
111
145
|
catch {
|
|
112
|
-
// fall through to cache
|
|
146
|
+
// fall through to identity-anchored cache walk
|
|
113
147
|
}
|
|
114
148
|
}
|
|
115
|
-
const cached =
|
|
116
|
-
?
|
|
149
|
+
const cached = requireFromCachedTree(LANGCHAIN_TREE_PATTERNS, '@langchain/core/tools', (mod) => typeof mod.DynamicStructuredTool === 'function'
|
|
150
|
+
? mod.DynamicStructuredTool
|
|
117
151
|
: undefined);
|
|
118
|
-
if (cached)
|
|
152
|
+
if (cached)
|
|
119
153
|
_RuntimeDST = cached;
|
|
120
|
-
}
|
|
121
154
|
return _RuntimeDST;
|
|
122
155
|
}
|
|
123
156
|
function resolveRuntimeZod() {
|
|
@@ -125,66 +158,53 @@ function resolveRuntimeZod() {
|
|
|
125
158
|
if (_runtimeZod)
|
|
126
159
|
return _runtimeZod;
|
|
127
160
|
// Primary path: n8n's top-level zod (the copy n8n-nodes-langchain's
|
|
128
|
-
// normalizeToolSchema uses for `instanceof ZodType`), resolved via require.main
|
|
129
|
-
// local devDependency copies never shadow it during development.
|
|
130
|
-
|
|
161
|
+
// normalizeToolSchema uses for `instanceof ZodType`), resolved via require.main
|
|
162
|
+
// so local devDependency copies never shadow it during development. No
|
|
163
|
+
// __filename fallback — that would resolve this package's own zod.
|
|
164
|
+
const { createRequire } = require('module');
|
|
131
165
|
const mainFile = (_a = require.main) === null || _a === void 0 ? void 0 : _a.filename;
|
|
132
166
|
if (mainFile) {
|
|
133
167
|
try {
|
|
134
|
-
|
|
135
|
-
if (
|
|
136
|
-
|
|
137
|
-
}
|
|
138
|
-
catch {
|
|
139
|
-
// fall through
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
const runtimeRequire = getResolvedRuntimeRequire();
|
|
143
|
-
if (runtimeRequire) {
|
|
144
|
-
try {
|
|
145
|
-
_runtimeZod = runtimeRequire('zod');
|
|
146
|
-
if (_runtimeZod)
|
|
168
|
+
const zod = createRequire(mainFile)('zod');
|
|
169
|
+
if (zod) {
|
|
170
|
+
_runtimeZod = zod;
|
|
147
171
|
return _runtimeZod;
|
|
172
|
+
}
|
|
148
173
|
}
|
|
149
174
|
catch {
|
|
150
|
-
// fall through to cache
|
|
175
|
+
// fall through to identity-anchored cache walk
|
|
151
176
|
}
|
|
152
177
|
}
|
|
153
|
-
//
|
|
154
|
-
//
|
|
155
|
-
//
|
|
156
|
-
//
|
|
157
|
-
//
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
// recovers n8n's top-level copy on most pnpm-isolated installs. If this scan path
|
|
161
|
-
// ever IS reached with multiple shape-valid zod copies resident, it returns the
|
|
162
|
-
// first cache match rather than a guaranteed-correct one — a real but low-probability
|
|
163
|
-
// residual risk, not an instance guarantee.
|
|
164
|
-
const cached = findCachedExports(/[\\/]zod[\\/](lib|dist|index|v3|v4)/, (exports) => typeof exports.ZodType === 'function' && typeof exports.object === 'function'
|
|
165
|
-
? exports
|
|
178
|
+
// Identity-anchored fallback. Deliberately NOT resolved through the
|
|
179
|
+
// @langchain/classic anchor require (that reaches its nested zod, which fails
|
|
180
|
+
// n8n's top-level instanceof ZodType). Anchor patterns are n8n-owned trees
|
|
181
|
+
// whose zod edge points at n8n's top-level copy. Validate the shape (ZodType
|
|
182
|
+
// and object are functions) rather than trusting the anchor alone.
|
|
183
|
+
const cached = requireFromCachedTree(ZOD_TREE_PATTERNS, 'zod', (mod) => typeof mod.ZodType === 'function' && typeof mod.object === 'function'
|
|
184
|
+
? mod
|
|
166
185
|
: undefined);
|
|
167
|
-
if (cached)
|
|
186
|
+
if (cached)
|
|
168
187
|
_runtimeZod = cached;
|
|
169
|
-
}
|
|
170
188
|
return _runtimeZod;
|
|
171
189
|
}
|
|
172
190
|
function getLazyRuntimeDST() {
|
|
173
191
|
const ctor = resolveRuntimeDST();
|
|
174
192
|
if (!ctor) {
|
|
175
|
-
throw new Error(`runtime.ts: Failed to resolve DynamicStructuredTool from
|
|
176
|
-
`
|
|
177
|
-
`
|
|
178
|
-
`
|
|
193
|
+
throw new Error(`runtime.ts: Failed to resolve DynamicStructuredTool from n8n's module tree ` +
|
|
194
|
+
`(require.main host-anchor) or from an n8n-owned tree in Node's require.cache ` +
|
|
195
|
+
`(pnpm-isolated fallback). instanceof DynamicStructuredTool checks would fail, ` +
|
|
196
|
+
`so resolution failed clean rather than returning a foreign-tree copy. ` +
|
|
197
|
+
`Ensure @n8n/n8n-nodes-langchain / @langchain/core is loaded in this n8n process.`);
|
|
179
198
|
}
|
|
180
199
|
return ctor;
|
|
181
200
|
}
|
|
182
201
|
function getLazyRuntimeZod() {
|
|
183
202
|
const zod = resolveRuntimeZod();
|
|
184
203
|
if (!zod) {
|
|
185
|
-
throw new Error(`runtime.ts: Failed to resolve zod from
|
|
186
|
-
`
|
|
187
|
-
`
|
|
204
|
+
throw new Error(`runtime.ts: Failed to resolve zod from n8n's module tree (require.main) or from ` +
|
|
205
|
+
`an n8n-owned tree in Node's require.cache (pnpm-isolated fallback). instanceof ` +
|
|
206
|
+
`ZodType checks would fail, so resolution failed clean rather than returning a ` +
|
|
207
|
+
`foreign-tree copy. Ensure zod is loaded in this n8n process.`);
|
|
188
208
|
}
|
|
189
209
|
return zod;
|
|
190
210
|
}
|
|
@@ -192,10 +212,10 @@ function getLazyLogWrapper() {
|
|
|
192
212
|
var _a, _b;
|
|
193
213
|
if (_logWrapper)
|
|
194
214
|
return _logWrapper;
|
|
195
|
-
const
|
|
196
|
-
if (
|
|
215
|
+
const anchorRequire = getAnchorRequire();
|
|
216
|
+
if (anchorRequire) {
|
|
197
217
|
try {
|
|
198
|
-
const aiUtils =
|
|
218
|
+
const aiUtils = anchorRequire('@n8n/ai-utilities');
|
|
199
219
|
const fn = (_a = aiUtils === null || aiUtils === void 0 ? void 0 : aiUtils.logWrapper) !== null && _a !== void 0 ? _a : (_b = aiUtils === null || aiUtils === void 0 ? void 0 : aiUtils.default) === null || _b === void 0 ? void 0 : _b.logWrapper;
|
|
200
220
|
if (typeof fn === 'function') {
|
|
201
221
|
_logWrapper = fn;
|
|
@@ -203,17 +223,19 @@ function getLazyLogWrapper() {
|
|
|
203
223
|
}
|
|
204
224
|
}
|
|
205
225
|
catch {
|
|
206
|
-
// fall through to cache
|
|
226
|
+
// fall through to identity-anchored cache walk
|
|
207
227
|
}
|
|
208
228
|
}
|
|
209
|
-
|
|
229
|
+
// @n8n/ai-utilities is n8n-owned and never bundled by a community node, so the
|
|
230
|
+
// same-identity bug does not apply here — this resolution is not a correctness
|
|
231
|
+
// risk. Uses the shared anchor helper purely for consistency.
|
|
232
|
+
const cached = requireFromCachedTree(AI_UTILITIES_TREE_PATTERNS, '@n8n/ai-utilities', (mod) => {
|
|
210
233
|
var _a, _b;
|
|
211
|
-
const fn = (_a =
|
|
234
|
+
const fn = (_a = mod.logWrapper) !== null && _a !== void 0 ? _a : (_b = mod.default) === null || _b === void 0 ? void 0 : _b.logWrapper;
|
|
212
235
|
return typeof fn === 'function' ? fn : undefined;
|
|
213
236
|
});
|
|
214
|
-
if (cached)
|
|
237
|
+
if (cached)
|
|
215
238
|
_logWrapper = cached;
|
|
216
|
-
}
|
|
217
239
|
return _logWrapper !== null && _logWrapper !== void 0 ? _logWrapper : null;
|
|
218
240
|
}
|
|
219
241
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../nodes/Autotask/ai-tools/runtime.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../nodes/Autotask/ai-tools/runtime.ts"],"names":[],"mappings":"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"}
|