@n8n/ai-workflow-builder 1.2.2 → 1.3.1

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 (32) hide show
  1. package/dist/agents/responder.agent.js +18 -2
  2. package/dist/agents/responder.agent.js.map +1 -1
  3. package/dist/build.tsbuildinfo +1 -1
  4. package/dist/multi-agent-workflow-subgraphs.d.ts +4 -1
  5. package/dist/multi-agent-workflow-subgraphs.js +3 -0
  6. package/dist/multi-agent-workflow-subgraphs.js.map +1 -1
  7. package/dist/prompts/agents/builder.prompt.js +6 -0
  8. package/dist/prompts/agents/builder.prompt.js.map +1 -1
  9. package/dist/prompts/agents/configurator.prompt.d.ts +1 -0
  10. package/dist/prompts/agents/configurator.prompt.js +13 -0
  11. package/dist/prompts/agents/configurator.prompt.js.map +1 -1
  12. package/dist/prompts/agents/responder.prompt.d.ts +3 -0
  13. package/dist/prompts/agents/responder.prompt.js +23 -0
  14. package/dist/prompts/agents/responder.prompt.js.map +1 -1
  15. package/dist/subgraphs/configurator.subgraph.js +14 -0
  16. package/dist/subgraphs/configurator.subgraph.js.map +1 -1
  17. package/dist/tools/best-practices/chatbot.js +1 -0
  18. package/dist/tools/best-practices/chatbot.js.map +1 -1
  19. package/dist/tools/best-practices/data-transformation.js +11 -25
  20. package/dist/tools/best-practices/data-transformation.js.map +1 -1
  21. package/dist/tools/best-practices/form-input.js +2 -2
  22. package/dist/tools/best-practices/scraping-and-research.js +4 -0
  23. package/dist/tools/best-practices/scraping-and-research.js.map +1 -1
  24. package/dist/types/coordination.d.ts +5 -0
  25. package/dist/types/coordination.js.map +1 -1
  26. package/dist/utils/coordination-log.d.ts +1 -0
  27. package/dist/utils/coordination-log.js +20 -2
  28. package/dist/utils/coordination-log.js.map +1 -1
  29. package/dist/utils/state-modifier.d.ts +5 -1
  30. package/dist/utils/state-modifier.js +46 -1
  31. package/dist/utils/state-modifier.js.map +1 -1
  32. package/package.json +7 -7
@@ -45,7 +45,7 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
45
45
  previousSummary?: string | undefined;
46
46
  templateIds?: number[] | undefined;
47
47
  cachedTemplates?: import("./types").WorkflowMetadata[] | undefined;
48
- }, "responder" | "supervisor" | "create_workflow_name" | "configurator_subgraph" | "discovery_subgraph" | "builder_subgraph" | "delete_messages" | "compact_messages" | "process_operations" | "__start__" | "cleanup_dangling" | "check_state", {
48
+ }, "responder" | "supervisor" | "create_workflow_name" | "configurator_subgraph" | "discovery_subgraph" | "builder_subgraph" | "delete_messages" | "compact_messages" | "process_operations" | "__start__" | "cleanup_dangling" | "clear_error_state" | "check_state", {
49
49
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], import("@langchain/core/messages").BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
50
50
  workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<import("./types").SimpleWorkflow, import("./types").SimpleWorkflow>;
51
51
  workflowContext: import("@langchain/langgraph").BinaryOperatorAggregate<{
@@ -113,6 +113,9 @@ export declare function createMultiAgentWorkflowWithSubgraphs(config: MultiAgent
113
113
  coordinationLog: import("./types/coordination").CoordinationLogEntry[];
114
114
  workflowOperations: [];
115
115
  };
116
+ clear_error_state: {
117
+ coordinationLog: import("./types/coordination").CoordinationLogEntry[];
118
+ };
116
119
  create_workflow_name: {
117
120
  workflowJSON: import("./types").SimpleWorkflow;
118
121
  };
@@ -125,6 +125,7 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
125
125
  return await (0, state_modifier_1.handleCompactMessages)(state.messages, state.previousSummary ?? '', llmComplexTask, isAutoCompact);
126
126
  })
127
127
  .addNode('delete_messages', (state) => (0, state_modifier_1.handleDeleteMessages)(state.messages))
128
+ .addNode('clear_error_state', (state) => (0, state_modifier_1.handleClearErrorState)(state.coordinationLog, logger))
128
129
  .addNode('create_workflow_name', async (state) => await (0, state_modifier_1.handleCreateWorkflowName)(state.messages, state.workflowJSON, llmComplexTask, logger))
129
130
  .addNode('discovery_subgraph', createSubgraphNodeHandler(discoverySubgraph, compiledDiscovery, 'discovery_subgraph', logger, constants_1.MAX_DISCOVERY_ITERATIONS))
130
131
  .addNode('builder_subgraph', createSubgraphNodeHandler(builderSubgraph, compiledBuilder, 'builder_subgraph', logger, constants_1.MAX_BUILDER_ITERATIONS))
@@ -140,12 +141,14 @@ function createMultiAgentWorkflowWithSubgraphs(config) {
140
141
  delete_messages: 'delete_messages',
141
142
  create_workflow_name: 'create_workflow_name',
142
143
  auto_compact_messages: 'compact_messages',
144
+ clear_error_state: 'clear_error_state',
143
145
  continue: 'supervisor',
144
146
  };
145
147
  return routes[state.nextPhase] ?? 'supervisor';
146
148
  })
147
149
  .addEdge('cleanup_dangling', 'check_state')
148
150
  .addEdge('delete_messages', 'responder')
151
+ .addEdge('clear_error_state', 'check_state')
149
152
  .addEdge('create_workflow_name', 'supervisor')
