n8n-mcp 2.17.5 → 2.17.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/data/nodes.db +0 -0
  2. package/dist/mcp/index.js +0 -0
  3. package/package.json +1 -1
  4. package/dist/mcp/absolute-minimal.d.ts +0 -4
  5. package/dist/mcp/absolute-minimal.d.ts.map +0 -1
  6. package/dist/mcp/absolute-minimal.js +0 -34
  7. package/dist/mcp/absolute-minimal.js.map +0 -1
  8. package/dist/mcp/fixed-protocol.d.ts +0 -17
  9. package/dist/mcp/fixed-protocol.d.ts.map +0 -1
  10. package/dist/mcp/fixed-protocol.js +0 -162
  11. package/dist/mcp/fixed-protocol.js.map +0 -1
  12. package/dist/mcp/handlers-documentation.d.ts +0 -18
  13. package/dist/mcp/handlers-documentation.d.ts.map +0 -1
  14. package/dist/mcp/handlers-documentation.js +0 -113
  15. package/dist/mcp/handlers-documentation.js.map +0 -1
  16. package/dist/mcp/minimal-test.d.ts +0 -3
  17. package/dist/mcp/minimal-test.d.ts.map +0 -1
  18. package/dist/mcp/minimal-test.js +0 -83
  19. package/dist/mcp/minimal-test.js.map +0 -1
  20. package/dist/mcp/stderr-test.d.ts +0 -2
  21. package/dist/mcp/stderr-test.d.ts.map +0 -1
  22. package/dist/mcp/stderr-test.js +0 -32
  23. package/dist/mcp/stderr-test.js.map +0 -1
  24. package/dist/mcp/tool-docs/special/code-node-guide.d.ts +0 -3
  25. package/dist/mcp/tool-docs/special/code-node-guide.d.ts.map +0 -1
  26. package/dist/mcp/tool-docs/special/code-node-guide.js +0 -61
  27. package/dist/mcp/tool-docs/special/code-node-guide.js.map +0 -1
  28. package/dist/mcp/tool-docs/special/index.d.ts +0 -2
  29. package/dist/mcp/tool-docs/special/index.d.ts.map +0 -1
  30. package/dist/mcp/tool-docs/special/index.js +0 -6
  31. package/dist/mcp/tool-docs/special/index.js.map +0 -1
  32. package/dist/mcp/tool-docs/templates/get-node-for-task.d.ts +0 -3
  33. package/dist/mcp/tool-docs/templates/get-node-for-task.d.ts.map +0 -1
  34. package/dist/mcp/tool-docs/templates/get-node-for-task.js +0 -50
  35. package/dist/mcp/tool-docs/templates/get-node-for-task.js.map +0 -1
  36. package/dist/mcp/tools-documentation-new.d.ts +0 -6
  37. package/dist/mcp/tools-documentation-new.d.ts.map +0 -1
  38. package/dist/mcp/tools-documentation-new.js +0 -163
  39. package/dist/mcp/tools-documentation-new.js.map +0 -1
  40. package/dist/mcp/ultra-minimal.d.ts +0 -8
  41. package/dist/mcp/ultra-minimal.d.ts.map +0 -1
  42. package/dist/mcp/ultra-minimal.js +0 -93
  43. package/dist/mcp/ultra-minimal.js.map +0 -1
  44. package/dist/mcp/working-test.d.ts +0 -3
  45. package/dist/mcp/working-test.d.ts.map +0 -1
  46. package/dist/mcp/working-test.js +0 -48
  47. package/dist/mcp/working-test.js.map +0 -1
  48. package/dist/mcp/wrapper.sh +0 -28
  49. package/dist/scripts/debug-n8n-auth.d.ts +0 -3
  50. package/dist/scripts/debug-n8n-auth.d.ts.map +0 -1
  51. package/dist/scripts/debug-n8n-auth.js +0 -97
  52. package/dist/scripts/debug-n8n-auth.js.map +0 -1
  53. package/dist/scripts/debug-node.d.ts +0 -3
  54. package/dist/scripts/debug-node.d.ts.map +0 -1
  55. package/dist/scripts/debug-node.js +0 -59
  56. package/dist/scripts/debug-node.js.map +0 -1
  57. package/dist/scripts/generate-metadata-only.d.ts +0 -3
  58. package/dist/scripts/generate-metadata-only.d.ts.map +0 -1
  59. package/dist/scripts/generate-metadata-only.js +0 -146
  60. package/dist/scripts/generate-metadata-only.js.map +0 -1
  61. package/dist/scripts/generate-metadata-sync.d.ts +0 -3
  62. package/dist/scripts/generate-metadata-sync.d.ts.map +0 -1
  63. package/dist/scripts/generate-metadata-sync.js +0 -136
  64. package/dist/scripts/generate-metadata-sync.js.map +0 -1
  65. package/dist/scripts/test-ai-workflow-validation.d.ts +0 -3
  66. package/dist/scripts/test-ai-workflow-validation.d.ts.map +0 -1
  67. package/dist/scripts/test-ai-workflow-validation.js +0 -191
  68. package/dist/scripts/test-ai-workflow-validation.js.map +0 -1
  69. package/dist/scripts/test-api-headers.d.ts +0 -3
  70. package/dist/scripts/test-api-headers.d.ts.map +0 -1
  71. package/dist/scripts/test-api-headers.js +0 -35
  72. package/dist/scripts/test-api-headers.js.map +0 -1
  73. package/dist/scripts/test-batch-processing.d.ts +0 -3
  74. package/dist/scripts/test-batch-processing.d.ts.map +0 -1
  75. package/dist/scripts/test-batch-processing.js +0 -144
  76. package/dist/scripts/test-batch-processing.js.map +0 -1
  77. package/dist/scripts/test-docker-config-simulation.d.ts +0 -3
  78. package/dist/scripts/test-docker-config-simulation.d.ts.map +0 -1
  79. package/dist/scripts/test-docker-config-simulation.js +0 -74
  80. package/dist/scripts/test-docker-config-simulation.js.map +0 -1
  81. package/dist/scripts/test-enhanced-validation.d.ts +0 -3
  82. package/dist/scripts/test-enhanced-validation.d.ts.map +0 -1
  83. package/dist/scripts/test-enhanced-validation.js +0 -117
  84. package/dist/scripts/test-enhanced-validation.js.map +0 -1
  85. package/dist/scripts/test-error-handling-validation.d.ts +0 -3
  86. package/dist/scripts/test-error-handling-validation.d.ts.map +0 -1
  87. package/dist/scripts/test-error-handling-validation.js +0 -340
  88. package/dist/scripts/test-error-handling-validation.js.map +0 -1
  89. package/dist/scripts/test-issue-45-fix.d.ts +0 -3
  90. package/dist/scripts/test-issue-45-fix.d.ts.map +0 -1
  91. package/dist/scripts/test-issue-45-fix.js +0 -136
  92. package/dist/scripts/test-issue-45-fix.js.map +0 -1
  93. package/dist/scripts/test-issue-74.d.ts +0 -3
  94. package/dist/scripts/test-issue-74.d.ts.map +0 -1
  95. package/dist/scripts/test-issue-74.js +0 -112
  96. package/dist/scripts/test-issue-74.js.map +0 -1
  97. package/dist/scripts/test-lazy-config.d.ts +0 -3
  98. package/dist/scripts/test-lazy-config.d.ts.map +0 -1
  99. package/dist/scripts/test-lazy-config.js +0 -60
  100. package/dist/scripts/test-lazy-config.js.map +0 -1
  101. package/dist/scripts/test-limited-results.d.ts +0 -3
  102. package/dist/scripts/test-limited-results.d.ts.map +0 -1
  103. package/dist/scripts/test-limited-results.js +0 -76
  104. package/dist/scripts/test-limited-results.js.map +0 -1
  105. package/dist/scripts/test-mcp-n8n-update-partial.d.ts +0 -3
  106. package/dist/scripts/test-mcp-n8n-update-partial.d.ts.map +0 -1
  107. package/dist/scripts/test-mcp-n8n-update-partial.js +0 -138
  108. package/dist/scripts/test-mcp-n8n-update-partial.js.map +0 -1
  109. package/dist/scripts/test-mcp-tools.d.ts +0 -3
  110. package/dist/scripts/test-mcp-tools.d.ts.map +0 -1
  111. package/dist/scripts/test-mcp-tools.js +0 -36
  112. package/dist/scripts/test-mcp-tools.js.map +0 -1
  113. package/dist/scripts/test-metadata-generation.d.ts +0 -3
  114. package/dist/scripts/test-metadata-generation.d.ts.map +0 -1
  115. package/dist/scripts/test-metadata-generation.js +0 -96
  116. package/dist/scripts/test-metadata-generation.js.map +0 -1
  117. package/dist/scripts/test-n8n-manager-integration.d.ts +0 -3
  118. package/dist/scripts/test-n8n-manager-integration.d.ts.map +0 -1
  119. package/dist/scripts/test-n8n-manager-integration.js +0 -122
  120. package/dist/scripts/test-n8n-manager-integration.js.map +0 -1
  121. package/dist/scripts/test-n8n-validate-workflow.d.ts +0 -3
  122. package/dist/scripts/test-n8n-validate-workflow.d.ts.map +0 -1
  123. package/dist/scripts/test-n8n-validate-workflow.js +0 -125
  124. package/dist/scripts/test-n8n-validate-workflow.js.map +0 -1
  125. package/dist/scripts/test-node-level-properties.d.ts +0 -3
  126. package/dist/scripts/test-node-level-properties.d.ts.map +0 -1
  127. package/dist/scripts/test-node-level-properties.js +0 -196
  128. package/dist/scripts/test-node-level-properties.js.map +0 -1
  129. package/dist/scripts/test-nodes.d.ts +0 -3
  130. package/dist/scripts/test-nodes.d.ts.map +0 -1
  131. package/dist/scripts/test-nodes.js +0 -91
  132. package/dist/scripts/test-nodes.js.map +0 -1
  133. package/dist/scripts/test-single-workflow.d.ts +0 -3
  134. package/dist/scripts/test-single-workflow.d.ts.map +0 -1
  135. package/dist/scripts/test-single-workflow.js +0 -112
  136. package/dist/scripts/test-single-workflow.js.map +0 -1
  137. package/dist/scripts/test-template-validation.d.ts +0 -3
  138. package/dist/scripts/test-template-validation.d.ts.map +0 -1
  139. package/dist/scripts/test-template-validation.js +0 -142
  140. package/dist/scripts/test-template-validation.js.map +0 -1
  141. package/dist/scripts/test-templates.d.ts +0 -4
  142. package/dist/scripts/test-templates.d.ts.map +0 -1
  143. package/dist/scripts/test-templates.js +0 -99
  144. package/dist/scripts/test-templates.js.map +0 -1
  145. package/dist/scripts/test-tools-documentation.d.ts +0 -2
  146. package/dist/scripts/test-tools-documentation.d.ts.map +0 -1
  147. package/dist/scripts/test-tools-documentation.js +0 -41
  148. package/dist/scripts/test-tools-documentation.js.map +0 -1
  149. package/dist/scripts/test-transactional-diff.d.ts +0 -2
  150. package/dist/scripts/test-transactional-diff.d.ts.map +0 -1
  151. package/dist/scripts/test-transactional-diff.js +0 -240
  152. package/dist/scripts/test-transactional-diff.js.map +0 -1
  153. package/dist/scripts/test-update-partial-debug.d.ts +0 -3
  154. package/dist/scripts/test-update-partial-debug.d.ts.map +0 -1
  155. package/dist/scripts/test-update-partial-debug.js +0 -92
  156. package/dist/scripts/test-update-partial-debug.js.map +0 -1
  157. package/dist/scripts/test-updatenode-null-fix.d.ts +0 -3
  158. package/dist/scripts/test-updatenode-null-fix.d.ts.map +0 -1
  159. package/dist/scripts/test-updatenode-null-fix.js +0 -156
  160. package/dist/scripts/test-updatenode-null-fix.js.map +0 -1
  161. package/dist/scripts/test-validation-parity.d.ts +0 -2
  162. package/dist/scripts/test-validation-parity.d.ts.map +0 -1
  163. package/dist/scripts/test-validation-parity.js +0 -153
  164. package/dist/scripts/test-validation-parity.js.map +0 -1
  165. package/dist/scripts/test-version-extraction.d.ts +0 -2
  166. package/dist/scripts/test-version-extraction.d.ts.map +0 -1
  167. package/dist/scripts/test-version-extraction.js +0 -74
  168. package/dist/scripts/test-version-extraction.js.map +0 -1
  169. package/dist/scripts/test-workflow-diff.d.ts +0 -3
  170. package/dist/scripts/test-workflow-diff.d.ts.map +0 -1
  171. package/dist/scripts/test-workflow-diff.js +0 -328
  172. package/dist/scripts/test-workflow-diff.js.map +0 -1
  173. package/dist/scripts/test-workflow-validation.d.ts +0 -3
  174. package/dist/scripts/test-workflow-validation.d.ts.map +0 -1
  175. package/dist/scripts/test-workflow-validation.js +0 -238
  176. package/dist/scripts/test-workflow-validation.js.map +0 -1
  177. package/dist/services/workflow-ownership.d.ts +0 -35
  178. package/dist/services/workflow-ownership.d.ts.map +0 -1
  179. package/dist/services/workflow-ownership.js +0 -195
  180. package/dist/services/workflow-ownership.js.map +0 -1
  181. package/dist/sse-server.d.ts +0 -8
  182. package/dist/sse-server.d.ts.map +0 -1
  183. package/dist/sse-server.js +0 -652
  184. package/dist/sse-server.js.map +0 -1
  185. package/dist/types/sse.d.ts +0 -42
  186. package/dist/types/sse.d.ts.map +0 -1
  187. package/dist/types/sse.js +0 -3
  188. package/dist/types/sse.js.map +0 -1
  189. package/dist/utils/sse-session-manager.d.ts +0 -23
  190. package/dist/utils/sse-session-manager.d.ts.map +0 -1
  191. package/dist/utils/sse-session-manager.js +0 -178
  192. package/dist/utils/sse-session-manager.js.map +0 -1
  193. package/dist/utils/version-utils.d.ts +0 -16
  194. package/dist/utils/version-utils.d.ts.map +0 -1
  195. package/dist/utils/version-utils.js +0 -129
  196. package/dist/utils/version-utils.js.map +0 -1
