mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-01-30 06:22:04 +00:00
fix: add smart parameters (branch, case, from, to) to Zod schema
The smart parameters implementation was incomplete - while the diff engine correctly handled branch and case parameters, the Zod schema in handlers-workflow-diff.ts was stripping them out before they reached the engine. Found by n8n-mcp-tester: branch='false' parameter was being stripped, causing connections to default to sourceIndex=0 instead of sourceIndex=1. Added to Zod schema: - branch: z.enum(['true', 'false']).optional() - For IF nodes - case: z.number().optional() - For Switch nodes - from: z.string().optional() - For rewireConnection operation - to: z.string().optional() - For rewireConnection operation All 141 tests passing. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -27,10 +27,15 @@ const workflowDiffSchema = z.object({
|
||||
// Connection operations
|
||||
source: z.string().optional(),
|
||||
target: z.string().optional(),
|
||||
from: z.string().optional(), // For rewireConnection
|
||||
to: z.string().optional(), // For rewireConnection
|
||||
sourceOutput: z.string().optional(),
|
||||
targetInput: z.string().optional(),
|
||||
sourceIndex: z.number().optional(),
|
||||
targetIndex: z.number().optional(),
|
||||
// Smart parameters (Phase 1 UX improvement)
|
||||
branch: z.enum(['true', 'false']).optional(),
|
||||
case: z.number().optional(),
|
||||
ignoreErrors: z.boolean().optional(),
|
||||
// Connection cleanup operations
|
||||
dryRun: z.boolean().optional(),
|
||||
|
||||
Reference in New Issue
Block a user