agentic-qe 3.7.8 → 3.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/.claude/skills/debug-loop/SKILL.md +1 -1
  2. package/.claude/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +158 -0
  3. package/.claude/skills/enterprise-integration-testing/schemas/output.json +74 -0
  4. package/.claude/skills/enterprise-integration-testing/scripts/validate-config.json +25 -0
  5. package/.claude/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +153 -0
  6. package/.claude/skills/middleware-testing-patterns/schemas/output.json +58 -0
  7. package/.claude/skills/middleware-testing-patterns/scripts/validate-config.json +25 -0
  8. package/.claude/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +157 -0
  9. package/.claude/skills/observability-testing-patterns/schemas/output.json +58 -0
  10. package/.claude/skills/observability-testing-patterns/scripts/validate-config.json +25 -0
  11. package/.claude/skills/pr-review/SKILL.md +1 -1
  12. package/.claude/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +211 -0
  13. package/.claude/skills/qcsd-cicd-swarm/schemas/output.json +86 -0
  14. package/.claude/skills/qcsd-cicd-swarm/scripts/validate-config.json +30 -0
  15. package/.claude/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +162 -0
  16. package/.claude/skills/qcsd-development-swarm/schemas/output.json +72 -0
  17. package/.claude/skills/qcsd-development-swarm/scripts/validate-config.json +25 -0
  18. package/.claude/skills/skills-manifest.json +1 -1
  19. package/.claude/skills/trust-tier-manifest.json +78 -7
  20. package/CHANGELOG.md +20 -0
  21. package/assets/skills/a11y-ally/SKILL.md +1664 -1658
  22. package/assets/skills/a11y-ally/evals/a11y-ally.yaml +376 -0
  23. package/assets/skills/a11y-ally/schemas/output.json +549 -0
  24. package/assets/skills/a11y-ally/scripts/validate-config.json +42 -0
  25. package/assets/skills/brutal-honesty-review/SKILL.md +5 -0
  26. package/assets/skills/brutal-honesty-review/schemas/output.json +291 -0
  27. package/assets/skills/brutal-honesty-review/scripts/validate-config.json +34 -0
  28. package/assets/skills/cicd-pipeline-qe-orchestrator/README.md +1 -1
  29. package/assets/skills/cicd-pipeline-qe-orchestrator/SKILL.md +6 -0
  30. package/assets/skills/cicd-pipeline-qe-orchestrator/evals/cicd-pipeline-qe-orchestrator.yaml +157 -0
  31. package/assets/skills/cicd-pipeline-qe-orchestrator/schemas/output.json +542 -0
  32. package/assets/skills/cicd-pipeline-qe-orchestrator/scripts/validate-config.json +42 -0
  33. package/assets/skills/debug-loop/SKILL.md +1 -1
  34. package/assets/skills/enterprise-integration-testing/evals/enterprise-integration-testing.yaml +158 -0
  35. package/assets/skills/enterprise-integration-testing/schemas/output.json +74 -0
  36. package/assets/skills/enterprise-integration-testing/scripts/validate-config.json +25 -0
  37. package/assets/skills/middleware-testing-patterns/evals/middleware-testing-patterns.yaml +153 -0
  38. package/assets/skills/middleware-testing-patterns/schemas/output.json +58 -0
  39. package/assets/skills/middleware-testing-patterns/scripts/validate-config.json +25 -0
  40. package/assets/skills/n8n-expression-testing/SKILL.md +6 -0
  41. package/assets/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +450 -0
  42. package/assets/skills/n8n-expression-testing/schemas/output.json +369 -0
  43. package/assets/skills/n8n-expression-testing/scripts/validate-config.json +39 -0
  44. package/assets/skills/n8n-integration-testing-patterns/SKILL.md +6 -0
  45. package/assets/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +522 -0
  46. package/assets/skills/n8n-integration-testing-patterns/schemas/output.json +291 -0
  47. package/assets/skills/n8n-integration-testing-patterns/scripts/validate-config.json +34 -0
  48. package/assets/skills/n8n-security-testing/SKILL.md +6 -0
  49. package/assets/skills/n8n-security-testing/evals/n8n-security-testing.yaml +493 -0
  50. package/assets/skills/n8n-security-testing/schemas/output.json +293 -0
  51. package/assets/skills/n8n-security-testing/scripts/validate-config.json +34 -0
  52. package/assets/skills/n8n-trigger-testing-strategies/SKILL.md +6 -0
  53. package/assets/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +500 -0
  54. package/assets/skills/n8n-trigger-testing-strategies/schemas/output.json +295 -0
  55. package/assets/skills/n8n-trigger-testing-strategies/scripts/validate-config.json +34 -0
  56. package/assets/skills/n8n-workflow-testing-fundamentals/SKILL.md +6 -0
  57. package/assets/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +497 -0
  58. package/assets/skills/n8n-workflow-testing-fundamentals/schemas/output.json +254 -0
  59. package/assets/skills/n8n-workflow-testing-fundamentals/scripts/validate-config.json +35 -0
  60. package/assets/skills/observability-testing-patterns/evals/observability-testing-patterns.yaml +157 -0
  61. package/assets/skills/observability-testing-patterns/schemas/output.json +58 -0
  62. package/assets/skills/observability-testing-patterns/scripts/validate-config.json +25 -0
  63. package/assets/skills/pentest-validation/scripts/validate-config.json +12 -0
  64. package/assets/skills/pr-review/SKILL.md +1 -1
  65. package/assets/skills/qcsd-cicd-swarm/evals/qcsd-cicd-swarm.yaml +211 -0
  66. package/assets/skills/qcsd-cicd-swarm/schemas/output.json +86 -0
  67. package/assets/skills/qcsd-cicd-swarm/scripts/validate-config.json +30 -0
  68. package/assets/skills/qcsd-development-swarm/evals/qcsd-development-swarm.yaml +162 -0
  69. package/assets/skills/qcsd-development-swarm/schemas/output.json +72 -0
  70. package/assets/skills/qcsd-development-swarm/scripts/validate-config.json +25 -0
  71. package/assets/skills/qcsd-ideation-swarm/evals/qcsd-ideation-swarm.yaml +138 -0
  72. package/assets/skills/qcsd-ideation-swarm/schemas/output.json +568 -0
  73. package/assets/skills/qcsd-ideation-swarm/scripts/validate-config.json +25 -0
  74. package/assets/skills/qcsd-production-swarm/SKILL.md +2781 -0
  75. package/assets/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +246 -0
  76. package/assets/skills/qcsd-production-swarm/schemas/output.json +505 -0
  77. package/assets/skills/qcsd-production-swarm/scripts/validate-config.json +25 -0
  78. package/assets/skills/qcsd-refinement-swarm/evals/qcsd-refinement-swarm.yaml +139 -0
  79. package/assets/skills/qcsd-refinement-swarm/schemas/output.json +811 -0
  80. package/assets/skills/qcsd-refinement-swarm/scripts/validate-config.json +25 -0
  81. package/assets/skills/security-visual-testing/scripts/validate-config.json +45 -0
  82. package/assets/skills/sherlock-review/SKILL.md +5 -0
  83. package/assets/skills/sherlock-review/schemas/output.json +297 -0
  84. package/assets/skills/sherlock-review/scripts/validate-config.json +35 -0
  85. package/assets/skills/testability-scoring/SKILL.md +5 -0
  86. package/assets/skills/testability-scoring/evals/testability-scoring.yaml +814 -0
  87. package/assets/skills/testability-scoring/schemas/output.json +606 -0
  88. package/assets/skills/testability-scoring/scripts/validate-config.json +42 -0
  89. package/assets/skills/trust-tier-manifest.json +2404 -0
  90. package/assets/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +165 -0
  91. package/assets/skills/wms-testing-patterns/schemas/output.json +150 -0
  92. package/assets/skills/wms-testing-patterns/scripts/validate-config.json +51 -0
  93. package/dist/benchmarks/performance-benchmarks.js +1 -1
  94. package/dist/cli/bundle.js +9130 -2283
  95. package/dist/cli/commands/hooks.d.ts.map +1 -1
  96. package/dist/cli/commands/hooks.js +92 -0
  97. package/dist/cli/commands/hooks.js.map +1 -1
  98. package/dist/cli/commands/migrate.js +2 -2
  99. package/dist/coordination/constants.d.ts +1 -1
  100. package/dist/coordination/constants.js +1 -1
  101. package/dist/coordination/handlers/coverage-handlers.js +1 -1
  102. package/dist/coordination/handlers/coverage-handlers.js.map +1 -1
  103. package/dist/domains/code-intelligence/services/semantic-analyzer.d.ts +1 -1
  104. package/dist/domains/code-intelligence/services/semantic-analyzer.d.ts.map +1 -1
  105. package/dist/domains/code-intelligence/services/semantic-analyzer.js +1 -1
  106. package/dist/domains/code-intelligence/services/semantic-analyzer.js.map +1 -1
  107. package/dist/domains/coverage-analysis/coordinator.js +1 -1
  108. package/dist/domains/coverage-analysis/services/coverage-analyzer.js +1 -1
  109. package/dist/domains/coverage-analysis/services/coverage-embedder.d.ts +1 -1
  110. package/dist/domains/coverage-analysis/services/coverage-embedder.js +1 -1
  111. package/dist/domains/coverage-analysis/services/gap-detector.js +1 -1
  112. package/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js +1 -1
  113. package/dist/domains/coverage-analysis/services/hnsw-index.d.ts +2 -2
  114. package/dist/domains/coverage-analysis/services/hnsw-index.js +3 -3
  115. package/dist/domains/coverage-analysis/services/sublinear-analyzer.d.ts +1 -1
  116. package/dist/domains/coverage-analysis/services/sublinear-analyzer.js +1 -1
  117. package/dist/domains/test-execution/services/test-prioritizer.js +1 -1
  118. package/dist/domains/test-generation/context/rust-context-builder.d.ts +31 -0
  119. package/dist/domains/test-generation/context/rust-context-builder.d.ts.map +1 -0
  120. package/dist/domains/test-generation/context/rust-context-builder.js +27 -0
  121. package/dist/domains/test-generation/context/rust-context-builder.js.map +1 -0
  122. package/dist/domains/test-generation/coordinator.js +3 -3
  123. package/dist/domains/test-generation/coordinator.js.map +1 -1
  124. package/dist/domains/test-generation/detectors/mobile-detector.d.ts +41 -0
  125. package/dist/domains/test-generation/detectors/mobile-detector.d.ts.map +1 -0
  126. package/dist/domains/test-generation/detectors/mobile-detector.js +111 -0
  127. package/dist/domains/test-generation/detectors/mobile-detector.js.map +1 -0
  128. package/dist/domains/test-generation/detectors/spring-detector.d.ts +22 -0
  129. package/dist/domains/test-generation/detectors/spring-detector.d.ts.map +1 -0
  130. package/dist/domains/test-generation/detectors/spring-detector.js +37 -0
  131. package/dist/domains/test-generation/detectors/spring-detector.js.map +1 -0
  132. package/dist/domains/test-generation/factories/test-generator-factory.d.ts +2 -1
  133. package/dist/domains/test-generation/factories/test-generator-factory.d.ts.map +1 -1
  134. package/dist/domains/test-generation/factories/test-generator-factory.js +33 -13
  135. package/dist/domains/test-generation/factories/test-generator-factory.js.map +1 -1
  136. package/dist/domains/test-generation/generators/flutter-test-generator.d.ts +107 -0
  137. package/dist/domains/test-generation/generators/flutter-test-generator.d.ts.map +1 -0
  138. package/dist/domains/test-generation/generators/flutter-test-generator.js +590 -0
  139. package/dist/domains/test-generation/generators/flutter-test-generator.js.map +1 -0
  140. package/dist/domains/test-generation/generators/go-test-generator.d.ts +139 -0
  141. package/dist/domains/test-generation/generators/go-test-generator.d.ts.map +1 -0
  142. package/dist/domains/test-generation/generators/go-test-generator.js +654 -0
  143. package/dist/domains/test-generation/generators/go-test-generator.js.map +1 -0
  144. package/dist/domains/test-generation/generators/index.d.ts +8 -0
  145. package/dist/domains/test-generation/generators/index.d.ts.map +1 -1
  146. package/dist/domains/test-generation/generators/index.js +8 -0
  147. package/dist/domains/test-generation/generators/index.js.map +1 -1
  148. package/dist/domains/test-generation/generators/jest-rn-generator.d.ts +95 -0
  149. package/dist/domains/test-generation/generators/jest-rn-generator.d.ts.map +1 -0
  150. package/dist/domains/test-generation/generators/jest-rn-generator.js +591 -0
  151. package/dist/domains/test-generation/generators/jest-rn-generator.js.map +1 -0
  152. package/dist/domains/test-generation/generators/junit5-generator.d.ts +107 -0
  153. package/dist/domains/test-generation/generators/junit5-generator.d.ts.map +1 -0
  154. package/dist/domains/test-generation/generators/junit5-generator.js +588 -0
  155. package/dist/domains/test-generation/generators/junit5-generator.js.map +1 -0
  156. package/dist/domains/test-generation/generators/kotlin-junit-generator.d.ts +109 -0
  157. package/dist/domains/test-generation/generators/kotlin-junit-generator.d.ts.map +1 -0
  158. package/dist/domains/test-generation/generators/kotlin-junit-generator.js +588 -0
  159. package/dist/domains/test-generation/generators/kotlin-junit-generator.js.map +1 -0
  160. package/dist/domains/test-generation/generators/pytest-generator.d.ts +8 -1
  161. package/dist/domains/test-generation/generators/pytest-generator.d.ts.map +1 -1
  162. package/dist/domains/test-generation/generators/pytest-generator.js +57 -0
  163. package/dist/domains/test-generation/generators/pytest-generator.js.map +1 -1
  164. package/dist/domains/test-generation/generators/rust-test-generator.d.ts +80 -0
  165. package/dist/domains/test-generation/generators/rust-test-generator.d.ts.map +1 -0
  166. package/dist/domains/test-generation/generators/rust-test-generator.js +442 -0
  167. package/dist/domains/test-generation/generators/rust-test-generator.js.map +1 -0
  168. package/dist/domains/test-generation/generators/swift-testing-generator.d.ts +97 -0
  169. package/dist/domains/test-generation/generators/swift-testing-generator.d.ts.map +1 -0
  170. package/dist/domains/test-generation/generators/swift-testing-generator.js +482 -0
  171. package/dist/domains/test-generation/generators/swift-testing-generator.js.map +1 -0
  172. package/dist/domains/test-generation/generators/xunit-generator.d.ts +110 -0
  173. package/dist/domains/test-generation/generators/xunit-generator.d.ts.map +1 -0
  174. package/dist/domains/test-generation/generators/xunit-generator.js +611 -0
  175. package/dist/domains/test-generation/generators/xunit-generator.js.map +1 -0
  176. package/dist/domains/test-generation/interfaces.d.ts +11 -2
  177. package/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  178. package/dist/domains/test-generation/prompts/language-prompts.d.ts +29 -0
  179. package/dist/domains/test-generation/prompts/language-prompts.d.ts.map +1 -0
  180. package/dist/domains/test-generation/prompts/language-prompts.js +135 -0
  181. package/dist/domains/test-generation/prompts/language-prompts.js.map +1 -0
  182. package/dist/domains/test-generation/services/compilation-validator.d.ts +43 -0
  183. package/dist/domains/test-generation/services/compilation-validator.d.ts.map +1 -0
  184. package/dist/domains/test-generation/services/compilation-validator.js +134 -0
  185. package/dist/domains/test-generation/services/compilation-validator.js.map +1 -0
  186. package/dist/domains/test-generation/services/index.d.ts +2 -1
  187. package/dist/domains/test-generation/services/index.d.ts.map +1 -1
  188. package/dist/domains/test-generation/services/index.js +3 -1
  189. package/dist/domains/test-generation/services/index.js.map +1 -1
  190. package/dist/domains/test-generation/services/test-file-resolver.d.ts +32 -0
  191. package/dist/domains/test-generation/services/test-file-resolver.d.ts.map +1 -0
  192. package/dist/domains/test-generation/services/test-file-resolver.js +159 -0
  193. package/dist/domains/test-generation/services/test-file-resolver.js.map +1 -0
  194. package/dist/domains/test-generation/services/test-generator.d.ts +10 -0
  195. package/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  196. package/dist/domains/test-generation/services/test-generator.js +87 -10
  197. package/dist/domains/test-generation/services/test-generator.js.map +1 -1
  198. package/dist/governance/feature-flags.js +2 -2
  199. package/dist/governance/feature-flags.js.map +1 -1
  200. package/dist/governance/shard-embeddings.js +1 -1
  201. package/dist/init/init-wizard-hooks.d.ts.map +1 -1
  202. package/dist/init/init-wizard-hooks.js +0 -1
  203. package/dist/init/init-wizard-hooks.js.map +1 -1
  204. package/dist/init/phases/07-hooks.d.ts.map +1 -1
  205. package/dist/init/phases/07-hooks.js +0 -2
  206. package/dist/init/phases/07-hooks.js.map +1 -1
  207. package/dist/init/phases/08-mcp.d.ts +8 -4
  208. package/dist/init/phases/08-mcp.d.ts.map +1 -1
  209. package/dist/init/phases/08-mcp.js +13 -31
  210. package/dist/init/phases/08-mcp.js.map +1 -1
  211. package/dist/init/phases/10-workers.js +2 -2
  212. package/dist/init/phases/10-workers.js.map +1 -1
  213. package/dist/init/settings-merge.d.ts.map +1 -1
  214. package/dist/init/settings-merge.js +0 -2
  215. package/dist/init/settings-merge.js.map +1 -1
  216. package/dist/init/token-bootstrap.js +1 -1
  217. package/dist/init/token-bootstrap.js.map +1 -1
  218. package/dist/integrations/rl-suite/algorithms/decision-transformer.js +1 -1
  219. package/dist/kernel/constants.d.ts +2 -2
  220. package/dist/kernel/constants.js +2 -2
  221. package/dist/kernel/hnsw-adapter.js +1 -1
  222. package/dist/kernel/progressive-hnsw-backend.d.ts +2 -2
  223. package/dist/kernel/progressive-hnsw-backend.js +2 -2
  224. package/dist/learning/dream/concept-graph.d.ts +1 -1
  225. package/dist/learning/dream/concept-graph.js +1 -1
  226. package/dist/learning/dream/dream-engine.d.ts +1 -1
  227. package/dist/learning/dream/dream-engine.js +1 -1
  228. package/dist/learning/dream/index.d.ts +1 -1
  229. package/dist/learning/dream/index.js +1 -1
  230. package/dist/learning/dream/types.d.ts +1 -1
  231. package/dist/learning/dream/types.d.ts.map +1 -1
  232. package/dist/learning/dream/types.js +1 -1
  233. package/dist/learning/dream/types.js.map +1 -1
  234. package/dist/learning/token-tracker.js +1 -1
  235. package/dist/learning/token-tracker.js.map +1 -1
  236. package/dist/mcp/bundle.js +7515 -893
  237. package/dist/routing/qe-agent-registry.js +4 -4
  238. package/dist/routing/qe-agent-registry.js.map +1 -1
  239. package/dist/routing/types.d.ts +5 -8
  240. package/dist/routing/types.d.ts.map +1 -1
  241. package/dist/routing/types.js.map +1 -1
  242. package/dist/shared/embeddings/embedding-cache.js +2 -2
  243. package/dist/shared/embeddings/index.d.ts +2 -2
  244. package/dist/shared/embeddings/index.js +2 -2
  245. package/dist/shared/embeddings/nomic-embedder.d.ts +4 -4
  246. package/dist/shared/embeddings/nomic-embedder.js +2 -2
  247. package/dist/shared/embeddings/ollama-client.d.ts +1 -1
  248. package/dist/shared/embeddings/ollama-client.js +2 -2
  249. package/dist/shared/embeddings/ollama-client.js.map +1 -1
  250. package/dist/shared/embeddings/types.d.ts +2 -2
  251. package/dist/shared/embeddings/types.js +2 -2
  252. package/dist/shared/language-detector.d.ts +46 -0
  253. package/dist/shared/language-detector.d.ts.map +1 -0
  254. package/dist/shared/language-detector.js +183 -0
  255. package/dist/shared/language-detector.js.map +1 -0
  256. package/dist/shared/llm/providers/ollama.js +1 -1
  257. package/dist/shared/metrics/code-metrics.d.ts.map +1 -1
  258. package/dist/shared/metrics/code-metrics.js +24 -1
  259. package/dist/shared/metrics/code-metrics.js.map +1 -1
  260. package/dist/shared/parsers/index.d.ts +2 -0
  261. package/dist/shared/parsers/index.d.ts.map +1 -1
  262. package/dist/shared/parsers/index.js +2 -0
  263. package/dist/shared/parsers/index.js.map +1 -1
  264. package/dist/shared/parsers/interfaces.d.ts +81 -0
  265. package/dist/shared/parsers/interfaces.d.ts.map +1 -0
  266. package/dist/shared/parsers/interfaces.js +6 -0
  267. package/dist/shared/parsers/interfaces.js.map +1 -0
  268. package/dist/shared/parsers/multi-language-parser.d.ts +144 -0
  269. package/dist/shared/parsers/multi-language-parser.d.ts.map +1 -0
  270. package/dist/shared/parsers/multi-language-parser.js +1232 -0
  271. package/dist/shared/parsers/multi-language-parser.js.map +1 -0
  272. package/dist/shared/parsers/rust-ownership-analyzer.d.ts +45 -0
  273. package/dist/shared/parsers/rust-ownership-analyzer.d.ts.map +1 -0
  274. package/dist/shared/parsers/rust-ownership-analyzer.js +52 -0
  275. package/dist/shared/parsers/rust-ownership-analyzer.js.map +1 -0
  276. package/dist/shared/parsers/typescript-parser.d.ts +16 -0
  277. package/dist/shared/parsers/typescript-parser.d.ts.map +1 -1
  278. package/dist/shared/parsers/typescript-parser.js +85 -0
  279. package/dist/shared/parsers/typescript-parser.js.map +1 -1
  280. package/dist/shared/types/test-frameworks.d.ts +25 -0
  281. package/dist/shared/types/test-frameworks.d.ts.map +1 -0
  282. package/dist/shared/types/test-frameworks.js +111 -0
  283. package/dist/shared/types/test-frameworks.js.map +1 -0
  284. package/package.json +1 -1
  285. package/scripts/prepare-assets.sh +8 -2
