feat: remove unnecessary 5-operation limit from n8n_update_partial_workflow

The 5-operation limit was overly conservative and unnecessary. Analysis showed:
- Workflow is cloned before modifications (no original mutation)
- All operations validated before any are applied (true atomicity)
- First error causes immediate return (no partial state possible)
- Two-pass processing handles dependencies correctly

Changes:
- Remove hard-coded 5-operation limit check from workflow-diff-engine.ts
- Update tool descriptions and documentation to reflect unlimited operations
- Add tests verifying 50 and 100+ operations work successfully
- Add example showing 26 operations in single request

The system already ensures complete transactional integrity regardless of
operation count. Bottleneck is workflow size, not operation count.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
czlonkowski
2025-09-24 14:42:17 +02:00
parent ceb082efca
commit 60f78d5783
5 changed files with 239 additions and 26 deletions

View File

@@ -41,17 +41,6 @@ export class WorkflowDiffEngine {
request: WorkflowDiffRequest
): Promise<WorkflowDiffResult> {
try {
// Limit operations to keep complexity manageable
if (request.operations.length > 5) {
return {
success: false,
errors: [{
operation: -1,
message: 'Too many operations. Maximum 5 operations allowed per request to ensure transactional integrity.'
}]
};
}
// Clone workflow to avoid modifying original
const workflowCopy = JSON.parse(JSON.stringify(workflow));