mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-02-06 21:43:07 +00:00
feat: n8n_deploy_template deploy-first with auto-fix (v2.27.2) (#457)
* feat: n8n_deploy_template deploy-first with auto-fix (v2.27.2) Improved template deployment to deploy first, then automatically fix common issues. This dramatically improves deployment success rates for templates with expression format issues. Key Changes: - Deploy-first behavior: templates deployed before validation - Auto-fix runs automatically after deployment (configurable via `autoFix`) - Returns `fixesApplied` array showing all corrections made - Fixed expression validator "nested expressions" false positive - Fixed Zod schema missing `typeversion-upgrade` and `version-migration` fix types Testing: 87% deployment success rate across 15 diverse templates 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en * fix: address code review findings for deploy template Code review fixes: - CRITICAL: Update test schema to use `autoFix` instead of old `validate` parameter - WARNING: Add `AppliedFix` and `AutofixResultData` interfaces for type safety - WARNING: Add `autoFixStatus` field to response (success/failed/skipped) - WARNING: Report auto-fix failure in response message Changes: - tests/unit/mcp/handlers-deploy-template.test.ts: Fixed schema and test cases - src/mcp/handlers-n8n-manager.ts: Added type definitions, autoFixStatus tracking - src/mcp/tool-docs/workflow_management/n8n-deploy-template.ts: Updated docs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
committed by
GitHub
parent
7d9b456887
commit
ddf9556759
@@ -10,7 +10,7 @@ const deployTemplateSchema = z.object({
|
||||
templateId: z.number().positive().int(),
|
||||
name: z.string().optional(),
|
||||
autoUpgradeVersions: z.boolean().default(true),
|
||||
validate: z.boolean().default(true),
|
||||
autoFix: z.boolean().default(true),
|
||||
stripCredentials: z.boolean().default(true)
|
||||
});
|
||||
|
||||
@@ -78,11 +78,11 @@ describe('handleDeployTemplate Schema Validation', () => {
|
||||
}
|
||||
});
|
||||
|
||||
it('should default validate to true', () => {
|
||||
it('should default autoFix to true', () => {
|
||||
const result = deployTemplateSchema.safeParse({ templateId: 123 });
|
||||
expect(result.success).toBe(true);
|
||||
if (result.success) {
|
||||
expect(result.data.validate).toBe(true);
|
||||
expect(result.data.autoFix).toBe(true);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -99,7 +99,7 @@ describe('handleDeployTemplate Schema Validation', () => {
|
||||
templateId: 2776,
|
||||
name: 'My Deployed Workflow',
|
||||
autoUpgradeVersions: false,
|
||||
validate: false,
|
||||
autoFix: false,
|
||||
stripCredentials: false
|
||||
});
|
||||
|
||||
@@ -108,7 +108,7 @@ describe('handleDeployTemplate Schema Validation', () => {
|
||||
expect(result.data.templateId).toBe(2776);
|
||||
expect(result.data.name).toBe('My Deployed Workflow');
|
||||
expect(result.data.autoUpgradeVersions).toBe(false);
|
||||
expect(result.data.validate).toBe(false);
|
||||
expect(result.data.autoFix).toBe(false);
|
||||
expect(result.data.stripCredentials).toBe(false);
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user