@@ -0,0 +1,293 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://agentic-qe.dev/schemas/skills/n8n-security-testing/output.json",
4
+ "title": "N8N Security Testing Skill Output Schema",
5
+ "description": "Schema for n8n-security-testing skill output. Validates credential security, data exposure, and workflow security vulnerabilities.",
6
+ "type": "object",
7
+ "required": ["skillName", "version", "timestamp", "status", "trustTier", "output"],
8
+ "properties": {
9
+ "skillName": {
10
+ "type": "string",
11
+ "const": "n8n-security-testing"
12
+ },
13
+ "version": {
14
+ "type": "string",
15
+ "pattern": "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)?$"
16
+ },
17
+ "timestamp": {
18
+ "type": "string",
19
+ "format": "date-time"
20
+ },
21
+ "status": {
22
+ "type": "string",
23
+ "enum": ["success", "partial", "failed", "skipped"]
24
+ },
25
+ "trustTier": {
26
+ "type": "integer",
27
+ "const": 3
28
+ },
29
+ "output": {
30
+ "type": "object",
31
+ "required": ["summary", "securityFindings", "credentialAudit"],
32
+ "properties": {
33
+ "summary": {
34
+ "type": "string",
35
+ "minLength": 20,
36
+ "maxLength": 2000
37
+ },
38
+ "securityFindings": {
39
+ "type": "array",
40
+ "items": {
41
+ "$ref": "#/$defs/securityFinding"
42
+ },
43
+ "maxItems": 500
44
+ },
45
+ "credentialAudit": {
46
+ "$ref": "#/$defs/credentialAudit"
47
+ },
48
+ "workflowValidation": {
49
+ "$ref": "#/$defs/workflowValidation"
50
+ },
51
+ "dataExposureRisks": {
52
+ "type": "array",
53
+ "items": {
54
+ "$ref": "#/$defs/dataExposureRisk"
55
+ }
56
+ },
57
+ "nodeSecurityScores": {
58
+ "type": "array",
59
+ "items": {
60
+ "$ref": "#/$defs/nodeSecurityScore"
61
+ }
62
+ },
63
+ "recommendations": {
64
+ "type": "array",
65
+ "items": {
66
+ "$ref": "#/$defs/recommendation"
67
+ },
68
+ "maxItems": 100
69
+ },
70
+ "complianceChecks": {
71
+ "type": "array",
72
+ "items": {
73
+ "$ref": "#/$defs/complianceCheck"
74
+ }
75
+ },
76
+ "metrics": {
77
+ "$ref": "#/$defs/metrics"
78
+ }
79
+ }
80
+ },
81
+ "metadata": {
82
+ "$ref": "#/$defs/metadata"
83
+ },
84
+ "validation": {
85
+ "$ref": "#/$defs/validationResult"
86
+ },
87
+ "learning": {
88
+ "$ref": "#/$defs/learningData"
89
+ }
90
+ },
91
+ "$defs": {
92
+ "securityFinding": {
93
+ "type": "object",
94
+ "required": ["id", "title", "severity", "category"],
95
+ "properties": {
96
+ "id": {
97
+ "type": "string",
98
+ "pattern": "^SEC-N8N-\\d{3,6}$"
99
+ },
100
+ "title": {
101
+ "type": "string",
102
+ "minLength": 10,
103
+ "maxLength": 200
104
+ },
105
+ "description": {
106
+ "type": "string",
107
+ "maxLength": 2000
108
+ },
109
+ "severity": {
110
+ "type": "string",
111
+ "enum": ["critical", "high", "medium", "low", "info"]
112
+ },
113
+ "category": {
114
+ "type": "string",
115
+ "enum": ["credential-exposure", "data-leakage", "injection", "auth-bypass", "insecure-config", "sensitive-data", "access-control"]
116
+ },
117
+ "nodeName": {
118
+ "type": "string"
119
+ },
120
+ "nodeType": {
121
+ "type": "string"
122
+ },
123
+ "location": {
124
+ "type": "object",
125
+ "properties": {
126
+ "workflowId": { "type": "string" },
127
+ "nodeId": { "type": "string" },
128
+ "parameter": { "type": "string" }
129
+ }
130
+ },
131
+ "evidence": {
132
+ "type": "string",
133
+ "maxLength": 5000
134
+ },
135
+ "remediation": {
136
+ "type": "string",
137
+ "maxLength": 2000
138
+ },
139
+ "cwe": {
140
+ "type": "string",
141
+ "pattern": "^CWE-\\d{1,4}$"
142
+ },
143
+ "owasp": {
144
+ "type": "string",
145
+ "pattern": "^A(0[1-9]|10):20(21|25)$"
146
+ },
147
+ "falsePositive": {
148
+ "type": "boolean"
149
+ },
150
+ "confidence": {
151
+ "type": "number",
152
+ "minimum": 0,
153
+ "maximum": 1
154
+ }
155
+ }
156
+ },
157
+ "credentialAudit": {
158
+ "type": "object",
159
+ "required": ["totalCredentials", "secureCredentials", "insecureCredentials"],
160
+ "properties": {
161
+ "totalCredentials": { "type": "integer", "minimum": 0 },
162
+ "secureCredentials": { "type": "integer", "minimum": 0 },
163
+ "insecureCredentials": { "type": "integer", "minimum": 0 },
164
+ "expiredCredentials": { "type": "integer", "minimum": 0 },
165
+ "unusedCredentials": { "type": "integer", "minimum": 0 },
166
+ "credentialIssues": {
167
+ "type": "array",
168
+ "items": {
169
+ "type": "object",
170
+ "properties": {
171
+ "credentialName": { "type": "string" },
172
+ "issue": { "type": "string" },
173
+ "severity": { "type": "string", "enum": ["critical", "high", "medium", "low"] }
174
+ }
175
+ }
176
+ },
177
+ "overallScore": { "type": "number", "minimum": 0, "maximum": 100 }
178
+ }
179
+ },
180
+ "workflowValidation": {
181
+ "type": "object",
182
+ "required": ["workflowId", "secure"],
183
+ "properties": {
184
+ "workflowId": { "type": "string" },
185
+ "workflowName": { "type": "string" },
186
+ "secure": { "type": "boolean" },
187
+ "criticalFindings": { "type": "integer", "minimum": 0 },
188
+ "highFindings": { "type": "integer", "minimum": 0 },
189
+ "mediumFindings": { "type": "integer", "minimum": 0 },
190
+ "lowFindings": { "type": "integer", "minimum": 0 },
191
+ "securityScore": { "type": "number", "minimum": 0, "maximum": 100 },
192
+ "grade": { "type": "string", "pattern": "^[A-F][+-]?$" },
193
+ "riskLevel": { "type": "string", "enum": ["critical", "high", "medium", "low", "minimal"] }
194
+ }
195
+ },
196
+ "dataExposureRisk": {
197
+ "type": "object",
198
+ "required": ["riskType", "severity"],
199
+ "properties": {
200
+ "riskType": {
201
+ "type": "string",
202
+ "enum": ["pii-exposure", "credential-leak", "api-key-exposure", "token-exposure", "logging-sensitive-data", "external-transmission"]
203
+ },
204
+ "severity": { "type": "string", "enum": ["critical", "high", "medium", "low"] },
205
+ "affectedNodes": { "type": "array", "items": { "type": "string" } },
206
+ "dataTypes": { "type": "array", "items": { "type": "string" } },
207
+ "description": { "type": "string" },
208
+ "mitigation": { "type": "string" }
209
+ }
210
+ },
211
+ "nodeSecurityScore": {
212
+ "type": "object",
213
+ "required": ["nodeName", "nodeType", "score"],
214
+ "properties": {
215
+ "nodeName": { "type": "string" },
216
+ "nodeType": { "type": "string" },
217
+ "score": { "type": "number", "minimum": 0, "maximum": 100 },
218
+ "grade": { "type": "string", "pattern": "^[A-F][+-]?$" },
219
+ "vulnerabilities": { "type": "integer", "minimum": 0 },
220
+ "riskFactors": { "type": "array", "items": { "type": "string" } }
221
+ }
222
+ },
223
+ "complianceCheck": {
224
+ "type": "object",
225
+ "required": ["standard", "passed"],
226
+ "properties": {
227
+ "standard": { "type": "string", "enum": ["GDPR", "HIPAA", "PCI-DSS", "SOC2", "OWASP"] },
228
+ "passed": { "type": "boolean" },
229
+ "requirements": {
230
+ "type": "array",
231
+ "items": {
232
+ "type": "object",
233
+ "properties": {
234
+ "requirement": { "type": "string" },
235
+ "passed": { "type": "boolean" },
236
+ "notes": { "type": "string" }
237
+ }
238
+ }
239
+ }
240
+ }
241
+ },
242
+ "recommendation": {
243
+ "type": "object",
244
+ "required": ["id", "title", "priority"],
245
+ "properties": {
246
+ "id": { "type": "string", "pattern": "^REC-\\d{3,6}$" },
247
+ "title": { "type": "string", "maxLength": 200 },
248
+ "description": { "type": "string", "maxLength": 2000 },
249
+ "priority": { "type": "string", "enum": ["critical", "high", "medium", "low"] },
250
+ "relatedFindings": { "type": "array", "items": { "type": "string" } },
251
+ "effort": { "type": "string", "enum": ["trivial", "low", "medium", "high", "major"] }
252
+ }
253
+ },
254
+ "metrics": {
255
+ "type": "object",
256
+ "properties": {
257
+ "totalFindings": { "type": "integer", "minimum": 0 },
258
+ "criticalCount": { "type": "integer", "minimum": 0 },
259
+ "highCount": { "type": "integer", "minimum": 0 },
260
+ "mediumCount": { "type": "integer", "minimum": 0 },
261
+ "lowCount": { "type": "integer", "minimum": 0 },
262
+ "nodesScanned": { "type": "integer", "minimum": 0 },
263
+ "credentialsAudited": { "type": "integer", "minimum": 0 },
264
+ "securityScore": { "type": "number", "minimum": 0, "maximum": 100 }
265
+ }
266
+ },
267
+ "metadata": {
268
+ "type": "object",
269
+ "properties": {
270
+ "executionTimeMs": { "type": "integer", "minimum": 0 },
271
+ "toolsUsed": { "type": "array", "items": { "type": "string" } },
272
+ "agentId": { "type": "string", "pattern": "^qe-[a-z][a-z0-9-]*$" },
273
+ "n8nVersion": { "type": "string" },
274
+ "scanDepth": { "type": "string", "enum": ["quick", "standard", "deep"] }
275
+ }
276
+ },
277
+ "validationResult": {
278
+ "type": "object",
279
+ "properties": {
280
+ "schemaValid": { "type": "boolean" },
281
+ "contentValid": { "type": "boolean" },
282
+ "confidence": { "type": "number", "minimum": 0, "maximum": 1 }
283
+ }
284
+ },
285
+ "learningData": {
286
+ "type": "object",
287
+ "properties": {
288
+ "patternsDetected": { "type": "array", "items": { "type": "string" } },
289
+ "reward": { "type": "number", "minimum": 0, "maximum": 1 }
290
+ }
291
+ }
292
+ }
293
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "skillName": "n8n-security-testing",
3
+ "skillVersion": "1.0.0",
4
+ "requiredTools": [
5
+ "jq"
6
+ ],
7
+ "optionalTools": [],
8
+ "schemaPath": "schemas/output.json",
9
+ "requiredFields": [
10
+ "skillName",
11
+ "status",
12
+ "output",
13
+ "output.summary",
14
+ "output.securityFindings",
15
+ "output.credentialAudit"
16
+ ],
17
+ "requiredNonEmptyFields": [],
18
+ "mustContainTerms": [
19
+ "security",
20
+ "credential"
21
+ ],
22
+ "mustNotContainTerms": [
23
+ "TODO",
24
+ "FIXME"
25
+ ],
26
+ "enumValidations": {
27
+ ".status": [
28
+ "success",
29
+ "partial",
30
+ "failed",
31
+ "skipped"
32
+ ]
33
+ }
34
+ }
@@ -11,6 +11,12 @@ last_optimized: 2025-12-15
11
11
  dependencies: []
12
12
  quick_reference_card: true
13
13
  tags: [n8n, triggers, webhook, schedule, cron, polling, testing]
14
+ trust_tier: 3
15
+ validation:
16
+ schema_path: schemas/output.json
17
+ validator_path: scripts/validate-config.json
18
+ eval_path: evals/n8n-trigger-testing-strategies.yaml
19
+
14
20
  ---
15
21
 
16
22
  # n8n Trigger Testing Strategies