@@ -1,328 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const workflow_diff_engine_1 = require("../services/workflow-diff-engine");
5
- const logger_1 = require("../utils/logger");
6
- const logger = new logger_1.Logger({ prefix: '[test-workflow-diff]' });
7
- const sampleWorkflow = {
8
- id: 'test-workflow-123',
9
- name: 'Test Workflow',
10
- nodes: [
11
- {
12
- id: 'webhook_1',
13
- name: 'Webhook',
14
- type: 'n8n-nodes-base.webhook',
15
- typeVersion: 1.1,
16
- position: [200, 200],
17
- parameters: {
18
- path: 'test-webhook',
19
- method: 'GET'
20
- }
21
- },
22
- {
23
- id: 'set_1',
24
- name: 'Set',
25
- type: 'n8n-nodes-base.set',
26
- typeVersion: 3,
27
- position: [400, 200],
28
- parameters: {
29
- mode: 'manual',
30
- fields: {
31
- values: [
32
- { name: 'message', value: 'Hello World' }
33
- ]
34
- }
35
- }
36
- }
37
- ],
38
- connections: {
39
- 'Webhook': {
40
- main: [[{ node: 'Set', type: 'main', index: 0 }]]
41
- }
42
- },
43
- settings: {
44
- executionOrder: 'v1',
45
- saveDataSuccessExecution: 'all'
46
- },
47
- tags: ['test', 'demo']
48
- };
49
- async function testAddNode() {
50
- console.log('\n=== Testing Add Node Operation ===');
51
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
52
- const request = {
53
- id: 'test-workflow-123',
54
- operations: [
55
- {
56
- type: 'addNode',
57
- description: 'Add HTTP Request node',
58
- node: {
59
- name: 'HTTP Request',
60
- type: 'n8n-nodes-base.httpRequest',
61
- position: [600, 200],
62
- parameters: {
63
- url: 'https://api.example.com/data',
64
- method: 'GET'
65
- }
66
- }
67
- }
68
- ]
69
- };
70
- const result = await engine.applyDiff(sampleWorkflow, request);
71
- if (result.success) {
72
- console.log('✅ Add node successful');
73
- console.log(` - Nodes count: ${result.workflow.nodes.length}`);
74
- console.log(` - New node: ${result.workflow.nodes[2].name}`);
75
- }
76
- else {
77
- console.error('❌ Add node failed:', result.errors);
78
- }
79
- }
80
- async function testRemoveNode() {
81
- console.log('\n=== Testing Remove Node Operation ===');
82
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
83
- const request = {
84
- id: 'test-workflow-123',
85
- operations: [
86
- {
87
- type: 'removeNode',
88
- description: 'Remove Set node',
89
- nodeName: 'Set'
90
- }
91
- ]
92
- };
93
- const result = await engine.applyDiff(sampleWorkflow, request);
94
- if (result.success) {
95
- console.log('✅ Remove node successful');
96
- console.log(` - Nodes count: ${result.workflow.nodes.length}`);
97
- console.log(` - Connections cleaned: ${Object.keys(result.workflow.connections).length}`);
98
- }
99
- else {
100
- console.error('❌ Remove node failed:', result.errors);
101
- }
102
- }
103
- async function testUpdateNode() {
104
- console.log('\n=== Testing Update Node Operation ===');
105
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
106
- const request = {
107
- id: 'test-workflow-123',
108
- operations: [
109
- {
110
- type: 'updateNode',
111
- description: 'Update webhook path',
112
- nodeName: 'Webhook',
113
- changes: {
114
- 'parameters.path': 'new-webhook-path',
115
- 'parameters.method': 'POST'
116
- }
117
- }
118
- ]
119
- };
120
- const result = await engine.applyDiff(sampleWorkflow, request);
121
- if (result.success) {
122
- console.log('✅ Update node successful');
123
- const updatedNode = result.workflow.nodes.find((n) => n.name === 'Webhook');
124
- console.log(` - New path: ${updatedNode.parameters.path}`);
125
- console.log(` - New method: ${updatedNode.parameters.method}`);
126
- }
127
- else {
128
- console.error('❌ Update node failed:', result.errors);
129
- }
130
- }
131
- async function testAddConnection() {
132
- console.log('\n=== Testing Add Connection Operation ===');
133
- const workflowWithExtraNode = JSON.parse(JSON.stringify(sampleWorkflow));
134
- workflowWithExtraNode.nodes.push({
135
- id: 'email_1',
136
- name: 'Send Email',
137
- type: 'n8n-nodes-base.emailSend',
138
- typeVersion: 2,
139
- position: [600, 200],
140
- parameters: {}
141
- });
142
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
143
- const request = {
144
- id: 'test-workflow-123',
145
- operations: [
146
- {
147
- type: 'addConnection',
148
- description: 'Connect Set to Send Email',
149
- source: 'Set',
150
- target: 'Send Email'
151
- }
152
- ]
153
- };
154
- const result = await engine.applyDiff(workflowWithExtraNode, request);
155
- if (result.success) {
156
- console.log('✅ Add connection successful');
157
- const setConnections = result.workflow.connections['Set'];
158
- console.log(` - Connection added: ${JSON.stringify(setConnections)}`);
159
- }
160
- else {
161
- console.error('❌ Add connection failed:', result.errors);
162
- }
163
- }
164
- async function testMultipleOperations() {
165
- console.log('\n=== Testing Multiple Operations ===');
166
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
167
- const request = {
168
- id: 'test-workflow-123',
169
- operations: [
170
- {
171
- type: 'updateName',
172
- name: 'Updated Test Workflow'
173
- },
174
- {
175
- type: 'addNode',
176
- node: {
177
- name: 'If',
178
- type: 'n8n-nodes-base.if',
179
- position: [400, 400],
180
- parameters: {}
181
- }
182
- },
183
- {
184
- type: 'disableNode',
185
- nodeName: 'Set'
186
- },
187
- {
188
- type: 'addTag',
189
- tag: 'updated'
190
- }
191
- ]
192
- };
193
- const result = await engine.applyDiff(sampleWorkflow, request);
194
- if (result.success) {
195
- console.log('✅ Multiple operations successful');
196
- console.log(` - New name: ${result.workflow.name}`);
197
- console.log(` - Operations applied: ${result.operationsApplied}`);
198
- console.log(` - Node count: ${result.workflow.nodes.length}`);
199
- console.log(` - Tags: ${result.workflow.tags?.join(', ')}`);
200
- }
201
- else {
202
- console.error('❌ Multiple operations failed:', result.errors);
203
- }
204
- }
205
- async function testValidationOnly() {
206
- console.log('\n=== Testing Validation Only ===');
207
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
208
- const request = {
209
- id: 'test-workflow-123',
210
- operations: [
211
- {
212
- type: 'addNode',
213
- node: {
214
- name: 'Webhook',
215
- type: 'n8n-nodes-base.webhook',
216
- position: [600, 400]
217
- }
218
- }
219
- ],
220
- validateOnly: true
221
- };
222
- const result = await engine.applyDiff(sampleWorkflow, request);
223
- console.log(` - Validation result: ${result.success ? '✅ Valid' : '❌ Invalid'}`);
224
- if (!result.success) {
225
- console.log(` - Error: ${result.errors[0].message}`);
226
- }
227
- else {
228
- console.log(` - Message: ${result.message}`);
229
- }
230
- }
231
- async function testInvalidOperations() {
232
- console.log('\n=== Testing Invalid Operations ===');
233
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
234
- console.log('\n1. Testing invalid node type:');
235
- let result = await engine.applyDiff(sampleWorkflow, {
236
- id: 'test-workflow-123',
237
- operations: [{
238
- type: 'addNode',
239
- node: {
240
- name: 'Bad Node',
241
- type: 'webhook',
242
- position: [600, 400]
243
- }
244
- }]
245
- });
246
- console.log(` - Result: ${result.success ? '✅' : '❌'} ${result.errors?.[0]?.message || 'Success'}`);
247
- console.log('\n2. Testing remove non-existent node:');
248
- result = await engine.applyDiff(sampleWorkflow, {
249
- id: 'test-workflow-123',
250
- operations: [{
251
- type: 'removeNode',
252
- nodeName: 'Non Existent Node'
253
- }]
254
- });
255
- console.log(` - Result: ${result.success ? '✅' : '❌'} ${result.errors?.[0]?.message || 'Success'}`);
256
- console.log('\n3. Testing invalid connection:');
257
- result = await engine.applyDiff(sampleWorkflow, {
258
- id: 'test-workflow-123',
259
- operations: [{
260
- type: 'addConnection',
261
- source: 'Webhook',
262
- target: 'Non Existent Node'
263
- }]
264
- });
265
- console.log(` - Result: ${result.success ? '✅' : '❌'} ${result.errors?.[0]?.message || 'Success'}`);
266
- }
267
- async function testNodeReferenceByIdAndName() {
268
- console.log('\n=== Testing Node Reference by ID and Name ===');
269
- const engine = new workflow_diff_engine_1.WorkflowDiffEngine();
270
- console.log('\n1. Update node by ID:');
271
- let result = await engine.applyDiff(sampleWorkflow, {
272
- id: 'test-workflow-123',
273
- operations: [{
274
- type: 'updateNode',
275
- nodeId: 'webhook_1',
276
- changes: {
277
- 'parameters.path': 'updated-by-id'
278
- }
279
- }]
280
- });
281
- if (result.success) {
282
- const node = result.workflow.nodes.find((n) => n.id === 'webhook_1');
283
- console.log(` - ✅ Success: path = ${node.parameters.path}`);
284
- }
285
- else {
286
- console.log(` - ❌ Failed: ${result.errors[0].message}`);
287
- }
288
- console.log('\n2. Update node by name:');
289
- result = await engine.applyDiff(sampleWorkflow, {
290
- id: 'test-workflow-123',
291
- operations: [{
292
- type: 'updateNode',
293
- nodeName: 'Webhook',
294
- changes: {
295
- 'parameters.path': 'updated-by-name'
296
- }
297
- }]
298
- });
299
- if (result.success) {
300
- const node = result.workflow.nodes.find((n) => n.name === 'Webhook');
301
- console.log(` - ✅ Success: path = ${node.parameters.path}`);
302
- }
303
- else {
304
- console.log(` - ❌ Failed: ${result.errors[0].message}`);
305
- }
306
- }
307
- async function runTests() {
308
- try {
309
- console.log('🧪 Running Workflow Diff Engine Tests...\n');
310
- await testAddNode();
311
- await testRemoveNode();
312
- await testUpdateNode();
313
- await testAddConnection();
314
- await testMultipleOperations();
315
- await testValidationOnly();
316
- await testInvalidOperations();
317
- await testNodeReferenceByIdAndName();
318
- console.log('\n✅ All tests completed!');
319
- }
320
- catch (error) {
321
- console.error('\n❌ Test failed with error:', error);
322
- process.exit(1);
323
- }
324
- }
325
- if (require.main === module) {
326
- runTests();
327
- }
328
- //# sourceMappingURL=test-workflow-diff.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-workflow-diff.js","sourceRoot":"","sources":["../../src/scripts/test-workflow-diff.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=test-workflow-validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-workflow-validation.d.ts","sourceRoot":"","sources":["../../src/scripts/test-workflow-validation.ts"],"names":[],"mappings":""}
@@ -1,238 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- const fs_1 = require("fs");
8
- const path_1 = __importDefault(require("path"));
9
- const node_repository_1 = require("../database/node-repository");
10
- const database_adapter_1 = require("../database/database-adapter");
11
- const workflow_validator_1 = require("../services/workflow-validator");
12
- const enhanced_config_validator_1 = require("../services/enhanced-config-validator");
13
- const logger_1 = require("../utils/logger");
14
- const logger = new logger_1.Logger({ prefix: '[test-workflow-validation]' });
15
- const VALID_WORKFLOW = {
16
- name: 'Test Valid Workflow',
17
- nodes: [
18
- {
19
- id: '1',
20
- name: 'Schedule Trigger',
21
- type: 'nodes-base.scheduleTrigger',
22
- position: [250, 300],
23
- parameters: {
24
- rule: {
25
- interval: [{ field: 'hours', hoursInterval: 1 }]
26
- }
27
- }
28
- },
29
- {
30
- id: '2',
31
- name: 'HTTP Request',
32
- type: 'nodes-base.httpRequest',
33
- position: [450, 300],
34
- parameters: {
35
- url: 'https://api.example.com/data',
36
- method: 'GET'
37
- }
38
- },
39
- {
40
- id: '3',
41
- name: 'Set',
42
- type: 'nodes-base.set',
43
- position: [650, 300],
44
- parameters: {
45
- values: {
46
- string: [
47
- {
48
- name: 'status',
49
- value: '={{ $json.status }}'
50
- }
51
- ]
52
- }
53
- }
54
- }
55
- ],
56
- connections: {
57
- 'Schedule Trigger': {
58
- main: [[{ node: 'HTTP Request', type: 'main', index: 0 }]]
59
- },
60
- 'HTTP Request': {
61
- main: [[{ node: 'Set', type: 'main', index: 0 }]]
62
- }
63
- }
64
- };
65
- const WORKFLOW_WITH_CYCLE = {
66
- name: 'Workflow with Cycle',
67
- nodes: [
68
- {
69
- id: '1',
70
- name: 'Start',
71
- type: 'nodes-base.start',
72
- position: [250, 300],
73
- parameters: {}
74
- },
75
- {
76
- id: '2',
77
- name: 'Node A',
78
- type: 'nodes-base.set',
79
- position: [450, 300],
80
- parameters: { values: { string: [] } }
81
- },
82
- {
83
- id: '3',
84
- name: 'Node B',
85
- type: 'nodes-base.set',
86
- position: [650, 300],
87
- parameters: { values: { string: [] } }
88
- }
89
- ],
90
- connections: {
91
- 'Start': {
92
- main: [[{ node: 'Node A', type: 'main', index: 0 }]]
93
- },
94
- 'Node A': {
95
- main: [[{ node: 'Node B', type: 'main', index: 0 }]]
96
- },
97
- 'Node B': {
98
- main: [[{ node: 'Node A', type: 'main', index: 0 }]]
99
- }
100
- }
101
- };
102
- const WORKFLOW_WITH_INVALID_EXPRESSION = {
103
- name: 'Workflow with Invalid Expression',
104
- nodes: [
105
- {
106
- id: '1',
107
- name: 'Webhook',
108
- type: 'nodes-base.webhook',
109
- position: [250, 300],
110
- parameters: {
111
- path: 'test-webhook'
112
- }
113
- },
114
- {
115
- id: '2',
116
- name: 'Set Data',
117
- type: 'nodes-base.set',
118
- position: [450, 300],
119
- parameters: {
120
- values: {
121
- string: [
122
- {
123
- name: 'invalidExpression',
124
- value: '={{ json.field }}'
125
- },
126
- {
127
- name: 'nestedExpression',
128
- value: '={{ {{ $json.field }} }}'
129
- },
130
- {
131
- name: 'nodeReference',
132
- value: '={{ $node["Non Existent Node"].json.data }}'
133
- }
134
- ]
135
- }
136
- }
137
- }
138
- ],
139
- connections: {
140
- 'Webhook': {
141
- main: [[{ node: 'Set Data', type: 'main', index: 0 }]]
142
- }
143
- }
144
- };
145
- const WORKFLOW_WITH_ORPHANED_NODE = {
146
- name: 'Workflow with Orphaned Node',
147
- nodes: [
148
- {
149
- id: '1',
150
- name: 'Schedule Trigger',
151
- type: 'nodes-base.scheduleTrigger',
152
- position: [250, 300],
153
- parameters: {
154
- rule: { interval: [{ field: 'hours', hoursInterval: 1 }] }
155
- }
156
- },
157
- {
158
- id: '2',
159
- name: 'HTTP Request',
160
- type: 'nodes-base.httpRequest',
161
- position: [450, 300],
162
- parameters: {
163
- url: 'https://api.example.com',
164
- method: 'GET'
165
- }
166
- },
167
- {
168
- id: '3',
169
- name: 'Orphaned Node',
170
- type: 'nodes-base.set',
171
- position: [450, 500],
172
- parameters: {
173
- values: { string: [] }
174
- }
175
- }
176
- ],
177
- connections: {
178
- 'Schedule Trigger': {
179
- main: [[{ node: 'HTTP Request', type: 'main', index: 0 }]]
180
- }
181
- }
182
- };
183
- async function testWorkflowValidation() {
184
- logger.info('Starting workflow validation tests...\n');
185
- const dbPath = path_1.default.join(process.cwd(), 'data', 'nodes.db');
186
- if (!(0, fs_1.existsSync)(dbPath)) {
187
- logger.error('Database not found. Run npm run rebuild first.');
188
- process.exit(1);
189
- }
190
- const db = await (0, database_adapter_1.createDatabaseAdapter)(dbPath);
191
- const repository = new node_repository_1.NodeRepository(db);
192
- const validator = new workflow_validator_1.WorkflowValidator(repository, enhanced_config_validator_1.EnhancedConfigValidator);
193
- logger.info('Test 1: Validating a valid workflow');
194
- const validResult = await validator.validateWorkflow(VALID_WORKFLOW);
195
- console.log('Valid workflow result:', JSON.stringify(validResult, null, 2));
196
- console.log('---\n');
197
- logger.info('Test 2: Validating workflow with cycle');
198
- const cycleResult = await validator.validateWorkflow(WORKFLOW_WITH_CYCLE);
199
- console.log('Cycle workflow result:', JSON.stringify(cycleResult, null, 2));
200
- console.log('---\n');
201
- logger.info('Test 3: Validating workflow with invalid expressions');
202
- const expressionResult = await validator.validateWorkflow(WORKFLOW_WITH_INVALID_EXPRESSION);
203
- console.log('Invalid expression result:', JSON.stringify(expressionResult, null, 2));
204
- console.log('---\n');
205
- logger.info('Test 4: Validating workflow with orphaned node');
206
- const orphanedResult = await validator.validateWorkflow(WORKFLOW_WITH_ORPHANED_NODE);
207
- console.log('Orphaned node result:', JSON.stringify(orphanedResult, null, 2));
208
- console.log('---\n');
209
- logger.info('Test 5: Testing connection-only validation');
210
- const connectionOnlyResult = await validator.validateWorkflow(WORKFLOW_WITH_CYCLE, {
211
- validateNodes: false,
212
- validateConnections: true,
213
- validateExpressions: false
214
- });
215
- console.log('Connection-only result:', JSON.stringify(connectionOnlyResult, null, 2));
216
- console.log('---\n');
217
- logger.info('Test 6: Testing expression-only validation');
218
- const expressionOnlyResult = await validator.validateWorkflow(WORKFLOW_WITH_INVALID_EXPRESSION, {
219
- validateNodes: false,
220
- validateConnections: false,
221
- validateExpressions: true
222
- });
223
- console.log('Expression-only result:', JSON.stringify(expressionOnlyResult, null, 2));
224
- console.log('---\n');
225
- logger.info('Test Summary:');
226
- console.log('✓ Valid workflow:', validResult.valid ? 'PASSED' : 'FAILED');
227
- console.log('✓ Cycle detection:', !cycleResult.valid ? 'PASSED' : 'FAILED');
228
- console.log('✓ Expression validation:', !expressionResult.valid ? 'PASSED' : 'FAILED');
229
- console.log('✓ Orphaned node detection:', orphanedResult.warnings.length > 0 ? 'PASSED' : 'FAILED');
230
- console.log('✓ Connection-only validation:', connectionOnlyResult.errors.length > 0 ? 'PASSED' : 'FAILED');
231
- console.log('✓ Expression-only validation:', expressionOnlyResult.errors.length > 0 ? 'PASSED' : 'FAILED');
232
- db.close();
233
- }
234
- testWorkflowValidation().catch(error => {
235
- logger.error('Test failed:', error);
236
- process.exit(1);
237
- });
238
- //# sourceMappingURL=test-workflow-validation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-workflow-validation.js","sourceRoot":"","sources":["../../src/scripts/test-workflow-validation.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { InstanceContext } from '../types/instance-context';
2
- import { N8nApiClient } from './n8n-api-client';
3
- import { Workflow } from '../types/n8n-api';
4
- export interface WorkflowOwnershipInfo {
5
- workflowId: string;
6
- instanceId: string;
7
- instanceUrl: string;
8
- createdAt: Date;
9
- lastVerified: Date;
10
- }
11
- export declare class WorkflowOwnershipService {
12
- private apiClient?;
13
- private ownershipCache;
14
- private readonly CACHE_TTL;
15
- private readonly INSTANCE_TAG_PREFIX;
16
- private readonly MAX_CACHE_SIZE;
17
- constructor(apiClient?: N8nApiClient | undefined);
18
- setApiClient(client: N8nApiClient): void;
19
- private getInstanceIdentifier;
20
- private getInstanceTag;
21
- private extractInstanceFromTags;
22
- validateAccess(workflowId: string, context: InstanceContext): Promise<boolean>;
23
- trackOwnership(workflowId: string, context: InstanceContext): Promise<void>;
24
- private claimWorkflow;
25
- filterWorkflowsByInstance(workflows: Workflow[], context: InstanceContext): Promise<Workflow[]>;
26
- private updateOwnershipCache;
27
- private isCacheValid;
28
- clearCache(): void;
29
- getCacheStats(): {
30
- size: number;
31
- maxSize: number;
32
- ttl: number;
33
- };
34
- }
35
- //# sourceMappingURL=workflow-ownership.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow-ownership.d.ts","sourceRoot":"","sources":["../../src/services/workflow-ownership.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,YAAY,EAAE,IAAI,CAAC;CACpB;AAKD,qBAAa,wBAAwB;IAavB,OAAO,CAAC,SAAS,CAAC;IAX9B,OAAO,CAAC,cAAc,CAA4C;IAGlE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAG3C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAmB;IAGvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAEpB,SAAS,CAAC,EAAE,YAAY,YAAA;IAK5C,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAOxC,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,uBAAuB;IAYzB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;IAiF9E,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YA6CnE,aAAa;IAkCrB,yBAAyB,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA2BrG,OAAO,CAAC,oBAAoB;IA0B5B,OAAO,CAAC,YAAY;IAQpB,UAAU,IAAI,IAAI;IAQlB,aAAa,IAAI;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb;CAOF"}