#
tokens: 60237/50000 1/630 files (page 47/48)
lines: off (toggle) GitHub
raw markdown copy
This is page 47 of 48. Use http://codebase.md/czlonkowski/n8n-mcp?page={x} to view the full context.

# Directory Structure

```
├── _config.yml
├── .claude
│   └── agents
│       ├── code-reviewer.md
│       ├── context-manager.md
│       ├── debugger.md
│       ├── deployment-engineer.md
│       ├── mcp-backend-engineer.md
│       ├── n8n-mcp-tester.md
│       ├── technical-researcher.md
│       └── test-automator.md
├── .dockerignore
├── .env.docker
├── .env.example
├── .env.n8n.example
├── .env.test
├── .env.test.example
├── .github
│   ├── ABOUT.md
│   ├── BENCHMARK_THRESHOLDS.md
│   ├── FUNDING.yml
│   ├── gh-pages.yml
│   ├── secret_scanning.yml
│   └── workflows
│       ├── benchmark-pr.yml
│       ├── benchmark.yml
│       ├── docker-build-fast.yml
│       ├── docker-build-n8n.yml
│       ├── docker-build.yml
│       ├── release.yml
│       ├── test.yml
│       └── update-n8n-deps.yml
├── .gitignore
├── .npmignore
├── ATTRIBUTION.md
├── CHANGELOG.md
├── CLAUDE.md
├── codecov.yml
├── coverage.json
├── data
│   ├── .gitkeep
│   ├── nodes.db
│   ├── nodes.db-shm
│   ├── nodes.db-wal
│   └── templates.db
├── deploy
│   └── quick-deploy-n8n.sh
├── docker
│   ├── docker-entrypoint.sh
│   ├── n8n-mcp
│   ├── parse-config.js
│   └── README.md
├── docker-compose.buildkit.yml
├── docker-compose.extract.yml
├── docker-compose.n8n.yml
├── docker-compose.override.yml.example
├── docker-compose.test-n8n.yml
├── docker-compose.yml
├── Dockerfile
├── Dockerfile.railway
├── Dockerfile.test
├── docs
│   ├── AUTOMATED_RELEASES.md
│   ├── BENCHMARKS.md
│   ├── bugfix-onSessionCreated-event.md
│   ├── CHANGELOG.md
│   ├── CLAUDE_CODE_SETUP.md
│   ├── CLAUDE_INTERVIEW.md
│   ├── CODECOV_SETUP.md
│   ├── CODEX_SETUP.md
│   ├── CURSOR_SETUP.md
│   ├── DEPENDENCY_UPDATES.md
│   ├── DOCKER_README.md
│   ├── DOCKER_TROUBLESHOOTING.md
│   ├── FINAL_AI_VALIDATION_SPEC.md
│   ├── FLEXIBLE_INSTANCE_CONFIGURATION.md
│   ├── HTTP_DEPLOYMENT.md
│   ├── img
│   │   ├── cc_command.png
│   │   ├── cc_connected.png
│   │   ├── codex_connected.png
│   │   ├── cursor_tut.png
│   │   ├── Railway_api.png
│   │   ├── Railway_server_address.png
│   │   ├── vsc_ghcp_chat_agent_mode.png
│   │   ├── vsc_ghcp_chat_instruction_files.png
│   │   ├── vsc_ghcp_chat_thinking_tool.png
│   │   └── windsurf_tut.png
│   ├── INSTALLATION.md
│   ├── LIBRARY_USAGE.md
│   ├── local
│   │   ├── DEEP_DIVE_ANALYSIS_2025-10-02.md
│   │   ├── DEEP_DIVE_ANALYSIS_README.md
│   │   ├── Deep_dive_p1_p2.md
│   │   ├── integration-testing-plan.md
│   │   ├── integration-tests-phase1-summary.md
│   │   ├── N8N_AI_WORKFLOW_BUILDER_ANALYSIS.md
│   │   ├── P0_IMPLEMENTATION_PLAN.md
│   │   └── TEMPLATE_MINING_ANALYSIS.md
│   ├── MCP_ESSENTIALS_README.md
│   ├── MCP_QUICK_START_GUIDE.md
│   ├── MULTI_APP_INTEGRATION.md
│   ├── N8N_DEPLOYMENT.md
│   ├── RAILWAY_DEPLOYMENT.md
│   ├── README_CLAUDE_SETUP.md
│   ├── README.md
│   ├── tools-documentation-usage.md
│   ├── VS_CODE_PROJECT_SETUP.md
│   ├── WINDSURF_SETUP.md
│   └── workflow-diff-examples.md
├── examples
│   └── enhanced-documentation-demo.js
├── fetch_log.txt
├── IMPLEMENTATION_GUIDE.md
├── LICENSE
├── MEMORY_N8N_UPDATE.md
├── MEMORY_TEMPLATE_UPDATE.md
├── monitor_fetch.sh
├── MVP_DEPLOYMENT_PLAN.md
├── N8N_HTTP_STREAMABLE_SETUP.md
├── n8n-nodes.db
├── P0-R3-TEST-PLAN.md
├── package-lock.json
├── package.json
├── package.runtime.json
├── PRIVACY.md
├── railway.json
├── README.md
├── renovate.json
├── scripts
│   ├── analyze-optimization.sh
│   ├── audit-schema-coverage.ts
│   ├── build-optimized.sh
│   ├── compare-benchmarks.js
│   ├── demo-optimization.sh
│   ├── deploy-http.sh
│   ├── deploy-to-vm.sh
│   ├── export-webhook-workflows.ts
│   ├── extract-changelog.js
│   ├── extract-from-docker.js
│   ├── extract-nodes-docker.sh
│   ├── extract-nodes-simple.sh
│   ├── format-benchmark-results.js
│   ├── generate-benchmark-stub.js
│   ├── generate-detailed-reports.js
│   ├── generate-test-summary.js
│   ├── http-bridge.js
│   ├── mcp-http-client.js
│   ├── migrate-nodes-fts.ts
│   ├── migrate-tool-docs.ts
│   ├── n8n-docs-mcp.service
│   ├── nginx-n8n-mcp.conf
│   ├── prebuild-fts5.ts
│   ├── prepare-release.js
│   ├── publish-npm-quick.sh
│   ├── publish-npm.sh
│   ├── quick-test.ts
│   ├── run-benchmarks-ci.js
│   ├── sync-runtime-version.js
│   ├── test-ai-validation-debug.ts
│   ├── test-code-node-enhancements.ts
│   ├── test-code-node-fixes.ts
│   ├── test-docker-config.sh
│   ├── test-docker-fingerprint.ts
│   ├── test-docker-optimization.sh
│   ├── test-docker.sh
│   ├── test-empty-connection-validation.ts
│   ├── test-error-message-tracking.ts
│   ├── test-error-output-validation.ts
│   ├── test-error-validation.js
│   ├── test-essentials.ts
│   ├── test-expression-code-validation.ts
│   ├── test-expression-format-validation.js
│   ├── test-fts5-search.ts
│   ├── test-fuzzy-fix.ts
│   ├── test-fuzzy-simple.ts
│   ├── test-helpers-validation.ts
│   ├── test-http-search.ts
│   ├── test-http.sh
│   ├── test-jmespath-validation.ts
│   ├── test-multi-tenant-simple.ts
│   ├── test-multi-tenant.ts
│   ├── test-n8n-integration.sh
│   ├── test-node-info.js
│   ├── test-node-type-validation.ts
│   ├── test-nodes-base-prefix.ts
│   ├── test-operation-validation.ts
│   ├── test-optimized-docker.sh
│   ├── test-release-automation.js
│   ├── test-search-improvements.ts
│   ├── test-security.ts
│   ├── test-single-session.sh
│   ├── test-sqljs-triggers.ts
│   ├── test-telemetry-debug.ts
│   ├── test-telemetry-direct.ts
│   ├── test-telemetry-env.ts
│   ├── test-telemetry-integration.ts
│   ├── test-telemetry-no-select.ts
│   ├── test-telemetry-security.ts
│   ├── test-telemetry-simple.ts
│   ├── test-typeversion-validation.ts
│   ├── test-url-configuration.ts
│   ├── test-user-id-persistence.ts
│   ├── test-webhook-validation.ts
│   ├── test-workflow-insert.ts
│   ├── test-workflow-sanitizer.ts
│   ├── test-workflow-tracking-debug.ts
│   ├── update-and-publish-prep.sh
│   ├── update-n8n-deps.js
│   ├── update-readme-version.js
│   ├── vitest-benchmark-json-reporter.js
│   └── vitest-benchmark-reporter.ts
├── SECURITY.md
├── src
│   ├── config
│   │   └── n8n-api.ts
│   ├── data
│   │   └── canonical-ai-tool-examples.json
│   ├── database
│   │   ├── database-adapter.ts
│   │   ├── migrations
│   │   │   └── add-template-node-configs.sql
│   │   ├── node-repository.ts
│   │   ├── nodes.db
│   │   ├── schema-optimized.sql
│   │   └── schema.sql
│   ├── errors
│   │   └── validation-service-error.ts
│   ├── http-server-single-session.ts
│   ├── http-server.ts
│   ├── index.ts
│   ├── loaders
│   │   └── node-loader.ts
│   ├── mappers
│   │   └── docs-mapper.ts
│   ├── mcp
│   │   ├── handlers-n8n-manager.ts
│   │   ├── handlers-workflow-diff.ts
│   │   ├── index.ts
│   │   ├── server.ts
│   │   ├── stdio-wrapper.ts
│   │   ├── tool-docs
│   │   │   ├── configuration
│   │   │   │   ├── get-node-as-tool-info.ts
│   │   │   │   ├── get-node-documentation.ts
│   │   │   │   ├── get-node-essentials.ts
│   │   │   │   ├── get-node-info.ts
│   │   │   │   ├── get-property-dependencies.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── search-node-properties.ts
│   │   │   ├── discovery
│   │   │   │   ├── get-database-statistics.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── list-ai-tools.ts
│   │   │   │   ├── list-nodes.ts
│   │   │   │   └── search-nodes.ts
│   │   │   ├── guides
│   │   │   │   ├── ai-agents-guide.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── system
│   │   │   │   ├── index.ts
│   │   │   │   ├── n8n-diagnostic.ts
│   │   │   │   ├── n8n-health-check.ts
│   │   │   │   ├── n8n-list-available-tools.ts
│   │   │   │   └── tools-documentation.ts
│   │   │   ├── templates
│   │   │   │   ├── get-template.ts
│   │   │   │   ├── get-templates-for-task.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── list-node-templates.ts
│   │   │   │   ├── list-tasks.ts
│   │   │   │   ├── search-templates-by-metadata.ts
│   │   │   │   └── search-templates.ts
│   │   │   ├── types.ts
│   │   │   ├── validation
│   │   │   │   ├── index.ts
│   │   │   │   ├── validate-node-minimal.ts
│   │   │   │   ├── validate-node-operation.ts
│   │   │   │   ├── validate-workflow-connections.ts
│   │   │   │   ├── validate-workflow-expressions.ts
│   │   │   │   └── validate-workflow.ts
│   │   │   └── workflow_management
│   │   │       ├── index.ts
│   │   │       ├── n8n-autofix-workflow.ts
│   │   │       ├── n8n-create-workflow.ts
│   │   │       ├── n8n-delete-execution.ts
│   │   │       ├── n8n-delete-workflow.ts
│   │   │       ├── n8n-get-execution.ts
│   │   │       ├── n8n-get-workflow-details.ts
│   │   │       ├── n8n-get-workflow-minimal.ts
│   │   │       ├── n8n-get-workflow-structure.ts
│   │   │       ├── n8n-get-workflow.ts
│   │   │       ├── n8n-list-executions.ts
│   │   │       ├── n8n-list-workflows.ts
│   │   │       ├── n8n-trigger-webhook-workflow.ts
│   │   │       ├── n8n-update-full-workflow.ts
│   │   │       ├── n8n-update-partial-workflow.ts
│   │   │       └── n8n-validate-workflow.ts
│   │   ├── tools-documentation.ts
│   │   ├── tools-n8n-friendly.ts
│   │   ├── tools-n8n-manager.ts
│   │   ├── tools.ts
│   │   └── workflow-examples.ts
│   ├── mcp-engine.ts
│   ├── mcp-tools-engine.ts
│   ├── n8n
│   │   ├── MCPApi.credentials.ts
│   │   └── MCPNode.node.ts
│   ├── parsers
│   │   ├── node-parser.ts
│   │   ├── property-extractor.ts
│   │   └── simple-parser.ts
│   ├── scripts
│   │   ├── debug-http-search.ts
│   │   ├── extract-from-docker.ts
│   │   ├── fetch-templates-robust.ts
│   │   ├── fetch-templates.ts
│   │   ├── rebuild-database.ts
│   │   ├── rebuild-optimized.ts
│   │   ├── rebuild.ts
│   │   ├── sanitize-templates.ts
│   │   ├── seed-canonical-ai-examples.ts
│   │   ├── test-autofix-documentation.ts
│   │   ├── test-autofix-workflow.ts
│   │   ├── test-execution-filtering.ts
│   │   ├── test-node-suggestions.ts
│   │   ├── test-protocol-negotiation.ts
│   │   ├── test-summary.ts
│   │   ├── test-webhook-autofix.ts
│   │   ├── validate.ts
│   │   └── validation-summary.ts
│   ├── services
│   │   ├── ai-node-validator.ts
│   │   ├── ai-tool-validators.ts
│   │   ├── confidence-scorer.ts
│   │   ├── config-validator.ts
│   │   ├── enhanced-config-validator.ts
│   │   ├── example-generator.ts
│   │   ├── execution-processor.ts
│   │   ├── expression-format-validator.ts
│   │   ├── expression-validator.ts
│   │   ├── n8n-api-client.ts
│   │   ├── n8n-validation.ts
│   │   ├── node-documentation-service.ts
│   │   ├── node-similarity-service.ts
│   │   ├── node-specific-validators.ts
│   │   ├── operation-similarity-service.ts
│   │   ├── property-dependencies.ts
│   │   ├── property-filter.ts
│   │   ├── resource-similarity-service.ts
│   │   ├── sqlite-storage-service.ts
│   │   ├── task-templates.ts
│   │   ├── universal-expression-validator.ts
│   │   ├── workflow-auto-fixer.ts
│   │   ├── workflow-diff-engine.ts
│   │   └── workflow-validator.ts
│   ├── telemetry
│   │   ├── batch-processor.ts
│   │   ├── config-manager.ts
│   │   ├── early-error-logger.ts
│   │   ├── error-sanitization-utils.ts
│   │   ├── error-sanitizer.ts
│   │   ├── event-tracker.ts
│   │   ├── event-validator.ts
│   │   ├── index.ts
│   │   ├── performance-monitor.ts
│   │   ├── rate-limiter.ts
│   │   ├── startup-checkpoints.ts
│   │   ├── telemetry-error.ts
│   │   ├── telemetry-manager.ts
│   │   ├── telemetry-types.ts
│   │   └── workflow-sanitizer.ts
│   ├── templates
│   │   ├── batch-processor.ts
│   │   ├── metadata-generator.ts
│   │   ├── README.md
│   │   ├── template-fetcher.ts
│   │   ├── template-repository.ts
│   │   └── template-service.ts
│   ├── types
│   │   ├── index.ts
│   │   ├── instance-context.ts
│   │   ├── n8n-api.ts
│   │   ├── node-types.ts
│   │   ├── session-restoration.ts
│   │   └── workflow-diff.ts
│   └── utils
│       ├── auth.ts
│       ├── bridge.ts
│       ├── cache-utils.ts
│       ├── console-manager.ts
│       ├── documentation-fetcher.ts
│       ├── enhanced-documentation-fetcher.ts
│       ├── error-handler.ts
│       ├── example-generator.ts
│       ├── fixed-collection-validator.ts
│       ├── logger.ts
│       ├── mcp-client.ts
│       ├── n8n-errors.ts
│       ├── node-source-extractor.ts
│       ├── node-type-normalizer.ts
│       ├── node-type-utils.ts
│       ├── node-utils.ts
│       ├── npm-version-checker.ts
│       ├── protocol-version.ts
│       ├── simple-cache.ts
│       ├── ssrf-protection.ts
│       ├── template-node-resolver.ts
│       ├── template-sanitizer.ts
│       ├── url-detector.ts
│       ├── validation-schemas.ts
│       └── version.ts
├── supabase-telemetry-aggregation.sql
├── TELEMETRY_PRUNING_GUIDE.md
├── telemetry-pruning-analysis.md
├── test-output.txt
├── test-reinit-fix.sh
├── tests
│   ├── __snapshots__
│   │   └── .gitkeep
│   ├── auth.test.ts
│   ├── benchmarks
│   │   ├── database-queries.bench.ts
│   │   ├── index.ts
│   │   ├── mcp-tools.bench.ts
│   │   ├── mcp-tools.bench.ts.disabled
│   │   ├── mcp-tools.bench.ts.skip
│   │   ├── node-loading.bench.ts.disabled
│   │   ├── README.md
│   │   ├── search-operations.bench.ts.disabled
│   │   └── validation-performance.bench.ts.disabled
│   ├── bridge.test.ts
│   ├── comprehensive-extraction-test.js
│   ├── data
│   │   └── .gitkeep
│   ├── debug-slack-doc.js
│   ├── demo-enhanced-documentation.js
│   ├── docker-tests-README.md
│   ├── error-handler.test.ts
│   ├── examples
│   │   └── using-database-utils.test.ts
│   ├── extracted-nodes-db
│   │   ├── database-import.json
│   │   ├── extraction-report.json
│   │   ├── insert-nodes.sql
│   │   ├── n8n-nodes-base__Airtable.json
│   │   ├── n8n-nodes-base__Discord.json
│   │   ├── n8n-nodes-base__Function.json
│   │   ├── n8n-nodes-base__HttpRequest.json
│   │   ├── n8n-nodes-base__If.json
│   │   ├── n8n-nodes-base__Slack.json
│   │   ├── n8n-nodes-base__SplitInBatches.json
│   │   └── n8n-nodes-base__Webhook.json
│   ├── factories
│   │   ├── node-factory.ts
│   │   └── property-definition-factory.ts
│   ├── fixtures
│   │   ├── .gitkeep
│   │   ├── database
│   │   │   └── test-nodes.json
│   │   ├── factories
│   │   │   ├── node.factory.ts
│   │   │   └── parser-node.factory.ts
│   │   └── template-configs.ts
│   ├── helpers
│   │   └── env-helpers.ts
│   ├── http-server-auth.test.ts
│   ├── integration
│   │   ├── ai-validation
│   │   │   ├── ai-agent-validation.test.ts
│   │   │   ├── ai-tool-validation.test.ts
│   │   │   ├── chat-trigger-validation.test.ts
│   │   │   ├── e2e-validation.test.ts
│   │   │   ├── helpers.ts
│   │   │   ├── llm-chain-validation.test.ts
│   │   │   ├── README.md
│   │   │   └── TEST_REPORT.md
│   │   ├── ci
│   │   │   └── database-population.test.ts
│   │   ├── database
│   │   │   ├── connection-management.test.ts
│   │   │   ├── empty-database.test.ts
│   │   │   ├── fts5-search.test.ts
│   │   │   ├── node-fts5-search.test.ts
│   │   │   ├── node-repository.test.ts
│   │   │   ├── performance.test.ts
│   │   │   ├── template-node-configs.test.ts
│   │   │   ├── template-repository.test.ts
│   │   │   ├── test-utils.ts
│   │   │   └── transactions.test.ts
│   │   ├── database-integration.test.ts
│   │   ├── docker
│   │   │   ├── docker-config.test.ts
│   │   │   ├── docker-entrypoint.test.ts
│   │   │   └── test-helpers.ts
│   │   ├── flexible-instance-config.test.ts
│   │   ├── mcp
│   │   │   └── template-examples-e2e.test.ts
│   │   ├── mcp-protocol
│   │   │   ├── basic-connection.test.ts
│   │   │   ├── error-handling.test.ts
│   │   │   ├── performance.test.ts
│   │   │   ├── protocol-compliance.test.ts
│   │   │   ├── README.md
│   │   │   ├── session-management.test.ts
│   │   │   ├── test-helpers.ts
│   │   │   ├── tool-invocation.test.ts
│   │   │   └── workflow-error-validation.test.ts
│   │   ├── msw-setup.test.ts
│   │   ├── n8n-api
│   │   │   ├── executions
│   │   │   │   ├── delete-execution.test.ts
│   │   │   │   ├── get-execution.test.ts
│   │   │   │   ├── list-executions.test.ts
│   │   │   │   └── trigger-webhook.test.ts
│   │   │   ├── scripts
│   │   │   │   └── cleanup-orphans.ts
│   │   │   ├── system
│   │   │   │   ├── diagnostic.test.ts
│   │   │   │   ├── health-check.test.ts
│   │   │   │   └── list-tools.test.ts
│   │   │   ├── test-connection.ts
│   │   │   ├── types
│   │   │   │   └── mcp-responses.ts
│   │   │   ├── utils
│   │   │   │   ├── cleanup-helpers.ts
│   │   │   │   ├── credentials.ts
│   │   │   │   ├── factories.ts
│   │   │   │   ├── fixtures.ts
│   │   │   │   ├── mcp-context.ts
│   │   │   │   ├── n8n-client.ts
│   │   │   │   ├── node-repository.ts
│   │   │   │   ├── response-types.ts
│   │   │   │   ├── test-context.ts
│   │   │   │   └── webhook-workflows.ts
│   │   │   └── workflows
│   │   │       ├── autofix-workflow.test.ts
│   │   │       ├── create-workflow.test.ts
│   │   │       ├── delete-workflow.test.ts
│   │   │       ├── get-workflow-details.test.ts
│   │   │       ├── get-workflow-minimal.test.ts
│   │   │       ├── get-workflow-structure.test.ts
│   │   │       ├── get-workflow.test.ts
│   │   │       ├── list-workflows.test.ts
│   │   │       ├── smart-parameters.test.ts
│   │   │       ├── update-partial-workflow.test.ts
│   │   │       ├── update-workflow.test.ts
│   │   │       └── validate-workflow.test.ts
│   │   ├── security
│   │   │   ├── command-injection-prevention.test.ts
│   │   │   └── rate-limiting.test.ts
│   │   ├── session
│   │   │   └── test-onSessionCreated-event.ts
│   │   ├── session-lifecycle-retry.test.ts
│   │   ├── session-persistence.test.ts
│   │   ├── session-restoration-warmstart.test.ts
│   │   ├── setup
│   │   │   ├── integration-setup.ts
│   │   │   └── msw-test-server.ts
│   │   ├── telemetry
│   │   │   ├── docker-user-id-stability.test.ts
│   │   │   └── mcp-telemetry.test.ts
│   │   ├── templates
│   │   │   └── metadata-operations.test.ts
│   │   └── workflow-creation-node-type-format.test.ts
│   ├── logger.test.ts
│   ├── MOCKING_STRATEGY.md
│   ├── mocks
│   │   ├── n8n-api
│   │   │   ├── data
│   │   │   │   ├── credentials.ts
│   │   │   │   ├── executions.ts
│   │   │   │   └── workflows.ts
│   │   │   ├── handlers.ts
│   │   │   └── index.ts
│   │   └── README.md
│   ├── node-storage-export.json
│   ├── setup
│   │   ├── global-setup.ts
│   │   ├── msw-setup.ts
│   │   ├── TEST_ENV_DOCUMENTATION.md
│   │   └── test-env.ts
│   ├── test-database-extraction.js
│   ├── test-direct-extraction.js
│   ├── test-enhanced-documentation.js
│   ├── test-enhanced-integration.js
│   ├── test-mcp-extraction.js
│   ├── test-mcp-server-extraction.js
│   ├── test-mcp-tools-integration.js
│   ├── test-node-documentation-service.js
│   ├── test-node-list.js
│   ├── test-package-info.js
│   ├── test-parsing-operations.js
│   ├── test-slack-node-complete.js
│   ├── test-small-rebuild.js
│   ├── test-sqlite-search.js
│   ├── test-storage-system.js
│   ├── unit
│   │   ├── __mocks__
│   │   │   ├── n8n-nodes-base.test.ts
│   │   │   ├── n8n-nodes-base.ts
│   │   │   └── README.md
│   │   ├── database
│   │   │   ├── __mocks__
│   │   │   │   └── better-sqlite3.ts
│   │   │   ├── database-adapter-unit.test.ts
│   │   │   ├── node-repository-core.test.ts
│   │   │   ├── node-repository-operations.test.ts
│   │   │   ├── node-repository-outputs.test.ts
│   │   │   ├── README.md
│   │   │   └── template-repository-core.test.ts
│   │   ├── docker
│   │   │   ├── config-security.test.ts
│   │   │   ├── edge-cases.test.ts
│   │   │   ├── parse-config.test.ts
│   │   │   └── serve-command.test.ts
│   │   ├── errors
│   │   │   └── validation-service-error.test.ts
│   │   ├── examples
│   │   │   └── using-n8n-nodes-base-mock.test.ts
│   │   ├── flexible-instance-security-advanced.test.ts
│   │   ├── flexible-instance-security.test.ts
│   │   ├── http-server
│   │   │   └── multi-tenant-support.test.ts
│   │   ├── http-server-n8n-mode.test.ts
│   │   ├── http-server-n8n-reinit.test.ts
│   │   ├── http-server-session-management.test.ts
│   │   ├── loaders
│   │   │   └── node-loader.test.ts
│   │   ├── mappers
│   │   │   └── docs-mapper.test.ts
│   │   ├── mcp
│   │   │   ├── get-node-essentials-examples.test.ts
│   │   │   ├── handlers-n8n-manager-simple.test.ts
│   │   │   ├── handlers-n8n-manager.test.ts
│   │   │   ├── handlers-workflow-diff.test.ts
│   │   │   ├── lru-cache-behavior.test.ts
│   │   │   ├── multi-tenant-tool-listing.test.ts.disabled
│   │   │   ├── parameter-validation.test.ts
│   │   │   ├── search-nodes-examples.test.ts
│   │   │   ├── tools-documentation.test.ts
│   │   │   └── tools.test.ts
│   │   ├── monitoring
│   │   │   └── cache-metrics.test.ts
│   │   ├── MULTI_TENANT_TEST_COVERAGE.md
│   │   ├── multi-tenant-integration.test.ts
│   │   ├── parsers
│   │   │   ├── node-parser-outputs.test.ts
│   │   │   ├── node-parser.test.ts
│   │   │   ├── property-extractor.test.ts
│   │   │   └── simple-parser.test.ts
│   │   ├── scripts
│   │   │   └── fetch-templates-extraction.test.ts
│   │   ├── services
│   │   │   ├── ai-node-validator.test.ts
│   │   │   ├── ai-tool-validators.test.ts
│   │   │   ├── confidence-scorer.test.ts
│   │   │   ├── config-validator-basic.test.ts
│   │   │   ├── config-validator-edge-cases.test.ts
│   │   │   ├── config-validator-node-specific.test.ts
│   │   │   ├── config-validator-security.test.ts
│   │   │   ├── debug-validator.test.ts
│   │   │   ├── enhanced-config-validator-integration.test.ts
│   │   │   ├── enhanced-config-validator-operations.test.ts
│   │   │   ├── enhanced-config-validator.test.ts
│   │   │   ├── example-generator.test.ts
│   │   │   ├── execution-processor.test.ts
│   │   │   ├── expression-format-validator.test.ts
│   │   │   ├── expression-validator-edge-cases.test.ts
│   │   │   ├── expression-validator.test.ts
│   │   │   ├── fixed-collection-validation.test.ts
│   │   │   ├── loop-output-edge-cases.test.ts
│   │   │   ├── n8n-api-client.test.ts
│   │   │   ├── n8n-validation.test.ts
│   │   │   ├── node-similarity-service.test.ts
│   │   │   ├── node-specific-validators.test.ts
│   │   │   ├── operation-similarity-service-comprehensive.test.ts
│   │   │   ├── operation-similarity-service.test.ts
│   │   │   ├── property-dependencies.test.ts
│   │   │   ├── property-filter-edge-cases.test.ts
│   │   │   ├── property-filter.test.ts
│   │   │   ├── resource-similarity-service-comprehensive.test.ts
│   │   │   ├── resource-similarity-service.test.ts
│   │   │   ├── task-templates.test.ts
│   │   │   ├── template-service.test.ts
│   │   │   ├── universal-expression-validator.test.ts
│   │   │   ├── validation-fixes.test.ts
│   │   │   ├── workflow-auto-fixer.test.ts
│   │   │   ├── workflow-diff-engine.test.ts
│   │   │   ├── workflow-fixed-collection-validation.test.ts
│   │   │   ├── workflow-validator-comprehensive.test.ts
│   │   │   ├── workflow-validator-edge-cases.test.ts
│   │   │   ├── workflow-validator-error-outputs.test.ts
│   │   │   ├── workflow-validator-expression-format.test.ts
│   │   │   ├── workflow-validator-loops-simple.test.ts
│   │   │   ├── workflow-validator-loops.test.ts
│   │   │   ├── workflow-validator-mocks.test.ts
│   │   │   ├── workflow-validator-performance.test.ts
│   │   │   ├── workflow-validator-with-mocks.test.ts
│   │   │   └── workflow-validator.test.ts
│   │   ├── session-lifecycle-events.test.ts
│   │   ├── session-management-api.test.ts
│   │   ├── session-restoration-retry.test.ts
│   │   ├── session-restoration.test.ts
│   │   ├── telemetry
│   │   │   ├── batch-processor.test.ts
│   │   │   ├── config-manager.test.ts
│   │   │   ├── event-tracker.test.ts
│   │   │   ├── event-validator.test.ts
│   │   │   ├── rate-limiter.test.ts
│   │   │   ├── telemetry-error.test.ts
│   │   │   ├── telemetry-manager.test.ts
│   │   │   ├── v2.18.3-fixes-verification.test.ts
│   │   │   └── workflow-sanitizer.test.ts
│   │   ├── templates
│   │   │   ├── batch-processor.test.ts
│   │   │   ├── metadata-generator.test.ts
│   │   │   ├── template-repository-metadata.test.ts
│   │   │   └── template-repository-security.test.ts
│   │   ├── test-env-example.test.ts
│   │   ├── test-infrastructure.test.ts
│   │   ├── types
│   │   │   ├── instance-context-coverage.test.ts
│   │   │   └── instance-context-multi-tenant.test.ts
│   │   ├── utils
│   │   │   ├── auth-timing-safe.test.ts
│   │   │   ├── cache-utils.test.ts
│   │   │   ├── console-manager.test.ts
│   │   │   ├── database-utils.test.ts
│   │   │   ├── fixed-collection-validator.test.ts
│   │   │   ├── n8n-errors.test.ts
│   │   │   ├── node-type-normalizer.test.ts
│   │   │   ├── node-type-utils.test.ts
│   │   │   ├── node-utils.test.ts
│   │   │   ├── simple-cache-memory-leak-fix.test.ts
│   │   │   ├── ssrf-protection.test.ts
│   │   │   └── template-node-resolver.test.ts
│   │   └── validation-fixes.test.ts
│   └── utils
│       ├── assertions.ts
│       ├── builders
│       │   └── workflow.builder.ts
│       ├── data-generators.ts
│       ├── database-utils.ts
│       ├── README.md
│       └── test-helpers.ts
├── thumbnail.png
├── tsconfig.build.json
├── tsconfig.json
├── types
│   ├── mcp.d.ts
│   └── test-env.d.ts
├── verify-telemetry-fix.js
├── versioned-nodes.md
├── vitest.config.benchmark.ts
├── vitest.config.integration.ts
└── vitest.config.ts
```

