mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-01-30 06:22:04 +00:00
CRITICAL BUG FIX: NodeTypeNormalizer.normalizeToFullForm() converts TO SHORT form (nodes-langchain.*), but all validation code compared against FULL form (@n8n/n8n-nodes-langchain.*). This caused ALL AI validation to be silently skipped. Impact: - Missing language model detection: NEVER triggered - AI tool connection detection: NEVER triggered - Streaming mode validation: NEVER triggered - AI tool sub-node validation: NEVER triggered ROOT CAUSE: Line 348 in ai-node-validator.ts (and 19 other locations): if (normalizedType === '@n8n/n8n-nodes-langchain.agent') // FULL form But normalizedType is 'nodes-langchain.agent' (SHORT form) Result: Comparison always FALSE, validation never runs FIXES: 1. ai-node-validator.ts (7 locations): - Lines 551, 557, 563: validateAISpecificNodes comparisons - Line 348: checkIfStreamingTarget comparison - Lines 417, 444: validateChatTrigger comparisons - Lines 589-591: hasAINodes array - Lines 606-608, 612: getAINodeCategory comparisons 2. ai-tool-validators.ts (14 locations): - Lines 980-991: AI_TOOL_VALIDATORS keys (13 validators) - Lines 1015-1037: validateAIToolSubNode switch cases (13 cases) 3. ENHANCED streaming validation: - Added validation for AI Agent's own streamResponse setting - Previously only checked streaming FROM Chat Trigger - Now validates BOTH scenarios (lines 259-276) VERIFICATION: - All 25 AI validator unit tests: ✅ PASS - Debug test (missing LM): ✅ PASS - Debug test (AI tools): ✅ PASS - Debug test (streaming): ✅ PASS Resolves: - HIGH-01: Missing language model detection (was never running) - HIGH-04: AI tool connection detection (was never running) - HIGH-08: Streaming mode validation (was never running + incomplete) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
58 MiB
58 MiB
The file is too large to be shown.
View Raw