150
153
  .addConditionalEdges('compact_messages', (state) => {
151
154
  const hasMessages = state.messages.length > 0;
@@ -1 +1 @@
1
- {"version":3,"file":"multi-agent-workflow-subgraphs.js","sourceRoot":"","sources":["../src/multi-agent-workflow-subgraphs.ts"],"names":[],"mappings":";;AAsHA,sFAgLC;AArSD,uDAAwD;AACxD,oDAAgF;AAIhF,8DAA0D;AAC1D,gEAA4D;AAC5D,2CAKqB;AACrB,6DAAwD;AACxD,mEAA+D;AAC/D,6EAAyE;AACzE,uEAAmE;AAGnE,uDAA2D;AAC3D,+DAA+D;AAC/D,uEAAiE;AACjE,2DAMgC;AAOhC,SAAS,WAAW,CAAC,IAAY;IAChC,MAAM,WAAW,GAA2B;QAC3C,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,oBAAoB;QAC/B,OAAO,EAAE,kBAAkB;QAC3B,YAAY,EAAE,uBAAuB;KACrC,CAAC;IACF,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC;AACzC,CAAC;AAiBD,SAAS,yBAAyB,CAGjC,QAAmB,EACnB,aAA8C,EAC9C,IAAY,EACZ,MAAe,EACf,cAAuB;IAEvB,OAAO,KAAK,EAAE,KAAoC,EAAE,EAAE;QACrD,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEvD,OAAO,MAAM,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7C,MAAM,YAAY,GACjB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAG3F,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAkB,CAAC;YAI7D,OAAO;gBACN,SAAS,EAAE,WAAW;gBACtB,QAAQ,EAAE;oBACT,IAAI,uBAAY,CAAC;wBAChB,OAAO,EAAE,YAAY,IAAI,KAAK,YAAY,EAAE;wBAC5C,IAAI,EAAE,cAAc;qBACpB,CAAC;iBACF;gBACD,eAAe,EAAE;oBAChB;wBACC,KAAK;wBACL,MAAM,EAAE,OAAgB;wBACxB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,OAAO,EAAE,UAAU,YAAY,EAAE;wBACjC,QAAQ,EAAE,IAAA,kCAAmB,EAAC;4BAC7B,cAAc,EAAE,KAAK;4BACrB,YAAY;yBACZ,CAAC;qBACF;iBACD;aACD,CAAC;QACH,CAAC;IACF,CAAC,CAAC;AACH,CAAC;AAQD,SAAgB,qCAAqC,CAAC,MAAgC;IACrF,MAAM,EACL,eAAe,EACf,cAAc,EACd,MAAM,EACN,WAAW,EACX,YAAY,EACZ,0BAA0B,GAAG,iDAAqC,EAClE,YAAY,GACZ,GAAG,MAAM,CAAC;IAEX,MAAM,eAAe,GAAG,IAAI,kCAAe,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC;IACrE,MAAM,cAAc,GAAG,IAAI,gCAAc,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC;IAGnE,MAAM,iBAAiB,GAAG,IAAI,sCAAiB,EAAE,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,kCAAe,EAAE,CAAC;IAC9C,MAAM,oBAAoB,GAAG,IAAI,4CAAoB,EAAE,CAAC;IAGxD,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC;QAClD,eAAe;QACf,GAAG,EAAE,cAAc;QACnB,MAAM;QACN,YAAY;KACZ,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC;QAC9C,eAAe;QACf,GAAG,EAAE,cAAc;QACnB,MAAM;QACN,YAAY;KACZ,CAAC,CAAC;IACH,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAAC;QACxD,eAAe;QACf,GAAG,EAAE,cAAc;QACnB,MAAM;QACN,WAAW;QACX,YAAY;KACZ,CAAC,CAAC;IAGH,OAAO,CACN,IAAI,sBAAU,CAAC,qCAAgB,CAAC;SAE9B,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACtC,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC;YAC5C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,eAAe,EAAE,KAAK,CAAC,eAAe;SACtC,CAAC,CAAC;QAEH,OAAO;YACN,SAAS,EAAE,OAAO,CAAC,IAAI;SACvB,CAAC;IACH,CAAC,CAAC;SAED,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC;YAC5C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,eAAe,EAAE,KAAK,CAAC,eAAe;SACtC,CAAC,CAAC;QAEH,OAAO;YACN,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;IACH,CAAC,CAAC;SAED,OAAO,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE;QAExC,MAAM,MAAM,GAAG,IAAA,wCAAiB,EAAC,KAAK,CAAC,CAAC;QAExC,OAAO;YACN,GAAG,MAAM;YACT,kBAAkB,EAAE,EAAE;SACtB,CAAC;IACH,CAAC,CAAC;SAED,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnC,SAAS,EAAE,IAAA,qCAAoB,EAAC,KAAK,EAAE,0BAA0B,CAAC;KAClE,CAAC,CAAC;SACF,OAAO,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,sCAAqB,EAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SACrF,OAAO,CAAC,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5C,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK,UAAU,CAAC;QACxF,OAAO,MAAM,IAAA,sCAAqB,EACjC,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,eAAe,IAAI,EAAE,EAC3B,cAAc,EACd,aAAa,CACb,CAAC;IACH,CAAC,CAAC;SACD,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,qCAAoB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC3E,OAAO,CACP,sBAAsB,EACtB,KAAK,EAAE,KAAK,EAAE,EAAE,CACf,MAAM,IAAA,yCAAwB,EAC7B,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,YAAY,EAClB,cAAc,EACd,MAAM,CACN,CACF;SAEA,OAAO,CACP,oBAAoB,EACpB,yBAAyB,CACxB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,EACN,oCAAwB,CACxB,CACD;SACA,OAAO,CACP,kBAAkB,EAClB,yBAAyB,CACxB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,MAAM,EACN,kCAAsB,CACtB,CACD;SACA,OAAO,CACP,uBAAuB,EACvB,yBAAyB,CACxB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,MAAM,EACN,uCAA2B,CAC3B,CACD;SAEA,OAAO,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;SACnD,OAAO,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;SACjD,OAAO,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;SAEtD,OAAO,CAAC,iBAAK,EAAE,aAAa,CAAC;SAE7B,mBAAmB,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,MAAM,MAAM,GAA2B;YACtC,gBAAgB,EAAE,kBAAkB;YACpC,gBAAgB,EAAE,kBAAkB;YACpC,eAAe,EAAE,iBAAiB;YAClC,oBAAoB,EAAE,sBAAsB;YAC5C,qBAAqB,EAAE,kBAAkB;YACzC,QAAQ,EAAE,YAAY;SACtB,CAAC;QACF,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC;IAChD,CAAC,CAAC;SAED,OAAO,CAAC,kBAAkB,EAAE,aAAa,CAAC;SAC1C,OAAO,CAAC,iBAAiB,EAAE,WAAW,CAAC;SACvC,OAAO,CAAC,sBAAsB,EAAE,YAAY,CAAC;SAE7C,mBAAmB,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;QAGlD,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9C,OAAO,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;IAClD,CAAC,CAAC;SAED,mBAAmB,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAE1E,mBAAmB,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE,CACpD,WAAW,CAAC,IAAA,sCAAmB,EAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CACvD;SAEA,OAAO,CAAC,WAAW,EAAE,eAAG,CAAC;SAEzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,CAC3B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"multi-agent-workflow-subgraphs.js","sourceRoot":"","sources":["../src/multi-agent-workflow-subgraphs.ts"],"names":[],"mappings":"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"}
@@ -277,6 +277,11 @@ COMMON MISTAKES TO AVOID:
277
277
  ✅ Calculator Tool → AI Agent (CORRECT)
278
278
  ✅ Window Buffer Memory → AI Agent (CORRECT)
279
279
  </connection_type_reference>`;
280
+ const DATA_TABLES = `**Data Tables VS 3rd party services**
281
+ - Data Tables provide built-in data storage within n8n, allowing you to persist and manage data directly in your workflows without external databases.
282
+ - Use the Data table node (n8n-nodes-base.dataTable) in workflows to retrieve, insert, update, or delete records.
283
+ - When storing, retrieving, or managing structured data within workflows, always prefer using n8n's native Data tables over external services like Google Sheets, Airtable, or other third-party databases if not specified otherwise.
284
+ `;
280
285
  const RESTRICTIONS = `- Respond before calling validate_structure
281
286
  - Skip validation even if you think structure is correct
282
287
  - Add commentary between tool calls - execute tools silently
@@ -307,6 +312,7 @@ function buildBuilderPrompt() {
307
312
  .section('switch_node_pattern', SWITCH_NODE_PATTERN)
308
313
  .section('node_connection_examples', NODE_CONNECTION_EXAMPLES)
309
314
  .section('connection_type_examples', CONNECTION_TYPES)
315
+ .section('data_tables', DATA_TABLES)
310
316
  .section('do_not', RESTRICTIONS)
311
317
  .section('response_format', RESPONSE_FORMAT)
312
318
  .build();
@@ -1 +1 @@
1
- {"version":3,"file":"builder.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/builder.prompt.ts"],"names":[],"mappings":";;AA0TA,gDAsBC;AAzUD,wCAAoC;AAEpC,MAAM,YAAY,GAAG,oEAAoE,CAAC;AAE1F,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;mEAoBwC,CAAC;AAEpE,MAAM,aAAa,GAAG;;;;oFAI8D,CAAC;AAErF,MAAM,oBAAoB,GAAG;;;;;;;mCAOM,CAAC;AAEpC,MAAM,YAAY,GAAG;;;;;;;;6EAQwD,CAAC;AAE9E,MAAM,gBAAgB,GAAG;;;;;;;kCAOS,CAAC;AAEnC,MAAM,aAAa,GAAG;;;;;;;mEAO6C,CAAC;AAEpE,MAAM,qBAAqB,GAAG;;;;;4NAK8L,CAAC;AAE7N,MAAM,wBAAwB,GAAG;;;;;iEAKgC,CAAC;AAElE,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EA6BmD,CAAC;AAE3E,MAAM,SAAS,GAAG;iLAC+J,CAAC;AAElL,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;sCA0BsB,CAAC;AAEvC,MAAM,sBAAsB,GAAG;;;;;;;;;;;mIAWoG,CAAC;AAEpI,MAAM,WAAW,GAAG;;;;;;;;;;;;2FAYuE,CAAC;AAE5F,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCzB,CAAC;AAEJ,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA2BL,CAAC;AAE7B,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAgDI,CAAC;AAE9B,MAAM,YAAY,GAAG;;;;;uEAKkD,CAAC;AAExE,MAAM,eAAe,GAAG;;;;yEAIiD,CAAC;AAE1E,SAAgB,kBAAkB;IACjC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;SAC7B,OAAO,CAAC,8BAA8B,EAAE,kBAAkB,CAAC;SAC3D,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC;SACvC,OAAO,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;SAC5D,OAAO,CAAC,uBAAuB,EAAE,YAAY,CAAC;SAC9C,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;SAC7C,OAAO,CAAC,uBAAuB,EAAE,aAAa,CAAC;SAC/C,OAAO,CAAC,gCAAgC,EAAE,qBAAqB,CAAC;SAChE,OAAO,CAAC,mCAAmC,EAAE,wBAAwB,CAAC;SACtE,OAAO,CAAC,gCAAgC,EAAE,cAAc,CAAC;SACzD,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;SAC/B,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC;SAC3B,OAAO,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;SACzD,OAAO,CAAC,sBAAsB,EAAE,WAAW,CAAC;SAC5C,OAAO,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SACnD,OAAO,CAAC,0BAA0B,EAAE,wBAAwB,CAAC;SAC7D,OAAO,CAAC,0BAA0B,EAAE,gBAAgB,CAAC;SACrD,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC;SAC3C,KAAK,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"builder.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/builder.prompt.ts"],"names":[],"mappings":";;AAgUA,gDAuBC;AAhVD,wCAAoC;AAEpC,MAAM,YAAY,GAAG,oEAAoE,CAAC;AAE1F,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;mEAoBwC,CAAC;AAEpE,MAAM,aAAa,GAAG;;;;oFAI8D,CAAC;AAErF,MAAM,oBAAoB,GAAG;;;;;;;mCAOM,CAAC;AAEpC,MAAM,YAAY,GAAG;;;;;;;;6EAQwD,CAAC;AAE9E,MAAM,gBAAgB,GAAG;;;;;;;kCAOS,CAAC;AAEnC,MAAM,aAAa,GAAG;;;;;;;mEAO6C,CAAC;AAEpE,MAAM,qBAAqB,GAAG;;;;;4NAK8L,CAAC;AAE7N,MAAM,wBAAwB,GAAG;;;;;iEAKgC,CAAC;AAElE,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EA6BmD,CAAC;AAE3E,MAAM,SAAS,GAAG;iLAC+J,CAAC;AAElL,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;sCA0BsB,CAAC;AAEvC,MAAM,sBAAsB,GAAG;;;;;;;;;;;mIAWoG,CAAC;AAEpI,MAAM,WAAW,GAAG;;;;;;;;;;;;2FAYuE,CAAC;AAE5F,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCzB,CAAC;AAEJ,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA2BL,CAAC;AAE7B,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAgDI,CAAC;AAE9B,MAAM,WAAW,GAAG;;;;CAInB,CAAC;AAEF,MAAM,YAAY,GAAG;;;;;uEAKkD,CAAC;AAExE,MAAM,eAAe,GAAG;;;;yEAIiD,CAAC;AAE1E,SAAgB,kBAAkB;IACjC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;SAC7B,OAAO,CAAC,8BAA8B,EAAE,kBAAkB,CAAC;SAC3D,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC;SACvC,OAAO,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;SAC5D,OAAO,CAAC,uBAAuB,EAAE,YAAY,CAAC;SAC9C,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;SAC7C,OAAO,CAAC,uBAAuB,EAAE,aAAa,CAAC;SAC/C,OAAO,CAAC,gCAAgC,EAAE,qBAAqB,CAAC;SAChE,OAAO,CAAC,mCAAmC,EAAE,wBAAwB,CAAC;SACtE,OAAO,CAAC,gCAAgC,EAAE,cAAc,CAAC;SACzD,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;SAC/B,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC;SAC3B,OAAO,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;SACzD,OAAO,CAAC,sBAAsB,EAAE,WAAW,CAAC;SAC5C,OAAO,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SACnD,OAAO,CAAC,0BAA0B,EAAE,wBAAwB,CAAC;SAC7D,OAAO,CAAC,0BAA0B,EAAE,gBAAgB,CAAC;SACrD,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC;SACnC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC;SAC3C,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export declare const INSTANCE_URL_PROMPT = "\n<instance_url>\nThe n8n instance base URL is: {instanceUrl}\n\nThis URL is essential for webhook nodes and chat triggers as it provides the base URL for:\n- Webhook URLs that external services need to call\n- Chat trigger URLs for conversational interfaces\n- Any node that requires the full instance URL to generate proper callback URLs\n\nWhen working with webhook or chat trigger nodes, use this URL as the base for constructing proper endpoint URLs.\n</instance_url>\n";
2
+ export declare function buildRecoveryModeContext(nodeCount: number, nodeNames: string[]): string;
2
3
  export declare function buildConfiguratorPrompt(): string;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.INSTANCE_URL_PROMPT = void 0;
4
+ exports.buildRecoveryModeContext = buildRecoveryModeContext;
4
5
  exports.buildConfiguratorPrompt = buildConfiguratorPrompt;
5
6
  const builder_1 = require("../builder");
6
7
  const CONFIGURATOR_ROLE = 'You are a Configurator Agent specialized in setting up n8n node parameters.';
@@ -124,6 +125,18 @@ This URL is essential for webhook nodes and chat triggers as it provides the bas
124
125
  When working with webhook or chat trigger nodes, use this URL as the base for constructing proper endpoint URLs.
125
126
  </instance_url>
126
127
  `;
128
+ function buildRecoveryModeContext(nodeCount, nodeNames) {
129
+ return ('=== CRITICAL: RECOVERY MODE ===\n\n' +
130
+ 'WORKFLOW RECOVERY SCENARIO:\n' +
131
+ `The builder created ${nodeCount} node${nodeCount === 1 ? '' : 's'} (${nodeNames.join(', ')}) before hitting a recursion limit.\n\n` +
132
+ 'REQUIRED ACTIONS - DO NOT SKIP:\n' +
133
+ '1. Call update_node_parameters for EVERY node listed above to ensure proper configuration\n' +
134
+ '2. Call validate_configuration to check for issues\n' +
135
+ '3. Scan the workflow for placeholders (format: <__PLACEHOLDER_VALUE__*__>) and missing credentials\n' +
136
+ '4. List ALL placeholders and missing credentials in your final response\n\n' +
137
+ 'DO NOT respond with "workflow already exists" or "no changes needed". ' +
138
+ 'You MUST use tools to analyze this recovered workflow.');
139
+ }
127
140
  function buildConfiguratorPrompt() {
128
141
  return (0, builder_1.prompt)()
129
142
  .section('role', CONFIGURATOR_ROLE)
@@ -1 +1 @@
1
- {"version":3,"file":"configurator.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/configurator.prompt.ts"],"names":[],"mappings":";;;AAiJA,0DAeC;AAzJD,wCAAoC;AAEpC,MAAM,iBAAiB,GACtB,6EAA6E,CAAC;AAE/E,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;uEAoB4C,CAAC;AAExE,MAAM,uBAAuB,GAAG;;iGAEiE,CAAC;AAElG,MAAM,uBAAuB,GAAG;;;;8CAIc,CAAC;AAE/C,MAAM,gBAAgB,GAAG;;;;;;;;;;;8DAWqC,CAAC;AAE/D,MAAM,qBAAqB,GAAG;;;;;;;;;+DASiC,CAAC;AAEhE,MAAM,mBAAmB,GAAG;;;;;;;uEAO2C,CAAC;AAExE,MAAM,sBAAsB,GAAG;;;+GAGgF,CAAC;AAEhH,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;wEAwBsC,CAAC;AAEzE,MAAM,2BAA2B,GAAG;;;;;;;;;;;;6DAYyB,CAAC;AAE9D,MAAM,eAAe,GAAG;;;8GAGsF,CAAC;AAE/G,MAAM,YAAY,GAAG;;6DAEwC,CAAC;AAGjD,QAAA,mBAAmB,GAAG;;;;;;;;;;;CAWlC,CAAC;AAEF,SAAgB,uBAAuB;IACtC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC;SAClC,OAAO,CAAC,8BAA8B,EAAE,kBAAkB,CAAC;SAC3D,OAAO,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;SAC3D,OAAO,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;SAC3D,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;SAC7C,OAAO,CAAC,uBAAuB,EAAE,qBAAqB,CAAC;SACvD,OAAO,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SACnD,OAAO,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;SACzD,OAAO,CAAC,2BAA2B,EAAE,yBAAyB,CAAC;SAC/D,OAAO,CAAC,6BAA6B,EAAE,2BAA2B,CAAC;SACnE,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC;SAC3C,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,KAAK,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"configurator.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/configurator.prompt.ts"],"names":[],"mappings":";;;AAqJA,4DAaC;AAED,0DAeC;AA5KD,wCAAoC;AAEpC,MAAM,iBAAiB,GACtB,6EAA6E,CAAC;AAE/E,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;uEAoB4C,CAAC;AAExE,MAAM,uBAAuB,GAAG;;iGAEiE,CAAC;AAElG,MAAM,uBAAuB,GAAG;;;;8CAIc,CAAC;AAE/C,MAAM,gBAAgB,GAAG;;;;;;;;;;;8DAWqC,CAAC;AAE/D,MAAM,qBAAqB,GAAG;;;;;;;;;+DASiC,CAAC;AAEhE,MAAM,mBAAmB,GAAG;;;;;;;uEAO2C,CAAC;AAExE,MAAM,sBAAsB,GAAG;;;+GAGgF,CAAC;AAEhH,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;wEAwBsC,CAAC;AAEzE,MAAM,2BAA2B,GAAG;;;;;;;;;;;;6DAYyB,CAAC;AAE9D,MAAM,eAAe,GAAG;;;8GAGsF,CAAC;AAE/G,MAAM,YAAY,GAAG;;6DAEwC,CAAC;AAGjD,QAAA,mBAAmB,GAAG;;;;;;;;;;;CAWlC,CAAC;AAMF,SAAgB,wBAAwB,CAAC,SAAiB,EAAE,SAAmB;IAC9E,OAAO,CACN,qCAAqC;QACrC,+BAA+B;QAC/B,uBAAuB,SAAS,QAAQ,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,yCAAyC;QACpI,mCAAmC;QACnC,6FAA6F;QAC7F,sDAAsD;QACtD,sGAAsG;QACtG,6EAA6E;QAC7E,wEAAwE;QACxE,wDAAwD,CACxD,CAAC;AACH,CAAC;AAED,SAAgB,uBAAuB;IACtC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC;SAClC,OAAO,CAAC,8BAA8B,EAAE,kBAAkB,CAAC;SAC3D,OAAO,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;SAC3D,OAAO,CAAC,yBAAyB,EAAE,uBAAuB,CAAC;SAC3D,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;SAC7C,OAAO,CAAC,uBAAuB,EAAE,qBAAqB,CAAC;SACvD,OAAO,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;SACnD,OAAO,CAAC,wBAAwB,EAAE,sBAAsB,CAAC;SACzD,OAAO,CAAC,2BAA2B,EAAE,yBAAyB,CAAC;SAC/D,OAAO,CAAC,6BAA6B,EAAE,2BAA2B,CAAC;SACnE,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC;SAC3C,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -1 +1,4 @@
1
+ export declare function buildRecursionErrorWithWorkflowGuidance(nodeCount: number): string[];
2
+ export declare function buildRecursionErrorNoWorkflowGuidance(): string[];
3
+ export declare function buildGeneralErrorGuidance(): string;
1
4
  export declare function buildResponderPrompt(): string;
@@ -1,5 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildRecursionErrorWithWorkflowGuidance = buildRecursionErrorWithWorkflowGuidance;
4
+ exports.buildRecursionErrorNoWorkflowGuidance = buildRecursionErrorNoWorkflowGuidance;
5
+ exports.buildGeneralErrorGuidance = buildGeneralErrorGuidance;
3
6
  exports.buildResponderPrompt = buildResponderPrompt;
4
7
  const builder_1 = require("../builder");
5
8
  const RESPONDER_ROLE = `You are a helpful AI assistant for n8n workflow automation.
@@ -30,6 +33,26 @@ const RESPONSE_STYLE = `- Keep responses focused and not overly long
30
33
  - Use markdown formatting for readability
31
34
  - Be conversational and helpful
32
35
  - Do not use emojis in your response`;
36
+ function buildRecursionErrorWithWorkflowGuidance(nodeCount) {
37
+ return [
38
+ `**Workflow Status:** ${nodeCount} node${nodeCount === 1 ? '' : 's'} ${nodeCount === 1 ? 'was' : 'were'} created before the complexity limit was reached.`,
39
+ "Tell the user that you've created their workflow but reached a complexity limit while fine-tuning. " +
40
+ 'The workflow should work and they can test it. ' +
41
+ 'If they need adjustments or want to continue building, they can ask you to make specific changes.',
42
+ ];
43
+ }
44
+ function buildRecursionErrorNoWorkflowGuidance() {
45
+ return [
46
+ '**Workflow Status:** No nodes were created - the request was too complex to process automatically.',
47
+ 'Explain that the workflow design became too complex for automatic generation. ' +
48
+ 'Suggest options: (1) Break the request into smaller steps, (2) Simplify the workflow, ' +
49
+ 'or (3) Start with a basic version and iteratively add complexity.',
50
+ ];
51
+ }
52
+ function buildGeneralErrorGuidance() {
53
+ return ('Apologize and explain that a technical error occurred. ' +
54
+ 'Ask if they would like to try again or approach the problem differently.');
55
+ }
33
56
  function buildResponderPrompt() {
34
57
  return (0, builder_1.prompt)()
35
58
  .section('role', RESPONDER_ROLE)
@@ -1 +1 @@
1
- {"version":3,"file":"responder.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/responder.prompt.ts"],"names":[],"mappings":";;AAyCA,oDAOC;AAzCD,wCAAoC;AAEpC,MAAM,cAAc,GAAG;;;;;6CAKsB,CAAC;AAE9C,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;+CAcmB,CAAC;AAEhD,MAAM,wBAAwB,GAAG;;0CAES,CAAC;AAE3C,MAAM,cAAc,GAAG;;;qCAGc,CAAC;AAEtC,SAAgB,oBAAoB;IACnC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC;SAC/B,OAAO,CAAC,+BAA+B,EAAE,mBAAmB,CAAC;SAC7D,OAAO,CAAC,0BAA0B,EAAE,wBAAwB,CAAC;SAC7D,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC;SACzC,KAAK,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"responder.prompt.js","sourceRoot":"","sources":["../../../src/prompts/agents/responder.prompt.ts"],"names":[],"mappings":";;AA8CA,0FAOC;AAGD,sFAOC;AAGD,8DAKC;AAED,oDAOC;AAzED,wCAAoC;AAEpC,MAAM,cAAc,GAAG;;;;;6CAKsB,CAAC;AAE9C,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;+CAcmB,CAAC;AAEhD,MAAM,wBAAwB,GAAG;;0CAES,CAAC;AAE3C,MAAM,cAAc,GAAG;;;qCAGc,CAAC;AAOtC,SAAgB,uCAAuC,CAAC,SAAiB;IACxE,OAAO;QACN,wBAAwB,SAAS,QAAQ,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,mDAAmD;QAC1J,qGAAqG;YACpG,iDAAiD;YACjD,mGAAmG;KACpG,CAAC;AACH,CAAC;AAGD,SAAgB,qCAAqC;IACpD,OAAO;QACN,oGAAoG;QACpG,gFAAgF;YAC/E,wFAAwF;YACxF,mEAAmE;KACpE,CAAC;AACH,CAAC;AAGD,SAAgB,yBAAyB;IACxC,OAAO,CACN,yDAAyD;QACzD,0EAA0E,CAC1E,CAAC;AACH,CAAC;AAED,SAAgB,oBAAoB;IACnC,OAAO,IAAA,gBAAM,GAAE;SACb,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC;SAC/B,OAAO,CAAC,+BAA+B,EAAE,mBAAmB,CAAC;SAC7D,OAAO,CAAC,0BAA0B,EAAE,wBAAwB,CAAC;SAC7D,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC;SACzC,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -128,6 +128,20 @@ class ConfiguratorSubgraph extends subgraph_interface_1.BaseSubgraph {
128
128
  if (parentState.discoveryContext?.bestPractices) {
129
129
  contextParts.push(parentState.discoveryContext.bestPractices);
130
130
  }
131
+ const builderErrorEntry = parentState.coordinationLog?.find((entry) => {
132
+ if (entry.status !== 'error')
133
+ return false;
134
+ if (entry.phase !== 'builder')
135
+ return false;
136
+ return (entry.metadata.phase === 'error' &&
137
+ 'partialBuilderData' in entry.metadata &&
138
+ entry.metadata.partialBuilderData);
139
+ });
140
+ if (builderErrorEntry?.metadata.phase === 'error' &&
141
+ builderErrorEntry.metadata.partialBuilderData) {
142
+ const { nodeCount, nodeNames } = builderErrorEntry.metadata.partialBuilderData;
143
+ contextParts.push((0, configurator_prompt_1.buildRecoveryModeContext)(nodeCount, nodeNames));
144
+ }
131
145
  contextParts.push('=== WORKFLOW TO CONFIGURE ===');
132
146
  contextParts.push((0, context_builders_1.buildWorkflowJsonBlock)(parentState.workflowJSON));
133
147
  contextParts.push('=== EXECUTION CONTEXT ===');
@@ -1 +1 @@
1
- {"version":3,"file":"configurator.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/configurator.subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurator.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/configurator.subgraph.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,7 @@ Purpose: Fetches external data to enrich chatbot responses with real-time or org
79
79
 
80
80
  ### Database Nodes & Google Sheets
81
81
 
82
+ - Data Table (n8n-nodes-base.dataTable)
82
83
  - Postgres (n8n-nodes-base.postgres)
83
84
  - MySQL (n8n-nodes-base.mySql)
84
85
  - MongoDB (n8n-nodes-base.mongoDb)
@@ -1 +1 @@
1
- {"version":3,"file":"chatbot.js","sourceRoot":"","sources":["../../../src/tools/best-practices/chatbot.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,oBAAoB;IACvB,SAAS,GAAG,kCAAiB,CAAC,OAAO,CAAC;IACtC,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuGjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AAhHD,oDAgHC"}
1
+ {"version":3,"file":"chatbot.js","sourceRoot":"","sources":["../../../src/tools/best-practices/chatbot.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,oBAAoB;IACvB,SAAS,GAAG,kCAAiB,CAAC,OAAO,CAAC;IACtC,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwGjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AAjHD,oDAiHC"}
@@ -69,12 +69,17 @@ class DataTransformationBestPractices {
69
69
 
70
70
  #### Code Node (n8n-nodes-base.code)
71
71
 
72
- **When NOT to Use**: Code node may be slower than core nodes (like Edit Fields, If, Switch, etc.) as Code nodes run in a sandboxed environment. Avoid the code node where possible — it should only be used for complex transformations that can't be done with other nodes. For example, DO NOT use it for:
72
+ **Built-in Nodes vs. Code Node**
73
+ - Prefer basic built-in nodes (Edit Fields, Filter, Split Out, Summarize, Aggregate, etc.) over Code node. Use Code only for complex logic that can't be achieved otherwise.
74
+ - Rule of thumb: if the goal can be achieved with fewer than 5 basic nodes, use basic nodes
75
+
76
+ **When NOT to Use**: Code node may be slower than core nodes (like Edit Fields, If, Switch, Split Out, Aggregate, etc.) as Code nodes run in a sandboxed environment. Avoid the code node where possible — it should only be used for complex transformations that can't be done with other nodes. For example, DO NOT use it for:
73
77
  - Adding or removing fields from items (use the 'edit fields' node instead)
74
78
  - Single-line data transformations of item fields (use the 'edit fields' node instead)
75
79
  - Filtering items based on their fields (use the 'filter' node instead)
76
- - Pivoting, aggregating or summarizing data across items (use the 'summarize' node instead)
80
+ - Pivoting or summarizing data across multiple items (use the 'summarize' node instead)
77
81
  - Splitting arrays inside items out into multiple items (use the 'split out' node instead)
82
+ - Aggregating multiple items into a single item (use the 'aggregate' node instead)
78
83
  - Sorting items in an array based on their fields (use the 'Sort' node instead)
79
84
  - Generating HTML from text or formatting text as HTML (use the 'HTML' node set to operation 'Generate HTML Template' or 'Convert to HTML Table' instead)
80
85
 
@@ -118,15 +123,8 @@ return items; // or return [{ json: {...} }];
118
123
  - **Purpose**: Process large datasets in chunks
119
124
  - **Use When**: Handling 100+ items with expensive operations (API calls, AI)
120
125
 
121
- ### Workflow Orchestration
122
-
123
- **Execute Workflow** (n8n-nodes-base.executeWorkflow):
124
- - **Purpose**: Call sub-workflows for modular design
125
- - **Best Practice**: Create reusable sub-workflows for common tasks like "Data Cleaning" or "Error Handler"
126
-
127
- **Error Trigger** (n8n-nodes-base.errorTrigger):
128
- - **Purpose**: Create global error handling workflow
129
- - **Best Practice**: Use as safety net to catch all workflow errors
126
+ ## Input Data Validation
127
+ - Validate external data before processing: check for nulls, empty values, and edge cases (special chars, empty arrays)
130
128
 
131
129
  ## Common Pitfalls to Avoid
132
130
 
@@ -145,28 +143,16 @@ return items; // or return [{ json: {...} }];
145
143
  - **Fix**: Keep code nodes focused on single transformation aspect
146
144
 
147
145
  #### Merge Node Problems
148
- - **Missing Keys**: Trying to merge on non-existent fields
149
- - **Fix**: Validate both inputs have matching key fields
150
146
  - **Field Name Mismatch**: Different field names in sources
151
- - **Fix**: Use Edit Fields node to normalize field names before merging
152
-
153
- ### General Workflow Issues
154
- - **No Error Handling**: Workflow crashes on unexpected data. **Fix**: Add IF nodes for validation, use error outputs
155
- - **Hard-coded Values**: URLs, credentials, config in nodes. **Fix**: Use environment variables or config nodes
156
- - **Missing Documentation**: No comments or descriptions
157
- - **Fix**: Add sticky notes, node descriptions, code comments
147
+ - **Fix**: Normalize field names with Edit Fields before merging
158
148
 
159
149
  ### Performance Pitfalls
160
150
  - Processing large datasets without batching → timeouts
161
151
  - Not filtering early → unnecessary processing overhead
162
152
  - Excessive node chaining → visual clutter and slow execution
163
- - Not using sub-workflows → unmaintainable monolithic workflows
164
153
 
165
154
  ### Data Validation Pitfalls
166
- - Assuming input data is always perfect
167
- - Not handling empty/null values
168
- - Ignoring data type mismatches
169
- - Missing edge case handling (special characters, empty arrays)
155
+ - Assuming input data is always perfect → runtime errors
170
156
  `;
171
157
  getDocumentation() {
172
158
  return this.documentation;
@@ -1 +1 @@
1
- {"version":3,"file":"data-transformation.js","sourceRoot":"","sources":["../../../src/tools/best-practices/data-transformation.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,+BAA+B;IAClC,SAAS,GAAG,kCAAiB,CAAC,mBAAmB,CAAC;IAClD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkKjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA3KD,0EA2KC"}
1
+ {"version":3,"file":"data-transformation.js","sourceRoot":"","sources":["../../../src/tools/best-practices/data-transformation.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,+BAA+B;IAClC,SAAS,GAAG,kCAAiB,CAAC,mBAAmB,CAAC;IAClD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA7JD,0EA6JC"}
@@ -44,7 +44,7 @@ sequence. Use the n8n Form Trigger node to start the workflow and display the fi
44
44
 
45
45
  ## Data Collection & Aggregation
46
46
 
47
- Collect and merge all user responses from each form step before writing to your destination (e.g., Google Sheets). Use
47
+ Collect and merge all user responses from each form step before writing to your destination (e.g., Data Table). Use
48
48
  Set or Merge nodes to combine data as needed. Make sure your JSON keys match the column names in your destination for
49
49
  automatic mapping.
50
50
 
@@ -91,7 +91,7 @@ Purpose: Persist raw form data to a storage destination, preference should be fo
91
91
  but use the most applicable node depending on the user's request.
92
92
 
93
93
  Required nodes (use at least one):
94
- - Data table (n8n-nodes-base.dataTable): Built-in n8n storage for quick setup
94
+ - Data table (n8n-nodes-base.dataTable): Built-in n8n storage for quick setup - preferred
95
95
  - Google Sheets (n8n-nodes-base.googleSheets): Best for simple spreadsheet storage
96
96
  - Airtable (n8n-nodes-base.airtable): Best for structured database with relationships
97
97
  - Postgres (n8n-nodes-base.postgres) / MySQL (n8n-nodes-base.mySql) / MongoDB (n8n-nodes-base.mongoDb): For production database storage
@@ -104,6 +104,10 @@ Pitfalls:
104
104
 
105
105
  Purpose: Introduces delays to respect rate limits and avoid overloading servers
106
106
 
107
+ ### Data Tables (n8n-nodes-base.dataTable)
108
+
109
+ Purpose: Stores scraped data in n8n's built-in persistent data storage
110
+
107
111
  ### Google Sheets (n8n-nodes-base.googleSheets)
108
112
 
109
113
  Purpose: Stores scraped data in spreadsheets for easy access and sharing
@@ -1 +1 @@
1
- {"version":3,"file":"scraping-and-research.js","sourceRoot":"","sources":["../../../src/tools/best-practices/scraping-and-research.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,gCAAgC;IACnC,SAAS,GAAG,kCAAiB,CAAC,qBAAqB,CAAC;IACpD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+IjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AAxJD,4EAwJC"}
1
+ {"version":3,"file":"scraping-and-research.js","sourceRoot":"","sources":["../../../src/tools/best-practices/scraping-and-research.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,gCAAgC;IACnC,SAAS,GAAG,kCAAiB,CAAC,qBAAqB,CAAC;IACpD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmJjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA5JD,4EA4JC"}
@@ -29,6 +29,11 @@ export interface ErrorMetadata {
29
29
  phase: 'error';
30
30
  failedSubgraph: SubgraphPhase;
31
31
  errorMessage: string;
32
+ partialBuilderData?: {
33
+ nodeCount: number;
34
+ connectionCount: number;
35
+ nodeNames: string[];
36
+ };
32
37
  }
33
38
  export interface StateManagementMetadata {
34
39
  phase: 'state_management';
@@ -1 +1 @@
1
- {"version":3,"file":"coordination.js","sourceRoot":"","sources":["../../src/types/coordination.ts"],"names":[],"mappings":";;AAuFA,0DAEC;AAED,sDAEC;AAED,gEAIC;AAED,kDAEC;AAED,sEAIC;AAtBD,SAAgB,uBAAuB,CAAC,IAAsC;IAC7E,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAgB,qBAAqB,CAAC,IAAoC;IACzE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,SAAgB,0BAA0B,CACzC,IAAyC;IAEzC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAkC;IACrE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,SAAgB,6BAA6B,CAC5C,IAA4C;IAE5C,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,IAAI,EAAE,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"coordination.js","sourceRoot":"","sources":["../../src/types/coordination.ts"],"names":[],"mappings":";;AA6FA,0DAEC;AAED,sDAEC;AAED,gEAIC;AAED,kDAEC;AAED,sEAIC;AAtBD,SAAgB,uBAAuB,CAAC,IAAsC;IAC7E,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAgB,qBAAqB,CAAC,IAAoC;IACzE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,SAAgB,0BAA0B,CACzC,IAAyC;IAEzC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAkC;IACrE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,SAAgB,6BAA6B,CAC5C,IAA4C;IAE5C,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,IAAI,EAAE,CAAC;AAC/C,CAAC"}
@@ -11,5 +11,6 @@ export declare function getPhaseMetadata(log: CoordinationLogEntry[], phase: 'co
11
11
  export declare function getPhaseMetadata(log: CoordinationLogEntry[], phase: 'state_management'): StateManagementMetadata | null;
12
12
  export declare function hasErrorInLog(log: CoordinationLogEntry[]): boolean;
13
13
  export declare function getErrorEntry(log: CoordinationLogEntry[]): CoordinationLogEntry | null;
14
+ export declare function hasRecursionErrorsCleared(log: CoordinationLogEntry[]): boolean;
14
15
  export declare function getNextPhaseFromLog(log: CoordinationLogEntry[]): RoutingDecision;
15
16
  export declare function summarizeCoordinationLog(log: CoordinationLogEntry[]): string;
@@ -8,6 +8,7 @@ exports.getBuilderOutput = getBuilderOutput;
8
8
  exports.getPhaseMetadata = getPhaseMetadata;
9
9
  exports.hasErrorInLog = hasErrorInLog;
10
10
  exports.getErrorEntry = getErrorEntry;
11
+ exports.hasRecursionErrorsCleared = hasRecursionErrorsCleared;
11
12
  exports.getNextPhaseFromLog = getNextPhaseFromLog;
12
13
  exports.summarizeCoordinationLog = summarizeCoordinationLog;
13
14
  function getLastCompletedPhase(log) {
@@ -48,9 +49,26 @@ function hasErrorInLog(log) {
48
49
  function getErrorEntry(log) {
49
50
  return log.find((entry) => entry.status === 'error') ?? null;
50
51
  }
52
+ function hasRecursionErrorsCleared(log) {
53
+ return log.some((entry) => entry.phase === 'state_management' &&
54
+ entry.summary.includes('Cleared') &&
55
+ entry.summary.includes('recursion'));
56
+ }
51
57
  function getNextPhaseFromLog(log) {
52
- if (hasErrorInLog(log)) {
53
- return 'responder';
58
+ const hasErrors = hasErrorInLog(log);
59
+ if (hasErrors) {
60
+ if (!hasRecursionErrorsCleared(log)) {
61
+ return 'responder';
62
+ }
63
+ const lastClearIndex = log.findLastIndex((entry) => entry.phase === 'state_management' &&
64
+ entry.summary.includes('Cleared') &&
65
+ entry.summary.includes('recursion'));
66
+ const hasErrorsAfterClear = log
67
+ .slice(lastClearIndex + 1)
68
+ .some((entry) => entry.status === 'error');
69
+ if (hasErrorsAfterClear) {
70
+ return 'responder';
71
+ }
54
72
  }
55
73
  const lastPhase = getLastCompletedPhase(log);
56
74
  if (lastPhase === 'discovery') {
@@ -1 +1 @@
1
- {"version":3,"file":"coordination-log.js","sourceRoot":"","sources":["../../src/utils/coordination-log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordination-log.js","sourceRoot":"","sources":["../../src/utils/coordination-log.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,12 @@ import { RemoveMessage } from '@langchain/core/messages';
4
4
  import type { Logger } from '@n8n/backend-common';
5
5
  import type { CoordinationLogEntry } from '../types/coordination';
6
6
  import type { SimpleWorkflow } from '../types/workflow';
7
- export type StateModificationAction = 'compact_messages' | 'delete_messages' | 'create_workflow_name' | 'auto_compact_messages' | 'cleanup_dangling' | 'continue';
7
+ export type StateModificationAction = 'compact_messages' | 'delete_messages' | 'create_workflow_name' | 'auto_compact_messages' | 'cleanup_dangling' | 'clear_error_state' | 'continue';
8
8
  export interface StateModifierInput {
9
9
  messages: BaseMessage[];
10
10
  workflowJSON: SimpleWorkflow;
11
11
  previousSummary?: string;
12
+ coordinationLog?: CoordinationLogEntry[];
12
13
  }
13
14
  export declare function determineStateAction(input: StateModifierInput, autoCompactThresholdTokens: number): StateModificationAction;
14
15
  export declare function handleCleanupDangling(messages: BaseMessage[], logger?: Logger): {
@@ -27,6 +28,9 @@ export declare function handleDeleteMessages(messages: BaseMessage[]): {
27
28
  coordinationLog: CoordinationLogEntry[];
28
29
  workflowOperations: [];
29
30
  };
31
+ export declare function handleClearErrorState(coordinationLog: CoordinationLogEntry[], logger?: Logger): {
32
+ coordinationLog: CoordinationLogEntry[];
33
+ };
30
34
  export declare function handleCreateWorkflowName(messages: BaseMessage[], workflowJSON: SimpleWorkflow, llm: BaseChatModel, logger?: Logger): Promise<{
31
35
  workflowJSON: SimpleWorkflow;
32
36
  }>;
@@ -4,6 +4,7 @@ exports.determineStateAction = determineStateAction;
4
4
  exports.handleCleanupDangling = handleCleanupDangling;
5
5
  exports.handleCompactMessages = handleCompactMessages;
6
6
  exports.handleDeleteMessages = handleDeleteMessages;
7
+ exports.handleClearErrorState = handleClearErrorState;
7
8
  exports.handleCreateWorkflowName = handleCreateWorkflowName;
8
9
  const messages_1 = require("@langchain/core/messages");
9
10
  const cleanup_dangling_tool_call_messages_1 = require("./cleanup-dangling-tool-call-messages");
@@ -11,8 +12,32 @@ const token_usage_1 = require("./token-usage");
11
12
  const conversation_compact_1 = require("../chains/conversation-compact");
12
13
  const workflow_name_1 = require("../chains/workflow-name");
13
14
  const coordination_1 = require("../types/coordination");
15
+ function hasUnclearedRecursionError(coordinationLog) {
16
+ let lastRecursionErrorIndex = -1;
17
+ for (let i = coordinationLog.length - 1; i >= 0; i--) {
18
+ const entry = coordinationLog[i];
19
+ if (entry.status !== 'error')
20
+ continue;
21
+ const errorMessage = entry.summary.toLowerCase();
22
+ if (errorMessage.includes('recursion') ||
23
+ errorMessage.includes('maximum number of steps') ||
24
+ errorMessage.includes('iteration limit')) {
25
+ lastRecursionErrorIndex = i;
26
+ break;
27
+ }
28
+ }
29
+ if (lastRecursionErrorIndex >= 0) {
30
+ const hasAlreadyCleared = coordinationLog
31
+ .slice(lastRecursionErrorIndex + 1)
32
+ .some((entry) => entry.phase === 'state_management' &&
33
+ entry.summary.includes('Cleared') &&
34
+ entry.summary.includes('recursion'));
35
+ return !hasAlreadyCleared;
36
+ }
37
+ return false;
38
+ }
14
39
  function determineStateAction(input, autoCompactThresholdTokens) {
15
- const { messages, workflowJSON } = input;
40
+ const { messages, workflowJSON, coordinationLog } = input;
16
41
  const danglingMessages = (0, cleanup_dangling_tool_call_messages_1.cleanupDanglingToolCallMessages)(messages);
17
42
  if (danglingMessages.length > 0) {
18
43
  return 'cleanup_dangling';
@@ -20,6 +45,9 @@ function determineStateAction(input, autoCompactThresholdTokens) {
20
45
  const lastHumanMessage = messages.findLast((m) => m instanceof messages_1.HumanMessage);
21
46
  if (!lastHumanMessage)
22
47
  return 'continue';
48
+ if (coordinationLog && hasUnclearedRecursionError(coordinationLog)) {
49
+ return 'clear_error_state';
50
+ }
23
51
  if (lastHumanMessage.content === '/compact') {
24
52
  return 'compact_messages';
25
53
  }
@@ -94,6 +122,23 @@ function handleDeleteMessages(messages) {
94
122
  workflowOperations: [],
95
123
  };
96
124
  }
125
+ function handleClearErrorState(coordinationLog, logger) {
126
+ const errorCount = coordinationLog.filter((entry) => entry.status === 'error').length;
127
+ if (errorCount > 0) {
128
+ logger?.info('Marking error state as cleared to allow continuation', { errorCount });
129
+ }
130
+ return {
131
+ coordinationLog: [
132
+ {
133
+ phase: 'state_management',
134
+ status: 'completed',
135
+ timestamp: Date.now(),
136
+ summary: `Cleared ${errorCount} recursion error ${errorCount === 1 ? 'entry' : 'entries'} to allow continuation`,
137
+ metadata: (0, coordination_1.createStateManagementMetadata)({ action: 'clear' }),
138
+ },
139
+ ],
140
+ };
141
+ }
97
142
  async function handleCreateWorkflowName(messages, workflowJSON, llm, logger) {
98
143
  if (messages.length === 1 && messages[0] instanceof messages_1.HumanMessage) {
99
144
  const initialMessage = messages[0];
@@ -1 +1 @@
1
- {"version":3,"file":"state-modifier.js","sourceRoot":"","sources":["../../src/utils/state-modifier.ts"],"names":[],"mappings":";;AA+BA,oDAwCC;AAMD,sDAWC;AASD,sDA0CC;AAKD,oDAwBC;AAKD,4DAqBC;AAhMD,uDAAuE;AAGvE,+FAAwF;AACxF,+CAA+D;AAC/D,yEAA0E;AAC1E,2DAA4D;AAE5D,wDAAsE;AAqBtE,SAAgB,oBAAoB,CACnC,KAAyB,EACzB,0BAAkC;IAElC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAGzC,MAAM,gBAAgB,GAAG,IAAA,qEAA+B,EAAC,QAAQ,CAAC,CAAC;IACnE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,uBAAY,CAAC,CAAC;IAC7E,IAAI,CAAC,gBAAgB;QAAE,OAAO,UAAU,CAAC;IAGzC,IAAI,gBAAgB,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC7C,OAAO,kBAAkB,CAAC;IAC3B,CAAC;IAGD,IAAI,gBAAgB,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3C,OAAO,iBAAiB,CAAC;IAC1B,CAAC;IAGD,MAAM,YAAY,GAAG,YAAY,EAAE,IAAI,CAAC;IACxC,MAAM,WAAW,GAAG,YAAY,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,CAAC,YAAY,IAAI,sBAAsB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjF,IAAI,aAAa,IAAI,WAAW,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,OAAO,sBAAsB,CAAC;IAC/B,CAAC;IAGD,MAAM,eAAe,GAAG,IAAA,4CAA8B,EAAC,QAAQ,CAAC,CAAC;IACjE,IAAI,eAAe,GAAG,0BAA0B,EAAE,CAAC;QAClD,OAAO,uBAAuB,CAAC;IAChC,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC;AAMD,SAAgB,qBAAqB,CACpC,QAAuB,EACvB,MAAe;IAEf,MAAM,gBAAgB,GAAG,IAAA,qEAA+B,EAAC,QAAQ,CAAC,CAAC;IACnE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,CAAC,yCAAyC,EAAE;YACvD,KAAK,EAAE,gBAAgB,CAAC,MAAM;SAC9B,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;AACvC,CAAC;AASM,KAAK,UAAU,qBAAqB,CAC1C,QAAuB,EACvB,eAAuB,EACvB,GAAkB,EAClB,aAAsB;IAMtB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,uBAAY,CAAC,CAAC;IAC7E,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,IAAA,+CAAwB,EAAC,GAAG,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IAIzF,MAAM,WAAW,GAAkB;QAClC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,wBAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC;QACxD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,uBAAY,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACnF,CAAC;IAEF,OAAO;QACN,eAAe,EAAE,iBAAiB,CAAC,YAAY;QAC/C,QAAQ,EAAE,WAAW;QACrB,eAAe,EAAE;YAChB;gBACC,KAAK,EAAE,kBAAkB;gBACzB,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,OAAO,EAAE,aAAa;oBACrB,CAAC,CAAC,gDAAgD;oBAClD,CAAC,CAAC,yCAAyC;gBAC5C,QAAQ,EAAE,IAAA,4CAA6B,EAAC;oBACvC,MAAM,EAAE,SAAS;oBACjB,eAAe,EAAE,QAAQ,CAAC,MAAM;iBAChC,CAAC;aACF;SACD;KACD,CAAC;AACH,CAAC;AAKD,SAAgB,oBAAoB,CAAC,QAAuB;IAQ3D,OAAO;QACN,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,wBAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC;QAC/D,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACtD,eAAe,EAAE,EAAE;QACnB,gBAAgB,EAAE,IAAI;QACtB,eAAe,EAAE;YAChB;gBACC,KAAK,EAAE,kBAAkB;gBACzB,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,OAAO,EAAE,oCAAoC;gBAC7C,QAAQ,EAAE,IAAA,4CAA6B,EAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;aAC5D;SACD;QACD,kBAAkB,EAAE,EAAE;KACtB,CAAC;AACH,CAAC;AAKM,KAAK,UAAU,wBAAwB,CAC7C,QAAuB,EACvB,YAA4B,EAC5B,GAAkB,EAClB,MAAe;IAEf,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,YAAY,uBAAY,EAAE,CAAC;QAClE,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,OAAO,cAAc,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,EAAE,KAAK,CAAC,4EAA4E,CAAC,CAAC;YAC5F,OAAO,EAAE,YAAY,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,EAAE,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,iCAAiB,EAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QAEtE,OAAO;YACN,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE;SACvC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"state-modifier.js","sourceRoot":"","sources":["../../src/utils/state-modifier.ts"],"names":[],"mappings":"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"}