# Files

--------------------------------------------------------------------------------
/test-output.txt:
--------------------------------------------------------------------------------

```

> [email protected] test
> vitest --reporter=verbose


 RUN  v3.2.4 /Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp
      Coverage enabled with v8

 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > extractMultiTenantHeaders Function > should extract all multi-tenant headers when present 2ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > extractMultiTenantHeaders Function > should handle missing headers gracefully 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > extractMultiTenantHeaders Function > should handle case-insensitive headers 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > extractMultiTenantHeaders Function > should handle array header values 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > extractMultiTenantHeaders Function > should handle non-string header values 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should create valid instance context from complete headers 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should create partial instance context when some headers missing 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should return undefined context when no relevant headers present 0ms
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should validate instance context before use
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should handle malformed URLs in headers 1ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Instance Context Creation and Validation > should handle special characters in headers 0ms
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Session ID Generation with Configuration Hash > should generate consistent session ID for same configuration
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Session ID Generation with Configuration Hash > should generate different session ID for different configuration
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Session ID Generation with Configuration Hash > should include UUID in session ID for uniqueness
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Session ID Generation with Configuration Hash > should handle undefined configuration in hash generation
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Security Logging with Sanitization > should sanitize sensitive information in logs
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Security Logging with Sanitization > should log session creation events
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Security Logging with Sanitization > should log context switching events
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Security Logging with Sanitization > should log validation failures securely
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Security Logging with Sanitization > should not log API keys or sensitive data in plain text
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Context Switching and Session Management > should handle session creation for new instance context 1ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Context Switching and Session Management > should handle session switching between different contexts 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Context Switching and Session Management > should prevent race conditions in session management 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Context Switching and Session Management > should handle session cleanup for inactive sessions 0ms
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Context Switching and Session Management > should handle maximum session limit 0ms
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Error Handling and Edge Cases > should handle invalid header types gracefully
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Error Handling and Edge Cases > should handle missing or corrupt session data 0ms
 ↓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Error Handling and Edge Cases > should handle context validation errors gracefully
 ✓ tests/unit/http-server/multi-tenant-support.test.ts > HTTP Server Multi-Tenant Support > Error Handling and Edge Cases > should handle memory pressure during session management 1ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > addNode > should add a new node to workflow 396ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > addNode > should return error for duplicate node name 180ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > removeNode > should remove node by name 255ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > removeNode > should return error for non-existent node 185ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > updateNode > should update node parameters 246ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > updateNode > should update nested parameters 245ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > moveNode > should move node to new position 250ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > enableNode / disableNode > should disable a node 244ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Node Operations > enableNode / disableNode > should enable a disabled node 362ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > addConnection > should add connection between nodes 243ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > addConnection > should add connection with custom ports 245ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > removeConnection > should remove connection between nodes 241ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > removeConnection > should ignore error for non-existent connection with ignoreErrors flag 244ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > replaceConnections > should replace all connections 253ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Connection Operations > cleanStaleConnections > should remove stale connections in dry run mode 299ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Metadata Operations > updateSettings > should update workflow settings 247ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Metadata Operations > updateName > should update workflow name 242ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Metadata Operations > addTag / removeTag > should add tag to workflow 254ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Metadata Operations > addTag / removeTag > should remove tag from workflow 339ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Advanced Scenarios > should apply multiple operations in sequence 243ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Advanced Scenarios > should validate operations without applying (validateOnly mode) 232ms
 ✓ tests/integration/n8n-api/workflows/update-partial-workflow.test.ts > Integration: handleUpdatePartialWorkflow > Advanced Scenarios > should handle continueOnError mode with partial failures 240ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Lifecycle > should establish a new session 188ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Lifecycle > should handle session initialization with capabilities 158ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Lifecycle > should handle clean session termination 171ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Lifecycle > should handle abrupt disconnection 175ms
 ↓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Multiple Sessions > should handle multiple concurrent sessions
 ↓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Multiple Sessions > should isolate session state
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Multiple Sessions > should handle sequential sessions without interference 317ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Multiple Sessions > should handle single server with multiple sequential connections 187ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Recovery > should not persist state between sessions 200ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Recovery > should handle rapid session cycling 1193ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Metadata > should track client information 123ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Metadata > should handle different client versions 183ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Limits > should handle many sequential sessions 1711ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Limits > should handle session with heavy usage 245ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Error Recovery > should handle errors without breaking session 132ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Error Recovery > should handle multiple errors in sequence 125ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Resource Cleanup > should properly close all resources on shutdown 373ms
 ✓ tests/integration/mcp-protocol/session-management.test.ts > MCP Session Management > Session Transport Events > should handle transport reconnection 297ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createCacheKey > should create consistent SHA-256 hash for same input 1ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createCacheKey > should produce different hashes for different inputs 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createCacheKey > should use memoization for repeated inputs 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createCacheKey > should limit memoization cache size 3ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheConfig > should return default configuration when no env vars set 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheConfig > should use environment variables when set 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheConfig > should enforce minimum bounds 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheConfig > should enforce maximum bounds 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheConfig > should handle invalid values gracefully 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createInstanceCache > should create LRU cache with correct configuration 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createInstanceCache > should call dispose callback on eviction 1ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > createInstanceCache > should update age on get 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > CacheMutex > should prevent concurrent access to same key 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > CacheMutex > should allow concurrent access to different keys 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > CacheMutex > should check if key is locked 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > CacheMutex > should clear all locks 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > CacheMutex > should handle timeout for stuck locks 5002ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > calculateBackoffDelay > should calculate exponential backoff correctly 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > calculateBackoffDelay > should respect max delay 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > calculateBackoffDelay > should add jitter 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should succeed on first attempt 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should retry on failure and eventually succeed 33ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should throw after max attempts 34ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should not retry non-retryable errors 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should retry network errors 10ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > withRetry > should retry 429 Too Many Requests 167ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > cacheMetrics > should track cache operations 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > cacheMetrics > should update cache size 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > cacheMetrics > should reset metrics 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > cacheMetrics > should format metrics for logging 0ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheStatistics > should return formatted statistics 1ms
 ✓ tests/unit/utils/cache-utils.test.ts > cache-utils > getCacheStatistics > should calculate runtime 0ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > No Filters > should list all workflows without filters 405ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Filter by Active Status > should filter workflows by active=true 240ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Filter by Active Status > should filter workflows by active=false 188ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Filter by Tags > should filter workflows by name instead of tags 175ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Pagination > should return first page with limit 421ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Pagination > should handle pagination with cursor 745ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Pagination > should handle last page (no more results) 182ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Limit Variations > should respect limit=1 193ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Limit Variations > should respect limit=50 108ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Limit Variations > should respect limit=100 (max) 124ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Exclude Pinned Data > should exclude pinned data when requested 176ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Empty Results > should return empty array when no workflows match filters 55ms
 ✓ tests/integration/n8n-api/workflows/list-workflows.test.ts > Integration: handleListWorkflows > Sort Order > should return workflows in consistent order 771ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Preview Mode > should preview fixes without applying them (expression-format) 186ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Preview Mode > should preview multiple fix types 197ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Apply Mode > should apply expression-format fixes 180ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Apply Mode > should apply webhook-missing-path fixes 370ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Fix Type Filtering > should only apply specified fix types 176ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Fix Type Filtering > should handle multiple fix types filter 181ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Confidence Threshold > should filter fixes by high confidence threshold 176ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Confidence Threshold > should include medium and high confidence with medium threshold 198ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Confidence Threshold > should include all confidence levels with low threshold 191ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Max Fixes Parameter > should limit fixes to maxFixes parameter 191ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > No Fixes Available > should handle workflow with no fixable issues 180ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Error Handling > should handle non-existent workflow ID 64ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Error Handling > should handle invalid fixTypes parameter 124ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Error Handling > should handle invalid confidence threshold 114ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Response Format > should return complete autofix response structure (preview) 177ms
 ✓ tests/integration/n8n-api/workflows/autofix-workflow.test.ts > Integration: handleAutofixWorkflow > Response Format > should return complete autofix response structure (apply) 303ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Command injection prevention > should prevent basic command injection attempts 1757ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Command injection prevention > should handle complex nested injection attempts 33ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Command injection prevention > should handle Unicode and special characters safely 32ms
Warning: Ignoring dangerous variable: LD_PRELOAD
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Shell metacharacter handling > should safely handle all shell metacharacters 38ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Escaping edge cases > should handle consecutive single quotes 32ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Escaping edge cases > should handle empty and whitespace-only values 32ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Escaping edge cases > should handle very long values 32ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Environment variable name security > should handle potentially dangerous key names 34ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Real-world attack scenarios > should prevent path traversal attempts 32ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Real-world attack scenarios > should handle polyglot payloads safely 33ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Stress testing > should handle deeply nested malicious structures 32ms
 ✓ tests/unit/docker/config-security.test.ts > Config File Security Tests > Stress testing > should handle mixed attack vectors in single config 37ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command transformation > should detect "n8n-mcp serve" and set MCP_MODE=http 154ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command transformation > should preserve additional arguments after serve command 125ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command transformation > should not affect other commands 134ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Integration with config loading > should load config before processing serve command 160ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command line variations > should handle serve command with equals sign notation 125ms
ERROR: AUTH_TOKEN or AUTH_TOKEN_FILE is required for HTTP mode
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command line variations > should handle quoted arguments correctly 119ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Error handling > should handle serve command with missing AUTH_TOKEN in HTTP mode 121ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Error handling > should succeed with AUTH_TOKEN provided 121ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Backwards compatibility > should maintain compatibility with direct HTTP mode setting 131ms
 ✓ tests/unit/docker/serve-command.test.ts > n8n-mcp serve Command > Command construction > should properly construct the node command after transformation 125ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Basic functionality > should parse simple flat config 33ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Basic functionality > should handle nested objects by flattening with underscores 31ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Basic functionality > should convert boolean values to strings 33ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Basic functionality > should convert numbers to strings 32ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Environment variable precedence > should not export variables that are already set in environment 33ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Environment variable precedence > should respect nested environment variables 32ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Shell escaping and security > should escape single quotes properly 33ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Shell escaping and security > should handle command injection attempts safely 38ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Shell escaping and security > should handle special shell characters safely 31ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should exit silently if config file does not exist 29ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should exit silently on invalid JSON 30ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should handle empty config file 30ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should ignore arrays in config 32ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should ignore null values 32ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should handle deeply nested structures 33ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Edge cases and error handling > should handle empty strings 32ms
 ✓ tests/unit/docker/parse-config.test.ts > parse-config.js > Default behavior > should use /app/config.json as default path when no argument provided 29ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Null and Undefined Handling > should handle null config gracefully 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Null and Undefined Handling > should handle undefined config gracefully 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Null and Undefined Handling > should handle null properties array gracefully 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Null and Undefined Handling > should handle undefined properties array gracefully 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Null and Undefined Handling > should handle properties with null values in config 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Boundary Value Testing > should handle empty arrays 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Boundary Value Testing > should handle very large property arrays 1ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Boundary Value Testing > should handle deeply nested displayOptions 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Boundary Value Testing > should handle extremely long string values 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Invalid Data Type Handling > should handle NaN values 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Invalid Data Type Handling > should handle Infinity values 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Invalid Data Type Handling > should handle objects when expecting primitives 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Invalid Data Type Handling > should handle circular references in config 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Performance Boundaries > should validate large config objects within reasonable time 41ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Special Characters and Encoding > should handle special characters in property values 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Special Characters and Encoding > should handle unicode characters 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Complex Validation Scenarios > should handle conflicting displayOptions conditions 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Complex Validation Scenarios > should handle multiple validation profiles correctly 1ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Error Recovery and Resilience > should continue validation after encountering errors 1ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > Error Recovery and Resilience > should handle malformed property definitions gracefully 0ms
 ✓ tests/unit/services/config-validator-edge-cases.test.ts > ConfigValidator - Edge Cases > validateBatch method implementation > should validate multiple configs in batch if method exists 0ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Data type edge cases > should handle JavaScript number edge cases 56ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Data type edge cases > should handle unusual but valid JSON structures 31ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Data type edge cases > should handle circular reference prevention in nested configs 31ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > File system edge cases > should handle permission errors gracefully 31ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > File system edge cases > should handle symlinks correctly 38ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > File system edge cases > should handle very large config files 63ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > JSON parsing edge cases > should handle various invalid JSON formats 356ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > JSON parsing edge cases > should handle Unicode edge cases in JSON 31ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Environment variable edge cases > should handle environment variable name transformations 31ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Environment variable edge cases > should handle conflicting keys after transformation 32ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Performance edge cases > should handle extremely deep nesting efficiently 89ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Performance edge cases > should handle wide objects efficiently 43ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Mixed content edge cases > should handle mixed valid and invalid content 30ms
 ✓ tests/unit/docker/edge-cases.test.ts > Docker Config Edge Cases > Real-world configuration scenarios > should handle typical n8n-mcp configuration 33ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should return curated examples for HTTP Request node 1ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should return curated examples for Webhook node 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should return curated examples for Code node 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should generate basic examples for unconfigured nodes 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should use common property if no required fields exist 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getExamples > should return empty minimal object if no essentials provided 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide webhook processing example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide data transformation examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide aggregation example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide JMESPath filtering example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide Python example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide AI tool example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide crypto usage example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > special example nodes > should provide static data example 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > database node examples > should provide PostgreSQL examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > database node examples > should provide MongoDB examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > database node examples > should provide MySQL examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > communication node examples > should provide Slack examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > communication node examples > should provide Email examples 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > error handling patterns > should provide modern error handling patterns 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > error handling patterns > should provide API retry patterns 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > error handling patterns > should provide database error patterns 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > error handling patterns > should provide webhook error patterns 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getTaskExample > should return minimal example for basic task 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getTaskExample > should return common example for typical task 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getTaskExample > should return advanced example for complex task 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getTaskExample > should default to common example for unknown task 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > getTaskExample > should return undefined for unknown node type 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > default value generation > should generate appropriate defaults for different property types 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > default value generation > should use property defaults when available 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > default value generation > should generate context-aware string defaults 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > default value generation > should use placeholder as fallback for string defaults 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > edge cases > should handle empty essentials object 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > edge cases > should handle properties with missing options 0ms
 ✓ tests/unit/services/example-generator.test.ts > ExampleGenerator > edge cases > should handle collection and fixedCollection types 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > essentials mode > should return essential documentation for existing tool 1ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > essentials mode > should return error message for unknown tool 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > essentials mode > should use essentials as default depth 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > full mode > should return complete documentation for existing tool 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > special documentation topics > should return JavaScript Code node guide for javascript_code_node_guide 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > special documentation topics > should return Python Code node guide for python_code_node_guide 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > special documentation topics > should return full JavaScript guide when requested 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolDocumentation > special documentation topics > should return full Python guide when requested 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsOverview > essentials mode > should return essential overview with categories 1ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsOverview > essentials mode > should use essentials as default 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsOverview > full mode > should return complete overview with all tools 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > searchToolDocumentation > should find tools matching keyword in name 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > searchToolDocumentation > should find tools matching keyword in description 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > searchToolDocumentation > should be case insensitive 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > searchToolDocumentation > should return empty array for no matches 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > searchToolDocumentation > should search in both essentials and full descriptions 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsByCategory > should return tools for discovery category 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsByCategory > should return tools for validation category 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsByCategory > should return tools for configuration category 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getToolsByCategory > should return empty array for unknown category 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getAllCategories > should return all unique categories 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getAllCategories > should not have duplicates 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > getAllCategories > should return non-empty array 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > Error Handling > should handle missing tool gracefully 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > Error Handling > should handle empty search query 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > Documentation Quality > should format parameters correctly in full mode 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > Documentation Quality > should include code blocks for examples 0ms
 ✓ tests/unit/mcp/tools-documentation.test.ts > tools-documentation > Documentation Quality > should have consistent section headers 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should parse correctly when node is programmatic 2ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should parse correctly when node is declarative 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should preserve type when package prefix is already included 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isTrigger flag when node is a trigger 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isWebhook flag when node is a webhook 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isAITool flag when node has AI capability 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should parse correctly when node uses VersionedNodeType class 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should parse correctly when node has nodeVersions property 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should use max version when version is an array 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should throw error when node is missing name property 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should use static description when instantiation fails 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should extract category when using different property names 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isTrigger flag when node has polling property 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isTrigger flag when node has eventTrigger property 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isTrigger flag when node name contains trigger 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should set isWebhook flag when node name contains webhook 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should parse correctly when node is an instance object 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > parse method > should handle different package name formats 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should extract version from baseDescription.defaultVersion 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should extract version from nodeVersions keys 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should extract version from instance nodeVersions 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should handle version as number in description 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should handle version as string in description 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > version extraction > should default to version 1 when no version found 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > versioned node detection > should detect versioned nodes with nodeVersions 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > versioned node detection > should detect versioned nodes with defaultVersion 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > versioned node detection > should detect versioned nodes with version array in instance 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > versioned node detection > should not detect non-versioned nodes as versioned 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > edge cases > should handle null/undefined description gracefully 0ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > edge cases > should handle empty routing object for declarative nodes 1ms
 ✓ tests/unit/parsers/node-parser.test.ts > NodeParser > edge cases > should handle complex nested versioned structure 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should validate required fields for Slack message post 1ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should validate successfully with all required fields 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should handle unknown node types gracefully 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should validate property types 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should validate option values 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should check property visibility based on displayOptions 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should handle empty properties array 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should handle missing displayOptions gracefully 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > validate > should validate options with array format 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should handle null and undefined config values 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should validate nested displayOptions conditions 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should handle hide conditions in displayOptions 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should handle internal properties that start with underscore 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should warn about inefficient configured but hidden properties 0ms
 ✓ tests/unit/services/config-validator-basic.test.ts > ConfigValidator - Basic Validation > edge cases and additional coverage > should suggest commonly used properties 0ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Key Generation and Collision > should generate different cache keys for different contexts 2ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Key Generation and Collision > should generate same cache key for identical contexts 2ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Key Generation and Collision > should handle potential cache key collisions gracefully 2ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > LRU Eviction Behavior > should evict oldest entries when cache is full 42ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > LRU Eviction Behavior > should maintain LRU order during access 7ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > LRU Eviction Behavior > should handle rapid successive access patterns 6ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > TTL (Time To Live) Behavior > should respect TTL settings 8ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > TTL (Time To Live) Behavior > should update age on cache access (updateAgeOnGet) 6ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Dispose Callback Security and Logging > should sanitize cache keys in dispose callback logs 66ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Dispose Callback Security and Logging > should handle dispose callback with undefined client 49ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Memory Management > should maintain consistent cache size limits 95ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Memory Management > should handle edge case of single cache entry 90ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Configuration Validation > should use reasonable cache limits 45ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Interaction with Validation > should not cache when context validation fails 57ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Cache Interaction with Validation > should handle cache when config creation fails 47ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Complex Cache Scenarios > should handle mixed valid and invalid contexts 55ms
 ✓ tests/unit/mcp/lru-cache-behavior.test.ts > LRU Cache Behavior Tests > Complex Cache Scenarios > should handle concurrent access to same cache key 144ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #73: validate_node_minimal crashes without input validation > should handle empty config in validation schemas 19ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #73: validate_node_minimal crashes without input validation > should handle null config in validation schemas 21ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #73: validate_node_minimal crashes without input validation > should accept valid config object 20ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #58: validate_node_operation crashes on nested input > should handle invalid nodeType gracefully 21ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #58: validate_node_operation crashes on nested input > should handle null nodeType gracefully 19ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #58: validate_node_operation crashes on nested input > should handle non-string nodeType gracefully 21ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #58: validate_node_operation crashes on nested input > should handle valid nodeType properly 18ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #70: Profile settings not respected > should pass profile parameter to all validation phases 21ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #70: Profile settings not respected > should filter out sticky notes from validation 28ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #70: Profile settings not respected > should allow legitimate loops in cycle detection 22ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #68: Better error recovery suggestions > should provide recovery suggestions for invalid node types 21ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #68: Better error recovery suggestions > should provide recovery suggestions for connection errors 18ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Issue #68: Better error recovery suggestions > should provide workflow for multiple errors 20ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Enhanced Input Validation > should validate tool parameters with schemas 18ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Enhanced Input Validation > should reject invalid parameters 19ms
 ✓ tests/unit/validation-fixes.test.ts > Validation System Fixes > Enhanced Input Validation > should format validation errors properly 18ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should apply diff operations successfully 27ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle validation-only mode 29ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle multiple operations 185ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle diff application failures 50ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle API not configured error 28ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle workflow not found error 29ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle API errors during update 28ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle input validation errors 32ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle complex operation types 29ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle debug logging when enabled 29ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle generic errors 30ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle authentication errors 26ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle rate limit errors 23ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle server errors 26ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should validate operation structure 24ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle empty operations array 23ms
 ✓ tests/unit/mcp/handlers-workflow-diff.test.ts > handlers-workflow-diff > handleUpdatePartialWorkflow > should handle partial diff application 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > successful documentation fetch > should fetch documentation for httpRequest node 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > successful documentation fetch > should apply known fixes for node types 28ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > successful documentation fetch > should handle node types with package prefix 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > successful documentation fetch > should try multiple paths until finding documentation 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > successful documentation fetch > should check directory paths with index.md 28ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > documentation not found > should return null when documentation is not found 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > documentation not found > should return null for empty node type 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > documentation not found > should handle invalid node type format 28ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > path construction > should construct correct paths for core nodes 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > path construction > should construct correct paths for app nodes 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > path construction > should construct correct paths for trigger nodes 26ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > path construction > should construct correct paths for langchain nodes 24ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > error handling > should handle file system errors gracefully 24ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > error handling > should handle non-Error exceptions 28ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > KNOWN_FIXES mapping > should apply fix for httpRequest 28ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > KNOWN_FIXES mapping > should apply fix for respondToWebhook 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > KNOWN_FIXES mapping > should preserve casing for unknown nodes 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > logging > should log search progress 24ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > logging > should log when documentation is not found 26ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > edge cases > should handle very long node names 26ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > edge cases > should handle node names with special characters 29ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > fetchDocumentation > edge cases > should handle multiple dots in node type 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should enhance SplitInBatches documentation with output guidance 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should enhance SplitInBatches documentation when no "When to use" section exists 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should handle splitInBatches in various node type formats 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should provide specific guidance for correct connection patterns 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should explain the common AI assistant mistake 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - SplitInBatches > should not enhance non-splitInBatches nodes with loop guidance 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - IF node > should enhance IF node documentation with output guidance 26ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - IF node > should handle IF node when no "Node parameters" section exists 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - IF node > should handle various IF node type formats 24ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - edge cases > should handle content without clear insertion points 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - edge cases > should handle empty content 27ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - edge cases > should handle content with multiple "When to use" sections 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - edge cases > should not double-enhance already enhanced content 25ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > enhanceLoopNodeDocumentation - edge cases > should handle very large content efficiently 26ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > DocsMapper instance > should use consistent docsPath across instances 23ms
 ✓ tests/unit/mappers/docs-mapper.test.ts > DocsMapper > DocsMapper instance > should maintain KNOWN_FIXES as readonly 24ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > FTS5 initialization > should initialize FTS5 when supported 24ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > FTS5 initialization > should skip FTS5 when not supported 26ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > saveTemplate > should save a template with proper JSON serialization 25ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > getTemplate > should retrieve a specific template by ID 24ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > getTemplate > should return null for non-existent template 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > searchTemplates > should use FTS5 search when available 25ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > searchTemplates > should fall back to LIKE search when FTS5 is not supported 25ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > getTemplatesByNodes > should find templates using specific node types 25ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > getTemplatesForTask > should return templates for known tasks 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > getTemplatesForTask > should return empty array for unknown task 28ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > template statistics > should get template count 24ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > template statistics > should get template statistics 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should get node templates count 28ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should get search count 31ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should get task templates count 25ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should handle pagination in getAllTemplates 26ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should handle pagination in getTemplatesByNodes 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should handle pagination in searchTemplates 22ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > pagination count methods > should handle pagination in getTemplatesForTask 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > maintenance operations > should clear all templates 27ms
 ✓ tests/unit/database/template-repository-core.test.ts > TemplateRepository - Core Functionality > maintenance operations > should rebuild FTS5 index when supported 26ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > HTTP Request node validation > should perform HTTP Request specific validation 29ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > HTTP Request node validation > should validate HTTP Request with authentication in API URLs 29ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > HTTP Request node validation > should validate JSON in HTTP Request body 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > HTTP Request node validation > should handle webhook-specific validation 28ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate Code node configurations 28ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate JavaScript syntax in Code node 25ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate n8n-specific patterns in Code node 26ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should handle empty code in Code node 29ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate complex return patterns in Code node 29ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate Code node with $helpers usage 24ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should detect incorrect $helpers.getWorkflowStaticData usage 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate console.log usage 25ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate $json usage warning 24ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should not warn about properties for Code nodes 28ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate crypto module usage 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should suggest error handling for complex code 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should suggest error handling for non-trivial code 24ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Code node validation > should validate async operations without await 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Python Code node validation > should validate Python code syntax 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Python Code node validation > should detect mixed indentation in Python code 23ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Python Code node validation > should warn about incorrect n8n return patterns 27ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Python Code node validation > should warn about using external libraries in Python code 28ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Python Code node validation > should validate Python code with print statements 29ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Database node validation > should validate database query security 23ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Database node validation > should check for SQL injection vulnerabilities 26ms
 ✓ tests/unit/services/config-validator-node-specific.test.ts > ConfigValidator - Node-Specific Validation > Database node validation > should validate SQL SELECT * performance warning 25ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should extract outputs array from base description 28ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should extract outputNames array from base description 27ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should extract both outputs and outputNames when both are present 25ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should convert single output to array format 26ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should convert single outputName to array format 26ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should extract outputs from versioned node when not in base description 26ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle node instantiation failure gracefully 28ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should return empty result when no outputs found anywhere 26ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle complex versioned node structure 27ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should prefer base description outputs over versioned when both exist 25ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle IF node with typical output structure 27ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle SplitInBatches node with counterintuitive output structure 28ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle Switch node with multiple outputs 28ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle empty outputs array 26ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > extractOutputs method > should handle mismatched outputs and outputNames arrays 30ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > real-world node structures > should handle actual n8n SplitInBatches node structure 33ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > real-world node structures > should handle actual n8n IF node structure 32ms
 ✓ tests/unit/parsers/node-parser-outputs.test.ts > NodeParser - Output Extraction > real-world node structures > should handle single-output nodes like HTTP Request 33ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should parse a basic programmatic node 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should parse a declarative node 23ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should detect trigger nodes 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should detect webhook nodes 22ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should detect AI tool nodes 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should parse VersionedNodeType class 22ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should merge baseDescription with version-specific description 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should throw error for nodes without name 23ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should handle nodes that fail to instantiate 28ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should handle static description property 24ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should handle instance-based nodes 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should use displayName fallback to name if not provided 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > parse method > should handle category extraction from different fields 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > trigger detection > should detect triggers by group 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > trigger detection > should detect polling triggers 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > trigger detection > should detect trigger property 22ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > trigger detection > should detect event triggers 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > trigger detection > should detect triggers by name 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should extract declarative operations from routing.request 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should extract declarative operations from routing.operations 23ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should extract programmatic operations from resource property 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should extract programmatic operations with resource context 23ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should handle operations with multiple resource conditions 22ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > operations extraction > should handle single resource condition as array 22ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > version extraction > should extract version from baseDescription.defaultVersion 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > version extraction > should extract version from description.version 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > version extraction > should default to version 1 18ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > versioned node detection > should detect nodes with baseDescription and nodeVersions 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > versioned node detection > should detect nodes with version array 19ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > versioned node detection > should detect nodes with defaultVersion 21ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > versioned node detection > should handle instance-level version detection 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle empty routing object 20ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle missing properties array 18ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle missing credentials 17ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle nodes with baseDescription but no name in main description 18ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle complex nested routing structures 17ms
 ✓ tests/unit/parsers/simple-parser.test.ts > SimpleParser > edge cases > should handle operations without displayName 20ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should extract configs from valid workflow with multiple nodes 20ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should return empty array for workflow with no nodes 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should skip sticky note nodes 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should skip nodes without parameters 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should handle nodes with credentials 20ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should use default complexity when metadata is missing 21ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should handle malformed compressed data gracefully 21ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should handle invalid JSON after decompression 20ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > extractNodeConfigs > should handle workflows with missing nodes array 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should detect n8n expression syntax with ={{...}} 22ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should detect $json references 34ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should detect $node references 27ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should return false for parameters without expressions 24ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should handle nested objects with expressions 24ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should return false for null parameters 21ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should return false for undefined parameters 21ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should return false for empty object 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should handle array parameters with expressions 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > detectExpressions > should detect multiple expression types in same params 18ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > Edge Cases > should handle very large workflows without crashing 21ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > Edge Cases > should handle special characters in node names and parameters 19ms
 ✓ tests/unit/scripts/fetch-templates-extraction.test.ts > Template Configuration Extraction > Edge Cases > should preserve parameter structure exactly as in workflow 21ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Credential security > should perform security checks for hardcoded credentials 33ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Credential security > should validate HTTP Request with authentication in API URLs 31ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Code execution security > should warn about security issues with eval/exec 32ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Code execution security > should detect infinite loops 30ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Database security > should validate database query security 26ms
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Database security > should check for SQL injection vulnerabilities 25ms
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Database security > should warn about DROP TABLE operations
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Database security > should warn about TRUNCATE operations
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Database security > should check for unescaped user input in queries 28ms
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Network security > should warn about HTTP (non-HTTPS) API calls
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Network security > should validate localhost/internal URLs
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Network security > should check for sensitive data in URLs
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > File system security > should warn about dangerous file operations
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > File system security > should check for path traversal vulnerabilities
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Crypto and sensitive operations > should validate crypto module usage 29ms
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Crypto and sensitive operations > should warn about weak crypto algorithms
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Crypto and sensitive operations > should check for environment variable access
 ✓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Python security > should warn about exec/eval in Python 24ms
 ↓ tests/unit/services/config-validator-security.test.ts > ConfigValidator - Security Validation > Python security > should check for subprocess/os.system usage
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > getNodeDescription > should get webhook node description 19ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > getNodeDescription > should get httpRequest node description 21ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > executeNode > should execute httpRequest node with custom response 19ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > executeNode > should execute slack node and track calls 22ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > executeNode > should throw error for non-executable node 20ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > validateSlackMessage > should validate slack message parameters 22ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > validateSlackMessage > should throw error for missing parameters 20ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > validateSlackMessage > should handle missing slack node 26ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > complex workflow scenarios > should handle if node branching 21ms
 ✓ tests/unit/examples/using-n8n-nodes-base-mock.test.ts > WorkflowService with n8n-nodes-base mock > complex workflow scenarios > should handle merge node combining inputs 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should extract properties from programmatic node 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should extract properties from versioned node latest version 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should extract properties from instance with nodeVersions 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should normalize properties to consistent structure 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should handle nodes without properties 19ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should handle failed instantiation 23ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should extract from baseDescription when main description is missing 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should handle complex nested properties 25ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractProperties > should handle non-function node classes 27ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should extract operations from declarative node routing 26ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should extract operations when node has programmatic properties 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should extract operations when routing.operations structure exists 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should handle operations when programmatic nodes have resource-based structure 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should return empty array when node has no operations 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should extract operations when node has version structure 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractOperations > should handle extraction when property is named action instead of operation 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should detect AI capability when usableAsTool property is true 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should detect AI capability when actions contain usableAsTool 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should detect AI capability when versioned node has usableAsTool 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should detect AI capability when node name contains AI-related terms 24ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should return false when node is not AI-related 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > detectAIToolCapability > should return false when node has no description 19ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should extract credentials when node description contains them 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should extract credentials when node has version structure 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should return empty array when node has no credentials 22ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should extract credentials when only baseDescription has them 20ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should extract credentials when they are defined at instance level 27ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > extractCredentials > should return empty array when instantiation fails 19ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > edge cases > should handle extraction when properties are deeply nested 21ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > edge cases > should not throw when node structure has circular references 19ms
 ✓ tests/unit/parsers/property-extractor.test.ts > PropertyExtractor > edge cases > should extract from all sources when multiple operation types exist 21ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > getN8nApiClient > should create new client when config is available 37ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > getN8nApiClient > should return null when config is not available 30ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > getN8nApiClient > should reuse existing client when config has not changed 28ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > getN8nApiClient > should create new client when config URL changes 28ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > should create workflow successfully 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > should handle validation errors 30ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > should handle workflow structure validation failures 30ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > should handle API errors 31ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > should handle API not configured error 33ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should detect and reject nodes-base.* SHORT form 32ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should detect and reject nodes-langchain.* SHORT form 33ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should detect multiple SHORT form nodes 34ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should allow FULL form n8n-nodes-base.* without error 30ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should allow FULL form @n8n/n8n-nodes-langchain.* without error 32ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should detect SHORT form in mixed FULL/SHORT workflow 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should handle nodes with null type gracefully 41ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should handle nodes with undefined type gracefully 47ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should handle empty nodes array gracefully 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should handle nodes array with undefined nodes gracefully 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleCreateWorkflow > SHORT form detection > should provide correct index in error message for multiple nodes 42ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleGetWorkflow > should get workflow successfully 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleGetWorkflow > should handle not found error 44ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleGetWorkflow > should handle invalid input 38ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleGetWorkflowDetails > should get workflow details with execution stats 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleGetWorkflowDetails > should handle workflow with webhook trigger 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDeleteWorkflow > should delete workflow successfully 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDeleteWorkflow > should handle invalid input 41ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDeleteWorkflow > should handle N8nApiError 38ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDeleteWorkflow > should handle generic errors 40ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDeleteWorkflow > should handle API not configured error 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should list workflows with minimal data 37ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should handle invalid input with ZodError 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should handle N8nApiError 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should handle generic errors 37ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should handle workflows without isArchived field gracefully 34ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should convert tags array to comma-separated string 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleListWorkflows > should handle empty tags array 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleValidateWorkflow > should validate workflow from n8n instance 38ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleHealthCheck > should check health successfully 37ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleHealthCheck > should handle API errors 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleDiagnostic > should provide diagnostic information 46ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > Error handling > should handle authentication errors 35ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > Error handling > should handle rate limit errors 38ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > Error handling > should handle generic errors 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should trigger webhook successfully 35ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should extract execution ID from webhook error response 38ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should extract execution ID without workflow ID 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should handle execution ID as "id" field 44ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should provide generic guidance when no execution ID is available 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should use standard error message for authentication errors 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should use standard error message for validation errors 39ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should handle invalid input with Zod validation error 41ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should not include "contact support" in error messages 36ms
 ✓ tests/unit/mcp/handlers-n8n-manager.test.ts > handlers-n8n-manager > handleTriggerWebhookWorkflow > should always recommend preview mode in error messages 40ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadAllNodes > should load nodes from all configured packages 41ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadAllNodes > should handle missing packages gracefully 43ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadAllNodes > should handle packages with no n8n config 34ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should load nodes with default export 30ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should load nodes with named export matching node name 36ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should load nodes with object values export 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should extract node name from complex paths 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should handle nodes that fail to load 34ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - array format > should warn when no valid export is found 30ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - object format > should load nodes from object format 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - object format > should handle different export patterns in object format 43ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > loadPackageNodes - object format > should handle errors in object format 37ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle empty nodes array 33ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle empty nodes object 32ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle package.json without n8n property 32ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle malformed node paths 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle circular references in exports 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle very long file paths 36ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle special characters in node names 35ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > edge cases > should handle mixed array and object in nodes (invalid but defensive) 32ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > console output verification > should log correct messages for successful loads 33ms
 ✓ tests/unit/loaders/node-loader.test.ts > N8nNodeLoader > console output verification > should log package loading progress 35ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > In-Memory Database > should create and connect to in-memory database 24ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > In-Memory Database > should execute queries on in-memory database 24ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > In-Memory Database > should handle multiple connections to same in-memory database 23ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > File-Based Database > should create and connect to file database 30ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > File-Based Database > should enable WAL mode by default for file databases 28ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > File-Based Database > should allow disabling WAL mode 29ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > File-Based Database > should handle connection pooling simulation 37ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Error Handling > should handle invalid file path gracefully 29ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Error Handling > should handle database file corruption 55ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Error Handling > should handle readonly database access 33ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Lifecycle > should properly close database connections 31ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Lifecycle > should handle multiple open/close cycles 29ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Connection Lifecycle > should handle connection timeout simulation 147ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Database Configuration > should apply optimal pragmas for performance 26ms
 ✓ tests/integration/database/connection-management.test.ts > Database Connection Management > Database Configuration > should have foreign key support enabled 27ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > saveNode with outputs > should save node with outputs and outputNames correctly 25ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > saveNode with outputs > should save node with only outputs (no outputNames) 22ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > saveNode with outputs > should save node with only outputNames (no outputs) 24ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > saveNode with outputs > should save node without outputs or outputNames 21ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > saveNode with outputs > should handle empty outputs and outputNames arrays 23ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should retrieve node with outputs and outputNames correctly 23ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should retrieve node with only outputs (null outputNames) 21ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should retrieve node with only outputNames (null outputs) 23ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should retrieve node without outputs or outputNames 22ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should handle malformed JSON gracefully 23ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should return null for non-existent node 21ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > getNode with outputs > should handle SplitInBatches counterintuitive output order correctly 24ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > parseNodeRow with outputs > should parse node row with outputs correctly using parseNodeRow 22ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > parseNodeRow with outputs > should handle empty string as null for outputs 23ms
 ✓ tests/unit/database/node-repository-outputs.test.ts > NodeRepository - Outputs Handling > complex output structures > should handle complex output objects with metadata 23ms
 ✓ tests/unit/database/database-adapter-unit.test.ts > Database Adapter - Unit Tests > DatabaseAdapter Interface > should define interface when adapter is created 23ms
 ✓ tests/unit/database/database-adapter-unit.test.ts > Database Adapter - Unit Tests > PreparedStatement Interface > should define interface when statement is prepared 22ms
 ✓ tests/unit/database/database-adapter-unit.test.ts > Database Adapter - Unit Tests > FTS5 Support Detection > should detect support when FTS5 module is available 23ms
 ✓ tests/unit/database/database-adapter-unit.test.ts > Database Adapter - Unit Tests > Transaction Handling > should handle commit and rollback when transaction is executed 22ms
 ✓ tests/unit/database/database-adapter-unit.test.ts > Database Adapter - Unit Tests > Pragma Handling > should return values when pragma commands are executed 22ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Creation and Limits > should allow creation of sessions up to MAX_SESSIONS limit 118ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Creation and Limits > should reject new sessions when MAX_SESSIONS limit is reached 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Creation and Limits > should validate canCreateSession method behavior 30ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Expiration and Cleanup > should clean up expired sessions 32ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Expiration and Cleanup > should start and stop session cleanup timer 72ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Expiration and Cleanup > should handle removeSession method correctly 31ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Expiration and Cleanup > should handle removeSession with transport close error gracefully 31ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Metadata Tracking > should track session metadata correctly 44ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Metadata Tracking > should get session metrics correctly 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session Metadata Tracking > should get active session count correctly 31ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Production Mode with Default Token > should throw error in production with default token 32ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Production Mode with Default Token > should allow default token in development 31ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Production Mode with Default Token > should allow default token when NODE_ENV is not set 36ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Token Validation > should warn about short tokens 34ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Token Validation > should validate minimum token length (32 characters) 36ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Token Validation > should throw error when AUTH_TOKEN is empty 34ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Token Validation > should throw error when AUTH_TOKEN is missing 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Token Validation > should load token from AUTH_TOKEN_FILE 32ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Security Info in Health Endpoint > should include security information in health endpoint 39ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Security Features > Security Info in Health Endpoint > should show default token warning in health endpoint 48ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Transport Management > should handle transport cleanup on close 51ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Transport Management > should handle multiple concurrent sessions 57ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Transport Management > should handle session-specific transport instances 59ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > DELETE /mcp Endpoint > should terminate session successfully 39ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > DELETE /mcp Endpoint > should return 400 when Mcp-Session-Id header is missing 36ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > DELETE /mcp Endpoint > should return 400 for invalid session ID format 39ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > DELETE /mcp Endpoint > should return 404 when session not found 34ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > DELETE /mcp Endpoint > should handle termination errors gracefully 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > Enhanced Health Endpoint > should include session statistics in health endpoint 34ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > New Endpoints > Enhanced Health Endpoint > should show correct session usage format 38ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session ID Validation > should validate UUID v4 format correctly 35ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session ID Validation > should reject requests with invalid session ID format 38ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Session ID Validation > should reject requests with non-existent session ID 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Shutdown and Cleanup > should clean up all resources on shutdown 31ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > Shutdown and Cleanup > should handle transport close errors during shutdown 34ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > getSessionInfo Method > should return correct session info structure 33ms
 ✓ tests/unit/http-server-session-management.test.ts > HTTP Server Session Management > getSessionInfo Method > should show legacy SSE session when present 34ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > saveTemplate > should save single template successfully 26ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > saveTemplate > should update existing template 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > saveTemplate > should handle templates with complex node types 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > saveTemplate > should sanitize workflow data before saving 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplate > should retrieve template by id 24ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplate > should return null for non-existent template 22ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should search templates by name 26ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should search templates by description 24ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should handle multiple search terms 51ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should limit search results 29ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should handle special characters in search 22ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplates with FTS5 > should support pagination in search results 27ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplatesByNodeTypes > should find templates using specific node types 22ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplatesByNodeTypes > should find templates using multiple node types 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplatesByNodeTypes > should return empty array for non-existent node types 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplatesByNodeTypes > should limit results 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplatesByNodeTypes > should support pagination with offset 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getAllTemplates > should return empty array when no templates 26ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getAllTemplates > should return all templates with limit 47ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getAllTemplates > should support pagination with offset 28ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getAllTemplates > should support different sort orders 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getAllTemplates > should order templates by views and created_at descending 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > getTemplate with detail > should return template with workflow data 23ms
 ↓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > clearOldTemplates > should remove templates older than specified days
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > Transaction handling > should rollback on error during bulk save 25ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > FTS5 performance > should handle large dataset searches efficiently 105ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getNodeTemplatesCount > should return correct count for node type searches 28ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getNodeTemplatesCount > should return 0 for non-existent node types 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getSearchCount > should return correct count for search queries 27ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getTaskTemplatesCount > should return correct count for task-based searches 27ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getTemplateCount > should return total template count 24ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getTemplateCount > should return 0 for empty database 27ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > New pagination count methods > getTemplatesForTask with pagination > should support pagination for task-based searches 26ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplatesByMetadata - Two-Phase Optimization > should use two-phase query pattern for performance 26ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplatesByMetadata - Two-Phase Optimization > should preserve exact ordering from Phase 1 23ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplatesByMetadata - Two-Phase Optimization > should handle empty results efficiently 24ms
 ✓ tests/integration/database/template-repository.test.ts > TemplateRepository Integration Tests > searchTemplatesByMetadata - Two-Phase Optimization > should validate IDs defensively 25ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Availability > should have FTS5 extension available 24ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Availability > should support FTS5 for template searches 21ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > Template FTS5 Operations > should search templates by exact term 24ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > Template FTS5 Operations > should search with partial term and prefix 21ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > Template FTS5 Operations > should search across multiple columns 26ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > Template FTS5 Operations > should handle phrase searches 25ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > Template FTS5 Operations > should support NOT queries 22ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Ranking and Scoring > should rank results by relevance using bm25 31ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Ranking and Scoring > should use custom weights for columns 23ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Advanced Features > should support snippet extraction 24ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Advanced Features > should support highlight function 22ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Triggers and Synchronization > should automatically sync FTS on insert 24ms
 ↓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Triggers and Synchronization > should automatically sync FTS on update
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Triggers and Synchronization > should automatically sync FTS on delete 22ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Performance > should handle large dataset searches efficiently 30ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Performance > should optimize rebuilding FTS index 24ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Error Handling > should handle malformed queries gracefully 22ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Error Handling > should handle special characters in search terms 23ms
 ✓ tests/integration/database/fts5-search.test.ts > FTS5 Full-Text Search > FTS5 Error Handling > should handle empty search terms 22ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Basic Transactions > should commit transaction successfully 22ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Basic Transactions > should rollback transaction on error 24ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Basic Transactions > should handle transaction helper function 25ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Nested Transactions (Savepoints) > should handle nested transactions with savepoints 22ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Nested Transactions (Savepoints) > should release savepoints properly 23ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction Isolation > should handle IMMEDIATE transactions 140ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction Isolation > should handle EXCLUSIVE transactions 137ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction with Better-SQLite3 API > should use transaction() method for automatic handling 30ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction with Better-SQLite3 API > should rollback transaction() on error 27ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction with Better-SQLite3 API > should handle immediate transactions with transaction() 24ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction with Better-SQLite3 API > should handle exclusive transactions with transaction() 22ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction Performance > should show performance benefit of transactions for bulk inserts 26ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction Error Scenarios > should handle constraint violations in transactions 22ms
 ✓ tests/integration/database/transactions.test.ts > Database Transactions > Transaction Error Scenarios > should handle deadlock scenarios 139ms
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > MCP Mode handling > should default to stdio mode when MCP_MODE is not set
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > MCP Mode handling > should respect MCP_MODE=http environment variable
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > n8n-mcp serve command > should transform "n8n-mcp serve" to HTTP mode
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > n8n-mcp serve command > should preserve arguments after "n8n-mcp serve"
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Database path configuration > should use default database path when NODE_DB_PATH is not set
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Database path configuration > should respect NODE_DB_PATH environment variable
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Database path configuration > should validate NODE_DB_PATH format
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Permission handling > should fix permissions when running as root
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Permission handling > should switch to nodejs user when running as root
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Permission handling > should demonstrate docker exec runs as root while main process runs as nodejs
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Auth token validation > should require AUTH_TOKEN in HTTP mode
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Auth token validation > should accept AUTH_TOKEN_FILE
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Auth token validation > should validate AUTH_TOKEN_FILE exists
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Signal handling and process management > should use exec to ensure proper signal propagation
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Logging behavior > should suppress logs in stdio mode
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Logging behavior > should show logs in HTTP mode
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Config file integration > should load config before validation checks
 ↓ tests/integration/docker/docker-entrypoint.test.ts > Docker Entrypoint Script > Database initialization with file locking > should prevent race conditions during database initialization
 × tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Response Time Benchmarks > should respond to simple queries quickly 3593ms
   → expected 10.319083329999994 to be less than 10
   → expected 11.152821670000048 to be less than 10
   → expected 10.546642500000017 to be less than 10
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Response Time Benchmarks > should handle list operations efficiently 168ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Response Time Benchmarks > should perform searches efficiently 241ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Response Time Benchmarks > should retrieve node info quickly 129ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Concurrent Request Performance > should handle concurrent requests efficiently 175ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Concurrent Request Performance > should handle mixed concurrent operations 268ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Large Data Performance > should handle large node lists efficiently 139ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Large Data Performance > should handle large workflow validation efficiently 172ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Memory Efficiency > should handle repeated operations without memory leaks 10435ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Memory Efficiency > should release memory after large operations 212ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Scalability Tests > should maintain performance with increasing load 190ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Scalability Tests > should handle burst traffic 408ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Critical Path Optimization > should optimize tool listing performance 372ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Critical Path Optimization > should optimize search performance 196ms
 ✓ tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Critical Path Optimization > should cache effectively for repeated queries 117ms
 × tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Stress Tests > should handle sustained high load 15370ms
   → expected 98.23265575928114 to be greater than 100
   → expected 95.82978873918175 to be greater than 100
   → expected 96.67608784131137 to be greater than 100
 × tests/integration/mcp-protocol/performance.test.ts > MCP Performance Tests > Stress Tests > should recover from performance degradation 2051ms
   → expected 10.093091499997536 to be less than 10
   → expected 14.27884989999875 to be less than 10
   → expected 10.580879200002528 to be less than 10
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should update template metadata successfully 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should batch update metadata for multiple templates 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should search templates by category 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should search templates by complexity 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should search templates by setup time 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should search templates by required service 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should search templates by target audience 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should handle combined filters correctly 42ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should return correct counts for metadata searches 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get unique categories 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get unique target audiences 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get templates by category 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get templates by complexity 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get templates without metadata 42ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get outdated metadata templates 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Repository Metadata Operations > should get metadata statistics 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Service Layer Integration > should search templates with metadata through service 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Service Layer Integration > should handle pagination correctly in metadata search 44ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Service Layer Integration > should return templates with metadata information 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Security and Error Handling > should handle malicious input safely in metadata search 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Security and Error Handling > should handle invalid metadata gracefully 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Security and Error Handling > should handle empty search results gracefully 45ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Security and Error Handling > should handle edge case parameters 43ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Performance and Scalability > should handle large result sets efficiently 41ms
 ✓ tests/integration/templates/metadata-operations.test.ts > Template Metadata Operations - Integration Tests > Performance and Scalability > should handle concurrent metadata updates 47ms
 ✓ tests/unit/services/debug-validator.test.ts > Debug Validator Tests > should handle nodes at extreme positions - debug 22ms
 ✓ tests/unit/services/debug-validator.test.ts > Debug Validator Tests > should handle special characters in node names - debug 23ms
 ✓ tests/unit/services/debug-validator.test.ts > Debug Validator Tests > should handle non-array nodes - debug 20ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Schema Validation > should create template_node_configs table 31ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Schema Validation > should have all required columns 29ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Schema Validation > should have correct column types and constraints 32ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Schema Validation > should have complexity CHECK constraint 29ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Schema Validation > should accept valid complexity values 30ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Indexes > should create idx_config_node_type_rank index 29ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Indexes > should create idx_config_complexity index 27ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Indexes > should create idx_config_auth index 29ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > View: ranked_node_configs > should create ranked_node_configs view 27ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > View: ranked_node_configs > should return only top 5 ranked configs per node type 41ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > View: ranked_node_configs > should order by node_type and rank 27ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Foreign Key Constraints > should allow inserting config with valid template_id 30ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Foreign Key Constraints > should cascade delete configs when template is deleted 30ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Data Operations > should insert and retrieve config with all fields 26ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Data Operations > should handle nullable fields correctly 28ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Data Operations > should update rank values 26ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Data Operations > should delete configs with rank > 10 29ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Query Performance > should query by node_type and rank efficiently 33ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Query Performance > should filter by complexity efficiently 33ms
 ✓ tests/integration/database/template-node-configs.test.ts > Template Node Configs Database Integration > Migration Idempotency > should be safe to run migration multiple times 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should pass validation when all required parameters are provided 23ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should throw error when required parameter is missing 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should throw error when multiple required parameters are missing 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should throw error when required parameter is undefined 22ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should throw error when required parameter is null 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should pass when required parameter is empty string 21ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should pass when required parameter is zero 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Basic Parameter Validation > should pass when required parameter is false 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Edge Cases > should handle empty args object 23ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Edge Cases > should handle null args 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Edge Cases > should handle undefined args 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Edge Cases > should pass when no required parameters are specified 22ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > validateToolParams > Edge Cases > should handle special characters in parameter names 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > get_node_info > should require nodeType parameter 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > get_node_info > should succeed with valid nodeType 23ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_nodes > should require query parameter 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_nodes > should succeed with valid query 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_nodes > should handle optional limit parameter 23ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_nodes > should reject invalid limit value 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > validate_node_operation > should require nodeType and config parameters 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > validate_node_operation > should require nodeType parameter when config is provided 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > validate_node_operation > should require config parameter when nodeType is provided 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > validate_node_operation > should succeed with valid parameters 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_node_properties > should require nodeType and query parameters 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_node_properties > should succeed with valid parameters 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > search_node_properties > should handle optional maxResults parameter 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > list_node_templates > should require nodeTypes parameter 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > list_node_templates > should succeed with valid nodeTypes array 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > get_template > should require templateId parameter 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tool-Specific Parameter Validation > get_template > should succeed with valid templateId 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > limit parameter conversion > should reject string limit values 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > limit parameter conversion > should reject invalid string limit values 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > limit parameter conversion > should use default when limit is undefined 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > limit parameter conversion > should reject zero as limit due to minimum constraint 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > maxResults parameter conversion > should convert string numbers to numbers 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > maxResults parameter conversion > should use default when maxResults is invalid 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > templateLimit parameter conversion > should reject string limit values 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > templateLimit parameter conversion > should reject invalid string limit values 24ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > templateId parameter handling > should pass through numeric templateId 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Numeric Parameter Conversion > templateId parameter handling > should convert string templateId to number 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tools with No Required Parameters > should allow tools_documentation with no parameters 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tools with No Required Parameters > should allow list_nodes with no parameters 25ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tools with No Required Parameters > should allow list_ai_tools with no parameters 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tools with No Required Parameters > should allow get_database_statistics with no parameters 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Tools with No Required Parameters > should allow list_tasks with no parameters 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Error Message Quality > should provide clear error messages with tool name 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Error Message Quality > should list all missing parameters 27ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > Error Message Quality > should include helpful guidance 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > MCP Error Response Handling > should convert validation errors to MCP error responses rather than throwing exceptions 26ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > MCP Error Response Handling > should handle edge cases in parameter validation gracefully 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > MCP Error Response Handling > should provide consistent error format across all tools 28ms
 ✓ tests/unit/mcp/parameter-validation.test.ts > Parameter Validation > MCP Error Response Handling > should validate n8n management tools parameters 27ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Advanced Input Sanitization > should handle SQL injection attempts in context fields 52ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Advanced Input Sanitization > should handle XSS attempts in context fields 54ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Advanced Input Sanitization > should handle extremely long input values 52ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Advanced Input Sanitization > should handle Unicode and special characters safely 55ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Advanced Input Sanitization > should handle null bytes and control characters 52ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Prototype Pollution Protection > should not be vulnerable to prototype pollution via __proto__ 53ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Prototype Pollution Protection > should not be vulnerable to prototype pollution via constructor 54ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Prototype Pollution Protection > should handle Object.create(null) safely 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Memory Exhaustion Protection > should handle deeply nested objects without stack overflow 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Memory Exhaustion Protection > should handle circular references in metadata 54ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Memory Exhaustion Protection > should handle massive arrays in metadata 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Cache Security and Isolation > should prevent cache key collisions through hash security 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Cache Security and Isolation > should not expose sensitive data in cache key logs 53ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Cache Security and Isolation > should handle hash collisions securely 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Error Message Security > should not expose sensitive data in validation error messages 55ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Error Message Security > should sanitize error details in API responses 52ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Resource Exhaustion Protection > should handle memory pressure gracefully 56ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Resource Exhaustion Protection > should handle high frequency validation requests 81ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Cryptographic Security > should use cryptographically secure hash function 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Cryptographic Security > should handle edge cases in hash input 54ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Injection Attack Prevention > should prevent command injection through context fields 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Injection Attack Prevention > should prevent path traversal attempts 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > Injection Attack Prevention > should prevent LDAP injection attempts 53ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > State Management Security > should maintain isolation between contexts 51ms
 ✓ tests/unit/flexible-instance-security-advanced.test.ts > Advanced Security and Error Handling Tests > State Management Security > should handle concurrent access securely 76ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Cache Key Generation > should generate deterministic SHA-256 hashes 57ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Cache Key Generation > should handle empty instanceId in cache key generation 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Cache Key Generation > should handle undefined values in cache key generation 56ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > URL Sanitization > should sanitize URLs for logging 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > URL Sanitization > should handle various URL formats in sanitization 58ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Cache Key Partial Logging > should create partial cache key for logging 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Cache Key Partial Logging > should handle various hash lengths for partial logging 58ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Error Message Handling > should handle different error types correctly 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Error Message Handling > should handle error objects without message property 57ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Configuration Fallbacks > should handle null config scenarios 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Configuration Fallbacks > should handle undefined config values 57ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Array and Object Handling > should handle undefined array lengths 54ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Array and Object Handling > should handle empty arrays 60ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Array and Object Handling > should handle arrays with elements 57ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Conditional Logic Coverage > should handle truthy cursor values 59ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > Conditional Logic Coverage > should handle falsy cursor values 55ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > String Manipulation > should handle environment variable filtering 60ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > String Manipulation > should handle version string extraction 57ms
 ✓ tests/unit/mcp/handlers-n8n-manager-simple.test.ts > handlers-n8n-manager Simple Coverage Tests > String Manipulation > should handle missing dependencies 58ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > includeExamples parameter > should not include examples when includeExamples is false 30ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > includeExamples parameter > should not include examples when includeExamples is undefined 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > includeExamples parameter > should include examples when includeExamples is true 31ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > includeExamples parameter > should limit examples to top 3 per node 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > example data structure with metadata > should return examples with full metadata structure 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > example data structure with metadata > should include complexity in source metadata 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > example data structure with metadata > should limit use cases to 2 items 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > example data structure with metadata > should handle empty use_cases gracefully 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > caching behavior with includeExamples > should use different cache keys for with/without examples 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > caching behavior with includeExamples > should cache results separately for different includeExamples values 31ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > backward compatibility > should maintain backward compatibility when includeExamples not specified 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > backward compatibility > should return same core data regardless of includeExamples value 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > error handling > should continue to work even if example fetch fails 31ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > error handling > should handle malformed JSON in template configs gracefully 31ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > performance > should complete in reasonable time with examples 32ms
 ✓ tests/unit/mcp/get-node-essentials-examples.test.ts > get_node_essentials with includeExamples > performance > should not add significant overhead when includeExamples is false 32ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Protocol Version Endpoint (GET /mcp) > should return standard response when N8N_MODE is not set 45ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Protocol Version Endpoint (GET /mcp) > should return protocol version when N8N_MODE=true 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Session ID Header (POST /mcp) > should handle POST request when N8N_MODE is not set 45ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Session ID Header (POST /mcp) > should handle POST request when N8N_MODE=true 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Error Response Format > should use JSON-RPC error format for auth errors 44ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Error Response Format > should handle invalid auth token 46ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Error Response Format > should handle invalid auth header format 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Normal Mode Behavior > should maintain standard behavior for health endpoint 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Normal Mode Behavior > should maintain standard behavior for root endpoint 44ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Edge Cases > should handle N8N_MODE with various values 45ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Edge Cases > should handle OPTIONS requests for CORS 44ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Edge Cases > should validate session info methods 47ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > 404 Handler > should handle 404 errors correctly 42ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > 404 Handler > should handle GET requests to non-existent paths 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Security Features > should handle malformed authorization headers 111ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Security Features > should verify server configuration methods exist 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Security Features > should handle valid auth tokens properly 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Security Features > should handle DELETE endpoint without session ID 43ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Security Features > should provide proper error details for debugging 44ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Express Middleware Configuration > should configure all necessary middleware 44ms
 ✓ tests/unit/http-server-n8n-mode.test.ts > HTTP Server n8n Mode > Express Middleware Configuration > should handle CORS preflight for different methods 100ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should initialize similarity services when initializeSimilarityServices is called 45ms
stderr | tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should handle similarity service errors gracefully
Resource similarity service error: Error: Service error
    at Object.<anonymous> (/Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/tests/unit/services/enhanced-config-validator-integration.test.ts:193:15)
    at Object.mockCall (file:///Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/node_modules/@vitest/spy/dist/index.js:96:15)
    at Object.spy [as findSimilarResources] (file:///Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/node_modules/tinyspy/dist/index.js:47:80)
    at Function.validateResourceAndOperation (/Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/src/services/enhanced-config-validator.ts:732:56)
    at Function.addOperationSpecificEnhancements (/Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/src/services/enhanced-config-validator.ts:260:10)
    at Function.validateWithMode (/Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/src/services/enhanced-config-validator.ts:110:10)
    at /Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/tests/unit/services/enhanced-config-validator-integration.test.ts:196:46
    at file:///Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11
    at file:///Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26
    at file:///Users/romualdczlonkowski/Pliki/n8n-mcp/n8n-mcp/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20

 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should use resource similarity service for invalid resource errors 45ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should use operation similarity service for invalid operation errors 45ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should handle similarity service errors gracefully 50ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should not call similarity services for valid configurations 47ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > similarity service integration > should limit suggestion count when calling similarity services 45ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > error enhancement with suggestions > should enhance resource validation errors with suggestions 44ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > error enhancement with suggestions > should enhance operation validation errors with suggestions 45ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > error enhancement with suggestions > should not enhance errors when no good suggestions are available 55ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > error enhancement with suggestions > should provide multiple operation suggestions when resource is known 49ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > confidence thresholds and filtering > should only use high confidence resource suggestions 47ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > confidence thresholds and filtering > should only use high confidence operation suggestions 44ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > integration with existing validation logic > should work with minimal validation mode 45ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > integration with existing validation logic > should work with strict validation profile 44ms
 ✓ tests/unit/services/enhanced-config-validator-integration.test.ts > EnhancedConfigValidator - Integration Tests > integration with existing validation logic > should preserve original error properties when enhancing 44ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Node Repository Performance > should handle bulk inserts efficiently 175ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Node Repository Performance > should search nodes quickly with indexes 284ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Node Repository Performance > should handle concurrent reads efficiently 59ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Template Repository Performance with FTS5 > should perform FTS5 searches efficiently 1061ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Template Repository Performance with FTS5 > should handle complex node type searches efficiently 548ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Database Optimization > should benefit from proper indexing 319ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Database Optimization > should handle VACUUM operation efficiently 62ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Database Optimization > should maintain performance with WAL mode 66ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Memory Usage > should handle large result sets without excessive memory 315ms
 ✓ tests/integration/database/performance.test.ts > Database Performance Tests > Concurrent Write Performance > should handle concurrent writes with transactions 57ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > list_nodes > should list nodes with default parameters 152ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > list_nodes > should filter nodes by category 116ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > list_nodes > should limit results 102ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > list_nodes > should filter by package 131ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > search_nodes > should search nodes by keyword 107ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > search_nodes > should support different search modes 113ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > search_nodes > should respect result limit 101ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > get_node_info > should get complete node information 109ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > get_node_info > should handle non-existent nodes 113ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > get_node_info > should handle invalid node type format 109ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Node Discovery Tools > get_node_essentials > should return condensed node information 130ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_node_operation > should validate valid node configuration 108ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_node_operation > should detect missing required fields 109ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_node_operation > should support different validation profiles 116ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_workflow > should validate complete workflow 111ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_workflow > should detect connection errors 113ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Validation Tools > validate_workflow > should validate expressions 110ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Documentation Tools > tools_documentation > should get quick start guide 124ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Documentation Tools > tools_documentation > should get specific tool documentation 103ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Documentation Tools > tools_documentation > should get comprehensive documentation 113ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Documentation Tools > tools_documentation > should handle invalid topics gracefully 151ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > AI Tools > list_ai_tools > should list AI-capable nodes 112ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > AI Tools > get_node_as_tool_info > should provide AI tool usage information 108ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Task Templates > list_tasks > should list all available tasks 112ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Task Templates > list_tasks > should filter by category 103ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Complex Tool Interactions > should handle tool chaining 111ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Complex Tool Interactions > should handle parallel tool calls 138ms
 ✓ tests/integration/mcp-protocol/tool-invocation.test.ts > MCP Tool Invocation > Complex Tool Interactions > should maintain consistency across related tools 111ms
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Valid Workflow > should validate valid workflow with default profile (runtime) 104ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Valid Workflow > should validate with strict profile 99ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Valid Workflow > should validate with ai-friendly profile 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Valid Workflow > should validate with minimal profile 104ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Invalid Workflow Detection > should detect invalid node type 104ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Invalid Workflow Detection > should detect missing required connections 113ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Selective Validation > should validate nodes only (skip connections) 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Selective Validation > should validate connections only (skip nodes) 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Selective Validation > should validate expressions only 103ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 ✓ tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Error Handling > should handle non-existent workflow ID 35ms
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Error Handling > should handle invalid profile parameter 101ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/validate-workflow.test.ts > Integration: handleValidateWorkflow > Response Format > should return complete validation response structure 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskTemplate > should return template for get_api_data task 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskTemplate > should return template for webhook tasks 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskTemplate > should return template for database tasks 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskTemplate > should return undefined for unknown task 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskTemplate > should have getTemplate alias working 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template structure > should have all required fields in templates 49ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template structure > should have proper user must provide structure 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template structure > should have optional enhancements where applicable 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template structure > should have notes for complex templates 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > special templates > should have process_webhook_data template with detailed code 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > special templates > should have AI agent workflow template 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > special templates > should have error handling pattern templates 47ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > special templates > should have AI tool templates 43ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getAllTasks > should return all task names 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTasksForNode > should return tasks for HTTP Request node 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTasksForNode > should return tasks for Code node 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTasksForNode > should return tasks for Webhook node 46ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTasksForNode > should return empty array for unknown node 47ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > searchTasks > should find tasks by name 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > searchTasks > should find tasks by description 46ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > searchTasks > should find tasks by node type 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > searchTasks > should be case insensitive 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > searchTasks > should return empty array for no matches 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskCategories > should return all task categories 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskCategories > should have tasks assigned to categories 50ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > getTaskCategories > should have tasks in multiple categories where appropriate 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > error handling templates > should have proper retry configuration 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > error handling templates > should have database transaction safety template 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > error handling templates > should have AI rate limit handling 45ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > code node templates > should have aggregate data template 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > code node templates > should have batch processing template 47ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > code node templates > should have error safe transform template 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > code node templates > should have async processing template 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > code node templates > should have Python data analysis template 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template configurations > should have proper error handling defaults 44ms
 ✓ tests/unit/services/task-templates.test.ts > TaskTemplates > template configurations > should have appropriate retry configurations 44ms
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Full Workflow Replacement > should replace entire workflow with new nodes and connections 104ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Update Nodes > should update workflow nodes while preserving other properties 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Update Settings > should update workflow settings without affecting nodes 99ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Validation Errors > should return error for invalid node types 103ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 ✓ tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Validation Errors > should return error for non-existent workflow ID 34ms
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Update Name > should update workflow name without affecting structure 98ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 × tests/integration/n8n-api/workflows/update-workflow.test.ts > Integration: handleUpdateWorkflow > Multiple Properties > should update name and settings together 100ms
   → No response from n8n server
   → No response from n8n server
   → No response from n8n server
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Null and Undefined Handling > should handle null expression gracefully 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Null and Undefined Handling > should handle undefined expression gracefully 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Null and Undefined Handling > should handle null context gracefully 46ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Null and Undefined Handling > should handle undefined context gracefully 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Boundary Value Testing > should handle empty string expression 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Boundary Value Testing > should handle extremely long expressions 48ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Boundary Value Testing > should handle deeply nested property access 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Boundary Value Testing > should handle many different variables in one expression 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Invalid Syntax Handling > should detect unclosed expressions 50ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Invalid Syntax Handling > should detect nested expressions 47ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Invalid Syntax Handling > should detect empty expressions 52ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Invalid Syntax Handling > should handle malformed node references 58ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Special Characters and Unicode > should handle special characters in node names 48ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Special Characters and Unicode > should handle Unicode in property names 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Context Validation > should warn about $input when no input data available 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Context Validation > should handle references to non-existent nodes 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Context Validation > should validate $items function references 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Complex Expression Patterns > should handle JavaScript operations in expressions 44ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Complex Expression Patterns > should handle array access patterns 47ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > validateNodeExpressions > should validate all expressions in node parameters 47ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > validateNodeExpressions > should handle null/undefined in parameters 48ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > validateNodeExpressions > should handle circular references in parameters 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > validateNodeExpressions > should aggregate errors from multiple expressions 47ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Performance Edge Cases > should handle recursive parameter structures efficiently 45ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Performance Edge Cases > should handle large arrays of expressions 56ms
 ✓ tests/unit/services/expression-validator-edge-cases.test.ts > ExpressionValidator - Edge Cases > Error Message Quality > should provide helpful error messages 43ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > GET Method > should trigger GET webhook without data 196ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > GET Method > should trigger GET webhook with query parameters 108ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > GET Method > should trigger GET webhook with custom headers 102ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > GET Method > should trigger GET webhook and wait for response 107ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > POST Method > should trigger POST webhook with JSON data 103ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > POST Method > should trigger POST webhook without data 101ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > POST Method > should trigger POST webhook with custom headers 101ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > POST Method > should trigger POST webhook without waiting for response 99ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > PUT Method > should trigger PUT webhook with update data 111ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > PUT Method > should trigger PUT webhook with custom headers 103ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > PUT Method > should trigger PUT webhook without data 105ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > DELETE Method > should trigger DELETE webhook with query parameters 104ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > DELETE Method > should trigger DELETE webhook with custom headers 103ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > DELETE Method > should trigger DELETE webhook without parameters 101ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Error Handling > should handle invalid webhook URL 38ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Error Handling > should handle malformed webhook URL 32ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Error Handling > should handle missing webhook URL 32ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Error Handling > should handle invalid HTTP method 29ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Default Method Behavior > should default to POST method when not specified 104ms
 ✓ tests/integration/n8n-api/executions/trigger-webhook.test.ts > Integration: handleTriggerWebhookWorkflow > Response Format > should return complete webhook response structure 103ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should analyze simple property dependencies 46ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should handle hide conditions 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should handle multiple dependencies 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should build dependency graph 46ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should identify properties that enable others 46ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should add notes for collection types 48ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should generate helpful descriptions 44ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > analyze > should handle empty properties 46ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > suggestions > should suggest key properties to configure first 44ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > suggestions > should detect circular dependencies 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > suggestions > should note complex dependencies 44ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should determine visible properties for POST method 50ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should determine hidden properties for GET method 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should provide reasons for visibility 46ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should handle partial dependencies 44ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should handle properties without display options 43ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should handle empty configuration 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > getVisibilityImpact > should handle array values in conditions 45ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > edge cases > should handle properties with both show and hide conditions 48ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > edge cases > should handle non-array values in display conditions 44ms
 ✓ tests/unit/services/property-dependencies.test.ts > PropertyDependencies > edge cases > should handle deeply nested property references 45ms
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P0: Node Type Format Bug Fix > should create workflow with webhook node using FULL node type format 109ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P1: Base n8n Nodes > should create workflow with HTTP Request node 101ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P1: Base n8n Nodes > should create workflow with langchain agent node 105ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P1: Base n8n Nodes > should create complex multi-node workflow 105ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P2: Advanced Workflow Features > should create workflow with complex connections and branching 115ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P2: Advanced Workflow Features > should create workflow with custom settings 103ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P2: Advanced Workflow Features > should create workflow with n8n expressions 101ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 × tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > P2: Advanced Workflow Features > should create workflow with error handling configuration 101ms
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
   → expected false to be true // Object.is equality
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Error Scenarios > should reject workflow with invalid node type (MCP validation) 34ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Error Scenarios > should reject workflow with missing required node parameters (MCP validation) 34ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Error Scenarios > should reject workflow with duplicate node names (MCP validation) 29ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Error Scenarios > should reject workflow with invalid connection references (MCP validation) 33ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Edge Cases > should reject single-node non-webhook workflow (MCP validation) 32ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Edge Cases > should reject single-node non-trigger workflow (MCP validation) 32ms
 ✓ tests/integration/n8n-api/workflows/create-workflow.test.ts > Integration: handleCreateWorkflow > Edge Cases > should reject single-node workflow without settings (MCP validation) 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > saveNode > should save single node successfully 31ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > saveNode > should update existing nodes 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > saveNode > should handle nodes with complex properties 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > saveNode > should handle very large nodes 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNode > should retrieve node by type 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNode > should return null for non-existent node 30ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNode > should handle special characters in node types 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getAllNodes > should return empty array when no nodes 42ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getAllNodes > should return all nodes with limit 47ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getAllNodes > should return all nodes without limit 35ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getAllNodes > should handle very large result sets efficiently 61ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNodesByPackage > should filter nodes by package 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNodesByPackage > should return empty array for non-existent package 31ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNodesByCategory > should filter nodes by category 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should search by node type 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should search by display name 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should search by description 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should handle OR mode (default) 31ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should handle AND mode 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should handle FUZZY mode 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should handle case-insensitive search 34ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should return empty array for no matches 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodes > should respect limit parameter 30ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getAITools > should return only AI tool nodes 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > getNodeCount > should return correct node count 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodeProperties > should find properties by name 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodeProperties > should find nested properties 32ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > searchNodeProperties > should return empty array for non-existent node 30ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > Transaction handling > should handle errors gracefully 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > Transaction handling > should handle concurrent saves 33ms
 ✓ tests/integration/database/node-repository.test.ts > NodeRepository Integration Tests > Performance characteristics > should handle bulk operations efficiently 52ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > JSON-RPC Error Codes > should handle invalid request (parse error) 120ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > JSON-RPC Error Codes > should handle method not found 112ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > JSON-RPC Error Codes > should handle invalid params 108ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > JSON-RPC Error Codes > should handle internal errors gracefully 153ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Node Discovery Errors > should handle invalid category filter 107ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Node Discovery Errors > should handle invalid search mode 108ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Node Discovery Errors > should handle empty search query 119ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Node Discovery Errors > should handle non-existent node types 110ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Validation Errors > should handle invalid validation profile 109ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Validation Errors > should handle malformed workflow structure 111ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Validation Errors > should handle circular workflow references 109ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Documentation Errors > should handle non-existent documentation topics 110ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Tool-Specific Errors > Documentation Errors > should handle invalid depth parameter 117ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Large Payload Handling > should handle large node info requests 121ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Large Payload Handling > should handle large workflow validation 120ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Large Payload Handling > should handle many concurrent requests 124ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Invalid JSON Handling > should handle invalid JSON in tool parameters 116ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Invalid JSON Handling > should handle malformed workflow JSON 156ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Timeout Scenarios > should handle rapid sequential requests 358ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Timeout Scenarios > should handle long-running operations 111ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Memory Pressure > should handle multiple large responses 111ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Memory Pressure > should handle workflow with many nodes 110ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Error Recovery > should continue working after errors 110ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Error Recovery > should handle mixed success and failure 121ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Edge Cases > should handle empty responses gracefully 106ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Edge Cases > should handle special characters in parameters 107ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Edge Cases > should handle unicode in parameters 108ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Edge Cases > should handle null and undefined gracefully 133ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Error Message Quality > should provide helpful error messages 111ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Error Message Quality > should indicate missing required parameters 107ms
 ✓ tests/integration/mcp-protocol/error-handling.test.ts > MCP Error Handling > Error Message Quality > should provide context for validation errors 112ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should detect incorrect error output configuration via MCP 123ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should validate correct error output configuration via MCP 117ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should detect onError and connection mismatches via MCP 113ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should handle large workflows with complex error patterns via MCP 135ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should handle edge cases gracefully via MCP 109ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > validate_workflow tool - Error Output Configuration > should validate with different validation profiles via MCP 109ms
 ✓ tests/integration/mcp-protocol/workflow-error-validation.test.ts > MCP Workflow Error Output Validation Integration > Error Message Format Consistency > should format error messages consistently across different scenarios 111ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > getNodeTypes > should return node types registry 32ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > getNodeTypes > should retrieve webhook node 30ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > getNodeTypes > should retrieve httpRequest node 33ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > getNodeTypes > should retrieve slack node 33ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > node execution > should execute webhook node 32ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > node execution > should execute httpRequest node 33ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > mockNodeBehavior > should override node execution behavior 30ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > mockNodeBehavior > should override node description 32ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > registerMockNode > should register custom node 32ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > conditional nodes > should execute if node with two outputs 32ms
 ✓ tests/unit/__mocks__/n8n-nodes-base.test.ts > n8n-nodes-base mock > conditional nodes > should execute switch node with multiple outputs 32ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Operations > should detect invalid operation "listFiles" for Google Drive 36ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Operations > should provide suggestions for typos in operations 31ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Operations > should list valid operations for the resource 33ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Resources > should detect plural resource "files" and suggest singular 34ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Resources > should suggest similar resources for typos 33ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Invalid Resources > should list valid resources when no match found 33ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Combined Resource and Operation Validation > should validate both resource and operation together 31ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Slack Node Validation > should suggest "send" instead of "sendMessage" 34ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Slack Node Validation > should suggest singular "channel" instead of "channels" 34ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Valid Configurations > should accept valid Google Drive configuration 36ms
 ✓ tests/unit/services/enhanced-config-validator-operations.test.ts > EnhancedConfigValidator - Operation and Resource Validation > Valid Configurations > should accept valid Slack configuration 37ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Querying Examples Directly > should fetch top 2 examples for webhook node 32ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Querying Examples Directly > should fetch top 3 examples with metadata for HTTP request node 38ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Example Data Structure Validation > should have valid JSON in parameters_json 37ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Example Data Structure Validation > should have valid JSON in use_cases 36ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Example Data Structure Validation > should have credentials_json when has_credentials is 1 35ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Ranked View Functionality > should return only top 5 ranked configs per node type from view 32ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Performance with Real-World Data Volume > should query specific node type examples quickly 42ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Performance with Real-World Data Volume > should filter by complexity efficiently 48ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Edge Cases > should handle node types with no configs 39ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Edge Cases > should handle very long parameters_json 63ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Edge Cases > should handle special characters in parameters 42ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Data Integrity > should maintain referential integrity with templates table 41ms
 ✓ tests/integration/mcp/template-examples-e2e.test.ts > Template Examples E2E Integration > Data Integrity > should cascade delete configs when template is deleted 42ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Structure Validation > should have all required properties for each tool 35ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Structure Validation > should have unique tool names 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Structure Validation > should have valid JSON Schema for all inputSchemas 39ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > tools_documentation > should exist 39ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > tools_documentation > should have correct schema 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > tools_documentation > should have helpful description 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > list_nodes > should exist 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > list_nodes > should have correct schema properties 30ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > list_nodes > should have correct defaults 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > list_nodes > should have proper enum values 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_node_info > should exist 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_node_info > should have nodeType as required parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_node_info > should mention performance implications in description 31ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > search_nodes > should exist 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > search_nodes > should have query as required parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > search_nodes > should have mode enum with correct values 38ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > search_nodes > should have limit with default value 38ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > validate_workflow > should exist 31ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > validate_workflow > should have workflow as required parameter 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > validate_workflow > should have options with correct validation settings 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > validate_workflow > should have correct profile enum values 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_templates_for_task > should exist 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_templates_for_task > should have task as required parameter 31ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Individual Tool Validation > get_templates_for_task > should have correct task enum values 35ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Description Quality > should have concise descriptions that fit in one line 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Description Quality > should include examples or key information in descriptions 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Schema Consistency > should use consistent parameter naming 31ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Schema Consistency > should have consistent limit parameter defaults 30ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Tool Categories Coverage > should have tools for all major categories 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Parameter Validation > should have proper type definitions for all parameters 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Parameter Validation > should mark required parameters correctly 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Edge Cases > should handle tools with no parameters 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > Edge Cases > should have array parameters defined correctly 36ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > list_templates > should exist and be properly defined 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > list_templates > should have correct parameters 36ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > list_templates > should have no required parameters 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > get_template (enhanced) > should exist and support mode parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > get_template (enhanced) > should have mode parameter with correct values 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > get_template (enhanced) > should require templateId parameter 29ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should exist in the tools array 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have proper description 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have correct input schema structure 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have category parameter with proper schema 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have complexity parameter with enum values 29ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have time-based parameters with numeric constraints 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have service and audience parameters 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have pagination parameters 35ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should include all expected properties 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > search_templates_by_metadata > should have appropriate additionalProperties setting 29ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > list_node_templates > should support limit parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > list_node_templates > should support offset parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > search_templates > should support limit parameter 34ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > search_templates > should support offset parameter 33ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > get_templates_for_task > should support limit parameter 38ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > get_templates_for_task > should support offset parameter 41ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > search_templates_by_metadata > should support limit parameter 32ms
 ✓ tests/unit/mcp/tools.test.ts > n8nDocumentationToolsFinal > New Template Tools > Enhanced pagination support > search_templates_by_metadata > should support offset parameter 32ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > includeExamples parameter > should not include examples when includeExamples is false 37ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > includeExamples parameter > should not include examples when includeExamples is undefined 35ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > includeExamples parameter > should include examples when includeExamples is true 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > includeExamples parameter > should handle nodes without examples gracefully 33ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > includeExamples parameter > should limit examples to top 2 per node 32ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > example data structure > should return examples with correct structure when present 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > backward compatibility > should maintain backward compatibility when includeExamples not specified 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > performance considerations > should not significantly impact performance when includeExamples is false 33ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > error handling > should continue to work even if example fetch fails 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > search_nodes with includeExamples > error handling > should handle malformed parameters_json gracefully 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > searchNodesLIKE with includeExamples > should support includeExamples in LIKE search 35ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > searchNodesLIKE with includeExamples > should not include examples when includeExamples is false 33ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > searchNodesFTS with includeExamples > should support includeExamples in FTS search 34ms
 ✓ tests/unit/mcp/search-nodes-examples.test.ts > searchNodesFTS with includeExamples > should pass options to example fetching logic 34ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should extract operations from array format 34ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should extract operations from object format grouped by resource 34ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should extract operations from properties with operation field 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should filter operations by resource when specified 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should return empty array for non-existent node 32ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should handle nodes without operations 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeOperations > should handle malformed operations JSON gracefully 30ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeResources > should extract resources from properties 34ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeResources > should return empty array for node without resources 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeResources > should return empty array for non-existent node 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getNodeResources > should handle multiple resource properties 32ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getOperationsForResource > should return operations for specific resource 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getOperationsForResource > should handle array format for resource display options 30ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getOperationsForResource > should return empty array for non-existent node 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getOperationsForResource > should handle string format for single resource 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getAllOperations > should collect operations from all nodes 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getAllOperations > should handle empty node list 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getAllResources > should collect resources from all nodes 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > getAllResources > should handle empty node list 32ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > edge cases and error handling > should handle null or undefined properties gracefully 30ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > edge cases and error handling > should handle complex nested operation properties 33ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > edge cases and error handling > should handle operations with mixed data types 32ms
 ✓ tests/unit/database/node-repository-operations.test.ts > NodeRepository - Operations and Resources > edge cases and error handling > should handle very deeply nested properties 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should generate preview for empty execution 30ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should generate preview with accurate item counts 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should extract data structure from nodes 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should estimate data size 34ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should detect error status in nodes 34ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should recommend full mode for small datasets 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should recommend filtered mode for large datasets 31ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Preview Mode > should recommend summary mode for moderate datasets 41ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should filter by node names 42ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should handle non-existent node names gracefully 36ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should limit items to 0 (structure only) 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should limit items to 2 (default) 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should limit items to custom value 30ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should not truncate when itemsLimit is -1 (unlimited) 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should not truncate when items are less than limit 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should include input data when requested 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Filtering > should not include input data by default 34ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Modes > should handle preview mode 32ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Modes > should handle summary mode 30ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Modes > should handle filtered mode 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Modes > should handle full mode 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should handle execution with no data 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should handle execution with error 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should handle empty node data arrays 32ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should handle nested data structures 30ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should calculate duration correctly 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Edge Cases > should handle execution without stop time 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - processExecution > should return original execution when no options provided 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - processExecution > should process when mode is specified 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - processExecution > should process when filtering options are provided 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Summary Statistics > should calculate hasMoreData correctly 30ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Summary Statistics > should set hasMoreData to false when all data is included 33ms
 ✓ tests/unit/services/execution-processor.test.ts > ExecutionProcessor - Summary Statistics > should count total items correctly across multiple nodes 33ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > saveNode > should save a node with proper JSON serialization 35ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > saveNode > should handle nodes without optional fields 31ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > getNode > should retrieve and deserialize a node correctly 32ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > getNode > should return null for non-existent nodes 33ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > getNode > should handle invalid JSON gracefully 35ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > getAITools > should retrieve all AI tools sorted by display name 34ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > getAITools > should return empty array when no AI tools exist 33ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > safeJsonParse > should parse valid JSON 34ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > safeJsonParse > should return default value for invalid JSON 32ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > safeJsonParse > should handle empty strings 34ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > safeJsonParse > should handle null and undefined 33ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > Edge Cases > should handle very large JSON properties 34ms
 ✓ tests/unit/database/node-repository-core.test.ts > NodeRepository - Core Functionality > Edge Cases > should handle boolean conversion for integer fields 34ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://app.n8n.cloud 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://tenant1.n8n.cloud 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://my-company.n8n.cloud 50ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://n8n.example.com 52ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://automation.company.com 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: http://localhost:5678 52ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://localhost:8443 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: http://127.0.0.1:5678 71ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://192.168.1.100:8080 56ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://10.0.0.1:3000 50ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: http://n8n.internal.company.com 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Real-world URL patterns > should accept realistic n8n URL: https://workflow.enterprise.local 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: javascript:alert("xss") 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: vbscript:msgbox("xss") 52ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: data:text/html,<script>alert("xss")</script> 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: file:///etc/passwd 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: ldap://attacker.com/cn=admin 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Security validation > should reject potentially malicious URL: ftp://malicious.com 52ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should reject invalid API key: "" 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should reject invalid API key: "placeholder" 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should reject invalid API key: "YOUR_API_KEY" 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should reject invalid API key: "example" 50ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should reject invalid API key: "your_api_key_here" 57ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > API key validation > should accept valid API keys 53ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Edge cases and error handling > should handle partial instance context 50ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Edge cases and error handling > should handle completely empty context 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Edge cases and error handling > should handle numerical values gracefully 49ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Edge cases and error handling > should reject invalid numerical values 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > InstanceContext Validation > Edge cases and error handling > should reject invalid retry values 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Environment Variable Handling > should handle ENABLE_MULTI_TENANT flag correctly 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Environment Variable Handling > should handle N8N_API_URL and N8N_API_KEY environment variables 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Header Processing Simulation > should process multi-tenant headers correctly 50ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Header Processing Simulation > should handle missing headers gracefully 46ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Header Processing Simulation > should handle malformed headers 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Configuration Priority Logic > should implement correct priority logic for tool inclusion 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Session Management Concepts > should generate consistent identifiers for same configuration 51ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Session Management Concepts > should generate different identifiers for different configurations 48ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Session Management Concepts > should handle session isolation concepts 47ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Error Scenarios and Recovery > should handle validation errors gracefully 49ms
 ✓ tests/unit/multi-tenant-integration.test.ts > Multi-Tenant Support Integration > Error Scenarios and Recovery > should provide specific error messages 48ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validateWithMode > should validate config with operation awareness 50ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validateWithMode > should extract operation context from config 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validateWithMode > should filter properties based on operation context 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validateWithMode > should handle minimal validation mode 63ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validation profiles > should apply strict profile with all checks 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > validation profiles > should apply runtime profile focusing on critical errors 50ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enhanced validation features > should provide examples for common errors 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enhanced validation features > should suggest next steps for incomplete configurations 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > deduplicateErrors > should remove duplicate errors for the same property and type 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > deduplicateErrors > should prefer errors with fix information over those without 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > deduplicateErrors > should handle empty error arrays 50ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > applyProfileFilters - strict profile > should add suggestions for error-free configurations in strict mode 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > applyProfileFilters - strict profile > should enforce error handling for external service nodes in strict mode 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > applyProfileFilters - strict profile > should keep all errors, warnings, and suggestions in strict mode 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enforceErrorHandlingForProfile > should add error handling warning for external service nodes 51ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enforceErrorHandlingForProfile > should not add warning for non-error-prone nodes 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enforceErrorHandlingForProfile > should not match httpRequest due to case sensitivity bug 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > enforceErrorHandlingForProfile > should only enforce for strict profile 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > addErrorHandlingSuggestions > should add network error handling suggestions when URL errors exist 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > addErrorHandlingSuggestions > should add webhook-specific suggestions 56ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > addErrorHandlingSuggestions > should detect webhook from error messages 48ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > addErrorHandlingSuggestions > should not add duplicate suggestions 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > filterPropertiesByOperation - real implementation > should filter properties based on operation context matching 67ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > filterPropertiesByOperation - real implementation > should handle properties without displayOptions in operation mode 64ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > isPropertyRelevantToOperation > should handle action field in operation context 50ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > isPropertyRelevantToOperation > should return false when action does not match 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > isPropertyRelevantToOperation > should handle arrays in displayOptions 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > operation-specific enhancements > should enhance MongoDB validation 46ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > operation-specific enhancements > should enhance MySQL validation 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > operation-specific enhancements > should enhance Postgres validation 52ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > generateNextSteps > should generate steps for different error types 48ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > generateNextSteps > should suggest addressing warnings when no errors exist 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > minimal validation mode edge cases > should only validate visible required properties in minimal mode 47ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > complex operation contexts > should handle all operation context fields (resource, operation, action, mode) 50ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > complex operation contexts > should validate Google Sheets append operation with range warning 48ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > complex operation contexts > should enhance Slack message send validation 57ms
 ✓ tests/unit/services/enhanced-config-validator.test.ts > EnhancedConfigValidator > profile-specific edge cases > should filter internal warnings in ai-friendly profile 52ms

```
Page 47/48FirstPrevNextLast