agentic-qe 3.3.2 → 3.3.4

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 (672) hide show
  1. package/.claude/agents/v3/README.md +100 -0
  2. package/.claude/agents/v3/qe-accessibility-auditor.md +112 -11
  3. package/.claude/agents/v3/qe-bdd-generator.md +40 -0
  4. package/.claude/agents/v3/qe-coverage-specialist.md +39 -0
  5. package/.claude/agents/v3/qe-defect-predictor.md +36 -0
  6. package/.claude/agents/v3/qe-gap-detector.md +39 -0
  7. package/.claude/agents/v3/qe-pattern-learner.md +31 -0
  8. package/.claude/agents/v3/qe-product-factors-assessor.md +34 -0
  9. package/.claude/agents/v3/qe-quality-criteria-recommender.md +32 -0
  10. package/.claude/agents/v3/qe-quality-gate.md +39 -0
  11. package/.claude/agents/v3/qe-requirements-validator.md +37 -0
  12. package/.claude/agents/v3/qe-risk-assessor.md +33 -0
  13. package/.claude/agents/v3/qe-tdd-specialist.md +33 -0
  14. package/.claude/agents/v3/qe-test-architect.md +36 -0
  15. package/.claude/helpers/statusline-v3.cjs +96 -27
  16. package/.claude/skills/README.md +30 -104
  17. package/.claude/skills/a11y-ally/SKILL.md +1658 -0
  18. package/.claude/skills/qcsd-ideation-swarm/SKILL.md +1750 -0
  19. package/.claude/skills/skills-manifest.json +78 -8
  20. package/README.md +24 -7
  21. package/package.json +1 -1
  22. package/scripts/demo-warmup.sh +45 -0
  23. package/scripts/fetch-content.js +460 -0
  24. package/scripts/sync-claude-flow.cjs +99 -0
  25. package/v3/CHANGELOG.md +188 -0
  26. package/v3/README.md +18 -9
  27. package/v3/assets/agents/v3/README.md +100 -0
  28. package/v3/assets/agents/v3/qe-accessibility-auditor.md +112 -11
  29. package/v3/assets/agents/v3/qe-bdd-generator.md +40 -0
  30. package/v3/assets/agents/v3/qe-coverage-specialist.md +39 -0
  31. package/v3/assets/agents/v3/qe-defect-predictor.md +36 -0
  32. package/v3/assets/agents/v3/qe-gap-detector.md +39 -0
  33. package/v3/assets/agents/v3/qe-pattern-learner.md +31 -0
  34. package/v3/assets/agents/v3/qe-product-factors-assessor.md +34 -0
  35. package/v3/assets/agents/v3/qe-quality-criteria-recommender.md +32 -0
  36. package/v3/assets/agents/v3/qe-quality-gate.md +39 -0
  37. package/v3/assets/agents/v3/qe-requirements-validator.md +37 -0
  38. package/v3/assets/agents/v3/qe-risk-assessor.md +33 -0
  39. package/v3/assets/agents/v3/qe-tdd-specialist.md +33 -0
  40. package/v3/assets/agents/v3/qe-test-architect.md +36 -0
  41. package/v3/assets/hooks/cross-phase-memory.yaml +253 -0
  42. package/v3/assets/skills/a11y-ally/SKILL.md +1658 -0
  43. package/v3/assets/skills/qcsd-ideation-swarm/SKILL.md +1750 -0
  44. package/v3/assets/skills/skills-manifest.json +753 -0
  45. package/v3/dist/adapters/claude-flow/model-router-bridge.d.ts.map +1 -1
  46. package/v3/dist/adapters/claude-flow/model-router-bridge.js +6 -4
  47. package/v3/dist/adapters/claude-flow/model-router-bridge.js.map +1 -1
  48. package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts.map +1 -1
  49. package/v3/dist/adapters/claude-flow/pretrain-bridge.js +13 -8
  50. package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -1
  51. package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts.map +1 -1
  52. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +9 -6
  53. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -1
  54. package/v3/dist/benchmarks/performance-benchmarks.d.ts.map +1 -1
  55. package/v3/dist/benchmarks/performance-benchmarks.js +5 -3
  56. package/v3/dist/benchmarks/performance-benchmarks.js.map +1 -1
  57. package/v3/dist/cli/bundle.js +47008 -36837
  58. package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
  59. package/v3/dist/cli/commands/hooks.js +288 -0
  60. package/v3/dist/cli/commands/hooks.js.map +1 -1
  61. package/v3/dist/cli/commands/sync.d.ts.map +1 -1
  62. package/v3/dist/cli/commands/sync.js +0 -6
  63. package/v3/dist/cli/commands/sync.js.map +1 -1
  64. package/v3/dist/cli/handlers/init-handler.d.ts.map +1 -1
  65. package/v3/dist/cli/handlers/init-handler.js +11 -0
  66. package/v3/dist/cli/handlers/init-handler.js.map +1 -1
  67. package/v3/dist/cli/index.js +14 -2
  68. package/v3/dist/cli/index.js.map +1 -1
  69. package/v3/dist/cli/scheduler/persistent-scheduler.d.ts.map +1 -1
  70. package/v3/dist/cli/scheduler/persistent-scheduler.js +3 -2
  71. package/v3/dist/cli/scheduler/persistent-scheduler.js.map +1 -1
  72. package/v3/dist/cli/wizards/test-wizard.d.ts.map +1 -1
  73. package/v3/dist/cli/wizards/test-wizard.js +6 -4
  74. package/v3/dist/cli/wizards/test-wizard.js.map +1 -1
  75. package/v3/dist/coordination/consensus/domain-findings.d.ts +202 -0
  76. package/v3/dist/coordination/consensus/domain-findings.d.ts.map +1 -0
  77. package/v3/dist/coordination/consensus/domain-findings.js +66 -0
  78. package/v3/dist/coordination/consensus/domain-findings.js.map +1 -0
  79. package/v3/dist/coordination/consensus/index.d.ts +2 -0
  80. package/v3/dist/coordination/consensus/index.d.ts.map +1 -1
  81. package/v3/dist/coordination/consensus/index.js +4 -0
  82. package/v3/dist/coordination/consensus/index.js.map +1 -1
  83. package/v3/dist/coordination/consensus/providers/native-learning-provider.d.ts.map +1 -1
  84. package/v3/dist/coordination/consensus/providers/native-learning-provider.js +10 -8
  85. package/v3/dist/coordination/consensus/providers/native-learning-provider.js.map +1 -1
  86. package/v3/dist/coordination/consensus/providers/ollama-provider.d.ts.map +1 -1
  87. package/v3/dist/coordination/consensus/providers/ollama-provider.js +5 -4
  88. package/v3/dist/coordination/consensus/providers/ollama-provider.js.map +1 -1
  89. package/v3/dist/coordination/consensus/providers/openai-provider.d.ts.map +1 -1
  90. package/v3/dist/coordination/consensus/providers/openai-provider.js +5 -4
  91. package/v3/dist/coordination/consensus/providers/openai-provider.js.map +1 -1
  92. package/v3/dist/coordination/constants.d.ts +198 -0
  93. package/v3/dist/coordination/constants.d.ts.map +1 -0
  94. package/v3/dist/coordination/constants.js +210 -0
  95. package/v3/dist/coordination/constants.js.map +1 -0
  96. package/v3/dist/coordination/index.d.ts +1 -0
  97. package/v3/dist/coordination/index.d.ts.map +1 -1
  98. package/v3/dist/coordination/index.js +4 -0
  99. package/v3/dist/coordination/index.js.map +1 -1
  100. package/v3/dist/coordination/mincut/dream-integration.d.ts.map +1 -1
  101. package/v3/dist/coordination/mincut/dream-integration.js +5 -1
  102. package/v3/dist/coordination/mincut/dream-integration.js.map +1 -1
  103. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +225 -0
  104. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -0
  105. package/v3/dist/coordination/mixins/consensus-enabled-domain.js +466 -0
  106. package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -0
  107. package/v3/dist/coordination/mixins/index.d.ts +14 -0
  108. package/v3/dist/coordination/mixins/index.d.ts.map +1 -0
  109. package/v3/dist/coordination/mixins/index.js +28 -0
  110. package/v3/dist/coordination/mixins/index.js.map +1 -0
  111. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts +227 -0
  112. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts.map +1 -0
  113. package/v3/dist/coordination/mixins/mincut-aware-domain.js +368 -0
  114. package/v3/dist/coordination/mixins/mincut-aware-domain.js.map +1 -0
  115. package/v3/dist/coordination/queen-coordinator.d.ts +19 -1
  116. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  117. package/v3/dist/coordination/queen-coordinator.js +87 -7
  118. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  119. package/v3/dist/coordination/task-executor.d.ts +21 -1
  120. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  121. package/v3/dist/coordination/task-executor.js +227 -11
  122. package/v3/dist/coordination/task-executor.js.map +1 -1
  123. package/v3/dist/coordination/workflow-orchestrator.d.ts.map +1 -1
  124. package/v3/dist/coordination/workflow-orchestrator.js +261 -0
  125. package/v3/dist/coordination/workflow-orchestrator.js.map +1 -1
  126. package/v3/dist/domains/chaos-resilience/coordinator.d.ts +92 -0
  127. package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
  128. package/v3/dist/domains/chaos-resilience/coordinator.js +241 -1
  129. package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
  130. package/v3/dist/domains/chaos-resilience/plugin.d.ts +14 -3
  131. package/v3/dist/domains/chaos-resilience/plugin.d.ts.map +1 -1
  132. package/v3/dist/domains/chaos-resilience/plugin.js +97 -1
  133. package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
  134. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts +29 -2
  135. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
  136. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +62 -3
  137. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
  138. package/v3/dist/domains/chaos-resilience/services/performance-profiler.d.ts.map +1 -1
  139. package/v3/dist/domains/chaos-resilience/services/performance-profiler.js +12 -8
  140. package/v3/dist/domains/chaos-resilience/services/performance-profiler.js.map +1 -1
  141. package/v3/dist/domains/code-intelligence/coordinator.d.ts +112 -0
  142. package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
  143. package/v3/dist/domains/code-intelligence/coordinator.js +221 -0
  144. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  145. package/v3/dist/domains/code-intelligence/plugin.d.ts +13 -3
  146. package/v3/dist/domains/code-intelligence/plugin.d.ts.map +1 -1
  147. package/v3/dist/domains/code-intelligence/plugin.js +85 -0
  148. package/v3/dist/domains/code-intelligence/plugin.js.map +1 -1
  149. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts +66 -2
  150. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
  151. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +253 -3
  152. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
  153. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.d.ts.map +1 -1
  154. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.js +3 -2
  155. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.js.map +1 -1
  156. package/v3/dist/domains/constants.d.ts +481 -0
  157. package/v3/dist/domains/constants.d.ts.map +1 -0
  158. package/v3/dist/domains/constants.js +503 -0
  159. package/v3/dist/domains/constants.js.map +1 -0
  160. package/v3/dist/domains/contract-testing/coordinator.d.ts +89 -1
  161. package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
  162. package/v3/dist/domains/contract-testing/coordinator.js +222 -1
  163. package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
  164. package/v3/dist/domains/contract-testing/interfaces.d.ts +29 -1
  165. package/v3/dist/domains/contract-testing/interfaces.d.ts.map +1 -1
  166. package/v3/dist/domains/contract-testing/plugin.d.ts +6 -1
  167. package/v3/dist/domains/contract-testing/plugin.d.ts.map +1 -1
  168. package/v3/dist/domains/contract-testing/plugin.js +81 -2
  169. package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
  170. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts +29 -2
  171. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
  172. package/v3/dist/domains/contract-testing/services/contract-validator.js +62 -6
  173. package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
  174. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +95 -2
  175. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  176. package/v3/dist/domains/coverage-analysis/coordinator.js +274 -6
  177. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  178. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts +119 -3
  179. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  180. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
  181. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  182. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
  183. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  184. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
  185. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  186. package/v3/dist/domains/coverage-analysis/services/hnsw-index.d.ts.map +1 -1
  187. package/v3/dist/domains/coverage-analysis/services/hnsw-index.js +1 -0
  188. package/v3/dist/domains/coverage-analysis/services/hnsw-index.js.map +1 -1
  189. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
  190. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  191. package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
  192. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  193. package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
  194. package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
  195. package/v3/dist/domains/defect-intelligence/plugin.d.ts +6 -1
  196. package/v3/dist/domains/defect-intelligence/plugin.d.ts.map +1 -1
  197. package/v3/dist/domains/defect-intelligence/plugin.js +101 -0
  198. package/v3/dist/domains/defect-intelligence/plugin.js.map +1 -1
  199. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
  200. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  201. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +277 -9
  202. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  203. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
  204. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  205. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
  206. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  207. package/v3/dist/domains/domain-interface.d.ts +155 -0
  208. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  209. package/v3/dist/domains/domain-interface.js +164 -9
  210. package/v3/dist/domains/domain-interface.js.map +1 -1
  211. package/v3/dist/domains/learning-optimization/coordinator.d.ts +88 -0
  212. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  213. package/v3/dist/domains/learning-optimization/coordinator.js +227 -1
  214. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  215. package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
  216. package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
  217. package/v3/dist/domains/learning-optimization/index.js.map +1 -1
  218. package/v3/dist/domains/learning-optimization/interfaces.d.ts +4 -0
  219. package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
  220. package/v3/dist/domains/learning-optimization/plugin.d.ts +2 -1
  221. package/v3/dist/domains/learning-optimization/plugin.d.ts.map +1 -1
  222. package/v3/dist/domains/learning-optimization/plugin.js +50 -1
  223. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  224. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
  225. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  226. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
  227. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  228. package/v3/dist/domains/quality-assessment/coordinator.d.ts +194 -1
  229. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  230. package/v3/dist/domains/quality-assessment/coordinator.js +664 -6
  231. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  232. package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
  233. package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
  234. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
  235. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  236. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
  237. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  238. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
  239. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  240. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
  241. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  242. package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
  243. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  244. package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
  245. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  246. package/v3/dist/domains/requirements-validation/index.d.ts +1 -0
  247. package/v3/dist/domains/requirements-validation/index.d.ts.map +1 -1
  248. package/v3/dist/domains/requirements-validation/index.js +2 -0
  249. package/v3/dist/domains/requirements-validation/index.js.map +1 -1
  250. package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
  251. package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
  252. package/v3/dist/domains/requirements-validation/plugin.d.ts +13 -1
  253. package/v3/dist/domains/requirements-validation/plugin.d.ts.map +1 -1
  254. package/v3/dist/domains/requirements-validation/plugin.js +94 -0
  255. package/v3/dist/domains/requirements-validation/plugin.js.map +1 -1
  256. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.d.ts +245 -0
  257. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.d.ts.map +1 -0
  258. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.js +1143 -0
  259. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.js.map +1 -0
  260. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.d.ts.map +1 -1
  261. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.js +3 -2
  262. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.js.map +1 -1
  263. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
  264. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  265. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
  266. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  267. package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
  268. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  269. package/v3/dist/domains/security-compliance/coordinator.js +241 -17
  270. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  271. package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
  272. package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
  273. package/v3/dist/domains/security-compliance/plugin.d.ts +3 -2
  274. package/v3/dist/domains/security-compliance/plugin.d.ts.map +1 -1
  275. package/v3/dist/domains/security-compliance/plugin.js +64 -0
  276. package/v3/dist/domains/security-compliance/plugin.js.map +1 -1
  277. package/v3/dist/domains/security-compliance/services/scanners/dast-auth-testing.d.ts +25 -0
  278. package/v3/dist/domains/security-compliance/services/scanners/dast-auth-testing.d.ts.map +1 -0
  279. package/v3/dist/domains/security-compliance/services/scanners/dast-auth-testing.js +160 -0
  280. package/v3/dist/domains/security-compliance/services/scanners/dast-auth-testing.js.map +1 -0
  281. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.d.ts +48 -0
  282. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.d.ts.map +1 -0
  283. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.js +385 -0
  284. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.js.map +1 -0
  285. package/v3/dist/domains/security-compliance/services/scanners/dast-injection-testing.d.ts +20 -0
  286. package/v3/dist/domains/security-compliance/services/scanners/dast-injection-testing.d.ts.map +1 -0
  287. package/v3/dist/domains/security-compliance/services/scanners/dast-injection-testing.js +99 -0
  288. package/v3/dist/domains/security-compliance/services/scanners/dast-injection-testing.js.map +1 -0
  289. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts +62 -0
  290. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts.map +1 -0
  291. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.js +329 -0
  292. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.js.map +1 -0
  293. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.d.ts +46 -0
  294. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.d.ts.map +1 -0
  295. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.js +180 -0
  296. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.js.map +1 -0
  297. package/v3/dist/domains/security-compliance/services/scanners/index.d.ts +14 -0
  298. package/v3/dist/domains/security-compliance/services/scanners/index.d.ts.map +1 -0
  299. package/v3/dist/domains/security-compliance/services/scanners/index.js +16 -0
  300. package/v3/dist/domains/security-compliance/services/scanners/index.js.map +1 -0
  301. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.d.ts +92 -0
  302. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.d.ts.map +1 -0
  303. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.js +440 -0
  304. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.js.map +1 -0
  305. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.d.ts +78 -0
  306. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.d.ts.map +1 -0
  307. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js +179 -0
  308. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js.map +1 -0
  309. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.d.ts +91 -0
  310. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.d.ts.map +1 -0
  311. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.js +15 -0
  312. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.js.map +1 -0
  313. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.d.ts +16 -0
  314. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.d.ts.map +1 -0
  315. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.js +507 -0
  316. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.js.map +1 -0
  317. package/v3/dist/domains/security-compliance/services/security-auditor.d.ts.map +1 -1
  318. package/v3/dist/domains/security-compliance/services/security-auditor.js +2 -1
  319. package/v3/dist/domains/security-compliance/services/security-auditor.js.map +1 -1
  320. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +20 -182
  321. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
  322. package/v3/dist/domains/security-compliance/services/security-scanner.js +37 -1909
  323. package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
  324. package/v3/dist/domains/security-compliance/services/semgrep-integration.d.ts.map +1 -1
  325. package/v3/dist/domains/security-compliance/services/semgrep-integration.js +7 -6
  326. package/v3/dist/domains/security-compliance/services/semgrep-integration.js.map +1 -1
  327. package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
  328. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  329. package/v3/dist/domains/test-execution/coordinator.js +259 -2
  330. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  331. package/v3/dist/domains/test-execution/services/auth-state-manager.d.ts.map +1 -1
  332. package/v3/dist/domains/test-execution/services/auth-state-manager.js +6 -4
  333. package/v3/dist/domains/test-execution/services/auth-state-manager.js.map +1 -1
  334. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.d.ts +55 -0
  335. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.d.ts.map +1 -0
  336. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.js +407 -0
  337. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.js.map +1 -0
  338. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts +122 -0
  339. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts.map +1 -0
  340. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.js +325 -0
  341. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.js.map +1 -0
  342. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.d.ts +97 -0
  343. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.d.ts.map +1 -0
  344. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.js +297 -0
  345. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.js.map +1 -0
  346. package/v3/dist/domains/test-execution/services/e2e/index.d.ts +22 -0
  347. package/v3/dist/domains/test-execution/services/e2e/index.d.ts.map +1 -0
  348. package/v3/dist/domains/test-execution/services/e2e/index.js +52 -0
  349. package/v3/dist/domains/test-execution/services/e2e/index.js.map +1 -0
  350. package/v3/dist/domains/test-execution/services/e2e/result-collector.d.ts +51 -0
  351. package/v3/dist/domains/test-execution/services/e2e/result-collector.d.ts.map +1 -0
  352. package/v3/dist/domains/test-execution/services/e2e/result-collector.js +133 -0
  353. package/v3/dist/domains/test-execution/services/e2e/result-collector.js.map +1 -0
  354. package/v3/dist/domains/test-execution/services/e2e/step-executors.d.ts +48 -0
  355. package/v3/dist/domains/test-execution/services/e2e/step-executors.d.ts.map +1 -0
  356. package/v3/dist/domains/test-execution/services/e2e/step-executors.js +422 -0
  357. package/v3/dist/domains/test-execution/services/e2e/step-executors.js.map +1 -0
  358. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.d.ts +49 -0
  359. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.d.ts.map +1 -0
  360. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.js +146 -0
  361. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.js.map +1 -0
  362. package/v3/dist/domains/test-execution/services/e2e/types.d.ts +138 -0
  363. package/v3/dist/domains/test-execution/services/e2e/types.d.ts.map +1 -0
  364. package/v3/dist/domains/test-execution/services/e2e/types.js +65 -0
  365. package/v3/dist/domains/test-execution/services/e2e/types.js.map +1 -0
  366. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.d.ts +33 -0
  367. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.d.ts.map +1 -0
  368. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.js +114 -0
  369. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.js.map +1 -0
  370. package/v3/dist/domains/test-execution/services/e2e-runner.d.ts +18 -392
  371. package/v3/dist/domains/test-execution/services/e2e-runner.d.ts.map +1 -1
  372. package/v3/dist/domains/test-execution/services/e2e-runner.js +25 -1757
  373. package/v3/dist/domains/test-execution/services/e2e-runner.js.map +1 -1
  374. package/v3/dist/domains/test-execution/services/flaky-detector.d.ts.map +1 -1
  375. package/v3/dist/domains/test-execution/services/flaky-detector.js +12 -9
  376. package/v3/dist/domains/test-execution/services/flaky-detector.js.map +1 -1
  377. package/v3/dist/domains/test-execution/services/retry-handler.d.ts.map +1 -1
  378. package/v3/dist/domains/test-execution/services/retry-handler.js +7 -5
  379. package/v3/dist/domains/test-execution/services/retry-handler.js.map +1 -1
  380. package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
  381. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  382. package/v3/dist/domains/test-execution/services/test-executor.js +67 -5
  383. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  384. package/v3/dist/domains/test-generation/coordinator.d.ts +97 -0
  385. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  386. package/v3/dist/domains/test-generation/coordinator.js +237 -0
  387. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  388. package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
  389. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  390. package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
  391. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  392. package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
  393. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  394. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +147 -0
  395. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  396. package/v3/dist/domains/visual-accessibility/coordinator.js +382 -2
  397. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  398. package/v3/dist/domains/visual-accessibility/plugin.d.ts +2 -1
  399. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  400. package/v3/dist/domains/visual-accessibility/plugin.js +66 -3
  401. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  402. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts.map +1 -1
  403. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js +3 -2
  404. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js.map +1 -1
  405. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.d.ts.map +1 -1
  406. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.js +22 -12
  407. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.js.map +1 -1
  408. package/v3/dist/domains/visual-accessibility/services/viewport-capture.d.ts.map +1 -1
  409. package/v3/dist/domains/visual-accessibility/services/viewport-capture.js +3 -2
  410. package/v3/dist/domains/visual-accessibility/services/viewport-capture.js.map +1 -1
  411. package/v3/dist/domains/visual-accessibility/services/visual-regression.d.ts.map +1 -1
  412. package/v3/dist/domains/visual-accessibility/services/visual-regression.js +3 -2
  413. package/v3/dist/domains/visual-accessibility/services/visual-regression.js.map +1 -1
  414. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
  415. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  416. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
  417. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  418. package/v3/dist/hooks/cross-phase-hooks.d.ts +42 -0
  419. package/v3/dist/hooks/cross-phase-hooks.d.ts.map +1 -0
  420. package/v3/dist/hooks/cross-phase-hooks.js +338 -0
  421. package/v3/dist/hooks/cross-phase-hooks.js.map +1 -0
  422. package/v3/dist/hooks/index.d.ts +9 -0
  423. package/v3/dist/hooks/index.d.ts.map +1 -0
  424. package/v3/dist/hooks/index.js +9 -0
  425. package/v3/dist/hooks/index.js.map +1 -0
  426. package/v3/dist/init/agents-installer.d.ts.map +1 -1
  427. package/v3/dist/init/agents-installer.js +6 -4
  428. package/v3/dist/init/agents-installer.js.map +1 -1
  429. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -1
  430. package/v3/dist/init/enhancements/claude-flow-adapter.js +15 -9
  431. package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -1
  432. package/v3/dist/init/enhancements/detector.js +6 -4
  433. package/v3/dist/init/enhancements/detector.js.map +1 -1
  434. package/v3/dist/init/init-wizard.d.ts +5 -0
  435. package/v3/dist/init/init-wizard.d.ts.map +1 -1
  436. package/v3/dist/init/init-wizard.js +74 -11
  437. package/v3/dist/init/init-wizard.js.map +1 -1
  438. package/v3/dist/init/migration/data-migrator.d.ts.map +1 -1
  439. package/v3/dist/init/migration/data-migrator.js +6 -4
  440. package/v3/dist/init/migration/data-migrator.js.map +1 -1
  441. package/v3/dist/init/phases/02-analysis.js +2 -2
  442. package/v3/dist/init/phases/02-analysis.js.map +1 -1
  443. package/v3/dist/init/phases/04-database.d.ts.map +1 -1
  444. package/v3/dist/init/phases/04-database.js +0 -1
  445. package/v3/dist/init/phases/04-database.js.map +1 -1
  446. package/v3/dist/init/phases/11-claude-md.d.ts.map +1 -1
  447. package/v3/dist/init/phases/11-claude-md.js +25 -0
  448. package/v3/dist/init/phases/11-claude-md.js.map +1 -1
  449. package/v3/dist/init/phases/12-verification.d.ts.map +1 -1
  450. package/v3/dist/init/phases/12-verification.js +2 -1
  451. package/v3/dist/init/phases/12-verification.js.map +1 -1
  452. package/v3/dist/init/project-analyzer.d.ts.map +1 -1
  453. package/v3/dist/init/project-analyzer.js +12 -8
  454. package/v3/dist/init/project-analyzer.js.map +1 -1
  455. package/v3/dist/init/skills-installer.d.ts.map +1 -1
  456. package/v3/dist/init/skills-installer.js +6 -4
  457. package/v3/dist/init/skills-installer.js.map +1 -1
  458. package/v3/dist/init/token-bootstrap.d.ts.map +1 -1
  459. package/v3/dist/init/token-bootstrap.js +2 -1
  460. package/v3/dist/init/token-bootstrap.js.map +1 -1
  461. package/v3/dist/integrations/agent-booster-wasm/index.d.ts.map +1 -1
  462. package/v3/dist/integrations/agent-booster-wasm/index.js +8 -4
  463. package/v3/dist/integrations/agent-booster-wasm/index.js.map +1 -1
  464. package/v3/dist/integrations/agentic-flow/model-router/signal-collector.d.ts.map +1 -1
  465. package/v3/dist/integrations/agentic-flow/model-router/signal-collector.js +3 -2
  466. package/v3/dist/integrations/agentic-flow/model-router/signal-collector.js.map +1 -1
  467. package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts.map +1 -1
  468. package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js.map +1 -1
  469. package/v3/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.d.ts.map +1 -1
  470. package/v3/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.js.map +1 -1
  471. package/v3/dist/integrations/browser/agent-browser/client.d.ts.map +1 -1
  472. package/v3/dist/integrations/browser/agent-browser/client.js +9 -6
  473. package/v3/dist/integrations/browser/agent-browser/client.js.map +1 -1
  474. package/v3/dist/integrations/browser/agent-browser/command-executor.d.ts.map +1 -1
  475. package/v3/dist/integrations/browser/agent-browser/command-executor.js +3 -2
  476. package/v3/dist/integrations/browser/agent-browser/command-executor.js.map +1 -1
  477. package/v3/dist/integrations/browser/index.d.ts +1 -0
  478. package/v3/dist/integrations/browser/index.d.ts.map +1 -1
  479. package/v3/dist/integrations/browser/index.js +6 -0
  480. package/v3/dist/integrations/browser/index.js.map +1 -1
  481. package/v3/dist/integrations/browser/web-content-fetcher.d.ts +154 -0
  482. package/v3/dist/integrations/browser/web-content-fetcher.d.ts.map +1 -0
  483. package/v3/dist/integrations/browser/web-content-fetcher.js +529 -0
  484. package/v3/dist/integrations/browser/web-content-fetcher.js.map +1 -0
  485. package/v3/dist/integrations/coherence/threshold-tuner.d.ts.map +1 -1
  486. package/v3/dist/integrations/coherence/threshold-tuner.js +3 -2
  487. package/v3/dist/integrations/coherence/threshold-tuner.js.map +1 -1
  488. package/v3/dist/integrations/coherence/wasm-loader.d.ts.map +1 -1
  489. package/v3/dist/integrations/coherence/wasm-loader.js +3 -2
  490. package/v3/dist/integrations/coherence/wasm-loader.js.map +1 -1
  491. package/v3/dist/integrations/n8n/agent-factory.d.ts.map +1 -1
  492. package/v3/dist/integrations/n8n/agent-factory.js +6 -4
  493. package/v3/dist/integrations/n8n/agent-factory.js.map +1 -1
  494. package/v3/dist/integrations/rl-suite/persistence/q-value-store.d.ts.map +1 -1
  495. package/v3/dist/integrations/rl-suite/persistence/q-value-store.js.map +1 -1
  496. package/v3/dist/integrations/ruvector/sona-persistence.d.ts.map +1 -1
  497. package/v3/dist/integrations/ruvector/sona-persistence.js +6 -4
  498. package/v3/dist/integrations/ruvector/sona-persistence.js.map +1 -1
  499. package/v3/dist/integrations/vibium/client.d.ts.map +1 -1
  500. package/v3/dist/integrations/vibium/client.js +3 -2
  501. package/v3/dist/integrations/vibium/client.js.map +1 -1
  502. package/v3/dist/kernel/agent-coordinator.d.ts +1 -1
  503. package/v3/dist/kernel/agent-coordinator.d.ts.map +1 -1
  504. package/v3/dist/kernel/agent-coordinator.js +4 -4
  505. package/v3/dist/kernel/agent-coordinator.js.map +1 -1
  506. package/v3/dist/kernel/constants.d.ts +155 -0
  507. package/v3/dist/kernel/constants.d.ts.map +1 -0
  508. package/v3/dist/kernel/constants.js +169 -0
  509. package/v3/dist/kernel/constants.js.map +1 -0
  510. package/v3/dist/kernel/event-bus.d.ts +8 -0
  511. package/v3/dist/kernel/event-bus.d.ts.map +1 -1
  512. package/v3/dist/kernel/event-bus.js +79 -17
  513. package/v3/dist/kernel/event-bus.js.map +1 -1
  514. package/v3/dist/kernel/hybrid-backend.d.ts.map +1 -1
  515. package/v3/dist/kernel/hybrid-backend.js +4 -3
  516. package/v3/dist/kernel/hybrid-backend.js.map +1 -1
  517. package/v3/dist/kernel/kernel.d.ts.map +1 -1
  518. package/v3/dist/kernel/kernel.js +3 -2
  519. package/v3/dist/kernel/kernel.js.map +1 -1
  520. package/v3/dist/kernel/memory-backend.d.ts.map +1 -1
  521. package/v3/dist/kernel/memory-backend.js +4 -3
  522. package/v3/dist/kernel/memory-backend.js.map +1 -1
  523. package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
  524. package/v3/dist/kernel/unified-memory.js +14 -11
  525. package/v3/dist/kernel/unified-memory.js.map +1 -1
  526. package/v3/dist/kernel/unified-persistence.js +3 -2
  527. package/v3/dist/kernel/unified-persistence.js.map +1 -1
  528. package/v3/dist/learning/aqe-learning-engine.d.ts.map +1 -1
  529. package/v3/dist/learning/aqe-learning-engine.js +12 -8
  530. package/v3/dist/learning/aqe-learning-engine.js.map +1 -1
  531. package/v3/dist/learning/dream/index.d.ts +1 -1
  532. package/v3/dist/learning/dream/index.d.ts.map +1 -1
  533. package/v3/dist/learning/dream/index.js +3 -1
  534. package/v3/dist/learning/dream/index.js.map +1 -1
  535. package/v3/dist/learning/dream/spreading-activation.d.ts +41 -0
  536. package/v3/dist/learning/dream/spreading-activation.d.ts.map +1 -1
  537. package/v3/dist/learning/dream/spreading-activation.js +79 -0
  538. package/v3/dist/learning/dream/spreading-activation.js.map +1 -1
  539. package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
  540. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
  541. package/v3/dist/learning/experience-capture-middleware.js +416 -0
  542. package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
  543. package/v3/dist/learning/pattern-store.d.ts.map +1 -1
  544. package/v3/dist/learning/pattern-store.js +16 -6
  545. package/v3/dist/learning/pattern-store.js.map +1 -1
  546. package/v3/dist/learning/real-embeddings.d.ts.map +1 -1
  547. package/v3/dist/learning/real-embeddings.js +7 -1
  548. package/v3/dist/learning/real-embeddings.js.map +1 -1
  549. package/v3/dist/learning/sqlite-persistence.d.ts +1 -1
  550. package/v3/dist/learning/sqlite-persistence.d.ts.map +1 -1
  551. package/v3/dist/learning/sqlite-persistence.js.map +1 -1
  552. package/v3/dist/logging/console-logger.d.ts +96 -0
  553. package/v3/dist/logging/console-logger.d.ts.map +1 -0
  554. package/v3/dist/logging/console-logger.js +247 -0
  555. package/v3/dist/logging/console-logger.js.map +1 -0
  556. package/v3/dist/logging/index.d.ts +42 -0
  557. package/v3/dist/logging/index.d.ts.map +1 -0
  558. package/v3/dist/logging/index.js +39 -0
  559. package/v3/dist/logging/index.js.map +1 -0
  560. package/v3/dist/logging/logger-factory.d.ts +145 -0
  561. package/v3/dist/logging/logger-factory.d.ts.map +1 -0
  562. package/v3/dist/logging/logger-factory.js +218 -0
  563. package/v3/dist/logging/logger-factory.js.map +1 -0
  564. package/v3/dist/logging/logger.d.ts +89 -0
  565. package/v3/dist/logging/logger.d.ts.map +1 -0
  566. package/v3/dist/logging/logger.js +74 -0
  567. package/v3/dist/logging/logger.js.map +1 -0
  568. package/v3/dist/mcp/bundle.js +63771 -53632
  569. package/v3/dist/mcp/handlers/agent-handlers.js +2 -2
  570. package/v3/dist/mcp/handlers/agent-handlers.js.map +1 -1
  571. package/v3/dist/mcp/handlers/core-handlers.d.ts +2 -0
  572. package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
  573. package/v3/dist/mcp/handlers/core-handlers.js +33 -0
  574. package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
  575. package/v3/dist/mcp/handlers/cross-phase-handlers.d.ts +110 -0
  576. package/v3/dist/mcp/handlers/cross-phase-handlers.d.ts.map +1 -0
  577. package/v3/dist/mcp/handlers/cross-phase-handlers.js +216 -0
  578. package/v3/dist/mcp/handlers/cross-phase-handlers.js.map +1 -0
  579. package/v3/dist/mcp/handlers/domain-handler-configs.d.ts +151 -0
  580. package/v3/dist/mcp/handlers/domain-handler-configs.d.ts.map +1 -0
  581. package/v3/dist/mcp/handlers/domain-handler-configs.js +486 -0
  582. package/v3/dist/mcp/handlers/domain-handler-configs.js.map +1 -0
  583. package/v3/dist/mcp/handlers/domain-handlers.d.ts +174 -121
  584. package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
  585. package/v3/dist/mcp/handlers/domain-handlers.js +178 -1049
  586. package/v3/dist/mcp/handlers/domain-handlers.js.map +1 -1
  587. package/v3/dist/mcp/handlers/handler-factory.d.ts +182 -0
  588. package/v3/dist/mcp/handlers/handler-factory.d.ts.map +1 -0
  589. package/v3/dist/mcp/handlers/handler-factory.js +327 -0
  590. package/v3/dist/mcp/handlers/handler-factory.js.map +1 -0
  591. package/v3/dist/mcp/handlers/index.d.ts +2 -1
  592. package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
  593. package/v3/dist/mcp/handlers/index.js +4 -2
  594. package/v3/dist/mcp/handlers/index.js.map +1 -1
  595. package/v3/dist/mcp/handlers/task-handlers.d.ts +1 -0
  596. package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
  597. package/v3/dist/mcp/handlers/task-handlers.js +91 -7
  598. package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
  599. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
  600. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
  601. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
  602. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
  603. package/v3/dist/mcp/server.d.ts.map +1 -1
  604. package/v3/dist/mcp/server.js +107 -1
  605. package/v3/dist/mcp/server.js.map +1 -1
  606. package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
  607. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  608. package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
  609. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  610. package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
  611. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  612. package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
  613. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  614. package/v3/dist/mcp/types.d.ts +5 -3
  615. package/v3/dist/mcp/types.d.ts.map +1 -1
  616. package/v3/dist/memory/cross-phase-memory.d.ts +55 -0
  617. package/v3/dist/memory/cross-phase-memory.d.ts.map +1 -0
  618. package/v3/dist/memory/cross-phase-memory.js +265 -0
  619. package/v3/dist/memory/cross-phase-memory.js.map +1 -0
  620. package/v3/dist/memory/index.d.ts +9 -0
  621. package/v3/dist/memory/index.d.ts.map +1 -0
  622. package/v3/dist/memory/index.js +9 -0
  623. package/v3/dist/memory/index.js.map +1 -0
  624. package/v3/dist/routing/qe-agent-registry.d.ts +1 -1
  625. package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
  626. package/v3/dist/routing/qe-agent-registry.js +20 -1
  627. package/v3/dist/routing/qe-agent-registry.js.map +1 -1
  628. package/v3/dist/shared/io/file-reader.d.ts.map +1 -1
  629. package/v3/dist/shared/io/file-reader.js +3 -2
  630. package/v3/dist/shared/io/file-reader.js.map +1 -1
  631. package/v3/dist/shared/utils/binary-insert.d.ts +85 -0
  632. package/v3/dist/shared/utils/binary-insert.d.ts.map +1 -0
  633. package/v3/dist/shared/utils/binary-insert.js +122 -0
  634. package/v3/dist/shared/utils/binary-insert.js.map +1 -0
  635. package/v3/dist/shared/utils/index.d.ts +1 -0
  636. package/v3/dist/shared/utils/index.d.ts.map +1 -1
  637. package/v3/dist/shared/utils/index.js +1 -0
  638. package/v3/dist/shared/utils/index.js.map +1 -1
  639. package/v3/dist/strange-loop/belief-reconciler.d.ts.map +1 -1
  640. package/v3/dist/strange-loop/belief-reconciler.js +3 -2
  641. package/v3/dist/strange-loop/belief-reconciler.js.map +1 -1
  642. package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
  643. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
  644. package/v3/dist/sync/claude-flow-bridge.js +322 -0
  645. package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
  646. package/v3/dist/sync/cloud/postgres-writer.d.ts.map +1 -1
  647. package/v3/dist/sync/cloud/postgres-writer.js +0 -1
  648. package/v3/dist/sync/cloud/postgres-writer.js.map +1 -1
  649. package/v3/dist/sync/readers/sqlite-reader.d.ts.map +1 -1
  650. package/v3/dist/sync/readers/sqlite-reader.js +3 -2
  651. package/v3/dist/sync/readers/sqlite-reader.js.map +1 -1
  652. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.d.ts.map +1 -1
  653. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.js +3 -2
  654. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.js.map +1 -1
  655. package/v3/dist/test-scheduling/git-aware/test-selector.d.ts.map +1 -1
  656. package/v3/dist/test-scheduling/git-aware/test-selector.js +3 -2
  657. package/v3/dist/test-scheduling/git-aware/test-selector.js.map +1 -1
  658. package/v3/dist/types/cross-phase-signals.d.ts +119 -0
  659. package/v3/dist/types/cross-phase-signals.d.ts.map +1 -0
  660. package/v3/dist/types/cross-phase-signals.js +33 -0
  661. package/v3/dist/types/cross-phase-signals.js.map +1 -0
  662. package/v3/dist/types/index.d.ts +9 -0
  663. package/v3/dist/types/index.d.ts.map +1 -0
  664. package/v3/dist/types/index.js +9 -0
  665. package/v3/dist/types/index.js.map +1 -0
  666. package/v3/dist/workers/worker-manager.d.ts.map +1 -1
  667. package/v3/dist/workers/worker-manager.js +3 -2
  668. package/v3/dist/workers/worker-manager.js.map +1 -1
  669. package/v3/dist/workflows/browser/workflow-loader.d.ts +3 -3
  670. package/v3/dist/workflows/browser/workflow-loader.d.ts.map +1 -1
  671. package/v3/dist/workflows/browser/workflow-loader.js.map +1 -1
  672. package/v3/package.json +4 -1
@@ -0,0 +1,225 @@
1
+ /**
2
+ * Agentic QE v3 - Consensus Enabled Domain Mixin
3
+ * CONSENSUS-MIXIN-001: Reusable mixin for multi-model consensus verification
4
+ *
5
+ * This mixin allows any domain coordinator to leverage multi-model consensus
6
+ * verification for high-stakes decisions without duplicating consensus logic.
7
+ *
8
+ * @see docs/plans/AQE_V3_IMPROVEMENTS_PLAN.md - Phase 2: Multi-Model Verification
9
+ */
10
+ import { ConsensusEngine, ConsensusResult, ConsensusStats as ConsensusStatsType, VerificationOptions } from '../consensus';
11
+ export type { ConsensusStats } from '../consensus';
12
+ import { DomainFinding, FindingSeverity } from '../consensus/domain-findings';
13
+ import { Result } from '../../shared/types';
14
+ /**
15
+ * Configuration for consensus-enabled domains
16
+ */
17
+ export interface ConsensusEnabledConfig {
18
+ /** Whether to enable consensus verification */
19
+ readonly enableConsensus: boolean;
20
+ /** Minimum confidence threshold requiring consensus verification */
21
+ readonly consensusThreshold: number;
22
+ /** Finding types that require consensus verification */
23
+ readonly verifyFindingTypes: string[];
24
+ /** Consensus strategy to use */
25
+ readonly strategy: 'majority' | 'weighted' | 'unanimous';
26
+ /** Minimum number of models required for consensus */
27
+ readonly minModels: number;
28
+ /** Timeout per model in milliseconds */
29
+ readonly modelTimeout: number;
30
+ /** Severity levels requiring consensus */
31
+ readonly verifySeverities: FindingSeverity[];
32
+ /** Enable logging for consensus operations */
33
+ readonly enableLogging: boolean;
34
+ }
35
+ /**
36
+ * Default consensus configuration
37
+ */
38
+ export declare const DEFAULT_CONSENSUS_ENABLED_CONFIG: ConsensusEnabledConfig;
39
+ /**
40
+ * Interface for consensus-enabled domain coordinators
41
+ */
42
+ export interface IConsensusEnabledDomain {
43
+ /**
44
+ * Verify a single finding using multi-model consensus
45
+ *
46
+ * @param finding - The finding to verify
47
+ * @param options - Optional verification options
48
+ * @returns Promise resolving to consensus result
49
+ */
50
+ verifyFinding<T>(finding: DomainFinding<T>, options?: VerificationOptions): Promise<Result<ConsensusResult, Error>>;
51
+ /**
52
+ * Check if a finding requires consensus verification
53
+ *
54
+ * @param finding - The finding to check
55
+ * @returns true if consensus verification is required
56
+ */
57
+ requiresConsensus<T>(finding: DomainFinding<T>): boolean;
58
+ /**
59
+ * Verify multiple findings in batch
60
+ *
61
+ * @param findings - Array of findings to verify
62
+ * @param options - Optional verification options
63
+ * @returns Promise resolving to array of consensus results
64
+ */
65
+ verifyFindings<T>(findings: DomainFinding<T>[], options?: VerificationOptions): Promise<Result<ConsensusResult[], Error>>;
66
+ /**
67
+ * Get consensus statistics
68
+ *
69
+ * @returns Current consensus statistics
70
+ */
71
+ getConsensusStats(): ConsensusStatsType | undefined;
72
+ }
73
+ /**
74
+ * Mixin class that adds consensus verification capabilities to any domain coordinator
75
+ *
76
+ * This is designed to be used with TypeScript's class composition pattern.
77
+ * Domain coordinators can extend this mixin to gain consensus verification capabilities.
78
+ *
79
+ * @example
80
+ * ```typescript
81
+ * class MyDomainCoordinator extends ConsensusEnabledMixin {
82
+ * constructor(config: MyConfig) {
83
+ * super({
84
+ * enableConsensus: true,
85
+ * consensusThreshold: 0.8,
86
+ * verifyFindingTypes: ['vulnerability', 'defect'],
87
+ * strategy: 'weighted',
88
+ * minModels: 2,
89
+ * modelTimeout: 30000,
90
+ * verifySeverities: ['critical', 'high'],
91
+ * enableLogging: true,
92
+ * });
93
+ * }
94
+ *
95
+ * async initialize(): Promise<void> {
96
+ * await this.initializeConsensus();
97
+ * // ... other initialization
98
+ * }
99
+ *
100
+ * async dispose(): Promise<void> {
101
+ * await this.disposeConsensus();
102
+ * // ... other cleanup
103
+ * }
104
+ *
105
+ * async processFindings(findings: DomainFinding[]): Promise<void> {
106
+ * for (const finding of findings) {
107
+ * if (this.requiresConsensus(finding)) {
108
+ * const result = await this.verifyFinding(finding);
109
+ * if (result.success && result.value.verdict === 'verified') {
110
+ * // Take action on verified finding
111
+ * }
112
+ * }
113
+ * }
114
+ * }
115
+ * }
116
+ * ```
117
+ */
118
+ export declare class ConsensusEnabledMixin implements IConsensusEnabledDomain {
119
+ protected readonly consensusConfig: ConsensusEnabledConfig;
120
+ protected consensusEngine: ConsensusEngine | undefined;
121
+ protected consensusInitialized: boolean;
122
+ /**
123
+ * Create a new ConsensusEnabledMixin
124
+ *
125
+ * @param config - Configuration for consensus verification
126
+ */
127
+ constructor(config?: Partial<ConsensusEnabledConfig>);
128
+ /**
129
+ * Initialize the consensus engine
130
+ *
131
+ * Call this in the domain coordinator's initialize() method.
132
+ * Uses registerProvidersFromEnv to auto-detect available model providers.
133
+ *
134
+ * @throws Error if consensus initialization fails
135
+ */
136
+ protected initializeConsensus(): Promise<void>;
137
+ /**
138
+ * Dispose the consensus engine
139
+ *
140
+ * Call this in the domain coordinator's dispose() method.
141
+ */
142
+ protected disposeConsensus(): Promise<void>;
143
+ /**
144
+ * Verify a single finding using multi-model consensus
145
+ */
146
+ verifyFinding<T>(finding: DomainFinding<T>, options?: VerificationOptions): Promise<Result<ConsensusResult, Error>>;
147
+ /**
148
+ * Check if a finding requires consensus verification
149
+ */
150
+ requiresConsensus<T>(finding: DomainFinding<T>): boolean;
151
+ /**
152
+ * Verify multiple findings in batch
153
+ */
154
+ verifyFindings<T>(findings: DomainFinding<T>[], options?: VerificationOptions): Promise<Result<ConsensusResult[], Error>>;
155
+ /**
156
+ * Get consensus statistics
157
+ */
158
+ getConsensusStats(): ConsensusStatsType | undefined;
159
+ /**
160
+ * Check if consensus engine is available
161
+ */
162
+ protected isConsensusAvailable(): boolean;
163
+ /**
164
+ * Get the consensus engine (for advanced usage)
165
+ */
166
+ protected getConsensusEngine(): ConsensusEngine | undefined;
167
+ /**
168
+ * Infer security finding category from finding type
169
+ */
170
+ private inferCategory;
171
+ }
172
+ /**
173
+ * Create a consensus-enabled mixin instance
174
+ *
175
+ * @param config - Configuration for consensus verification
176
+ * @returns ConsensusEnabledMixin instance
177
+ *
178
+ * @example
179
+ * ```typescript
180
+ * const mixin = createConsensusEnabledMixin({
181
+ * enableConsensus: true,
182
+ * consensusThreshold: 0.8,
183
+ * verifyFindingTypes: ['vulnerability'],
184
+ * strategy: 'weighted',
185
+ * minModels: 2,
186
+ * modelTimeout: 30000,
187
+ * });
188
+ *
189
+ * await mixin.initializeConsensus();
190
+ *
191
+ * const result = await mixin.verifyFinding(finding);
192
+ * ```
193
+ */
194
+ export declare function createConsensusEnabledMixin(config?: Partial<ConsensusEnabledConfig>): ConsensusEnabledMixin;
195
+ /**
196
+ * Type helper for mixing ConsensusEnabledMixin into other classes
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * // Define base class
201
+ * class MyBaseCoordinator {
202
+ * // ... base implementation
203
+ * }
204
+ *
205
+ * // Create mixed class
206
+ * const ConsensusEnabledCoordinator = withConsensusEnabled(MyBaseCoordinator);
207
+ *
208
+ * class MyDomainCoordinator extends ConsensusEnabledCoordinator {
209
+ * // Now has access to consensus methods
210
+ * }
211
+ * ```
212
+ */
213
+ export type Constructor<T = object> = new (...args: any[]) => T;
214
+ /**
215
+ * Apply ConsensusEnabledMixin to a base class
216
+ *
217
+ * This is a TypeScript mixin pattern that adds consensus capabilities
218
+ * to any base class.
219
+ *
220
+ * @param Base - The base class to extend
221
+ * @param config - Configuration for consensus verification
222
+ * @returns Mixed class with consensus capabilities
223
+ */
224
+ export declare function withConsensusEnabled<TBase extends Constructor>(Base: TBase, config?: Partial<ConsensusEnabledConfig>): TBase & Constructor<IConsensusEnabledDomain>;
225
+ //# sourceMappingURL=consensus-enabled-domain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consensus-enabled-domain.d.ts","sourceRoot":"","sources":["../../../src/coordination/mixins/consensus-enabled-domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,IAAI,kBAAkB,EAGpC,mBAAmB,EAIpB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EACL,aAAa,EACb,eAAe,EAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAqB,MAAM,oBAAoB,CAAC;AAM/D;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,+CAA+C;IAC/C,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAElC,oEAAoE;IACpE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAEpC,wDAAwD;IACxD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAEtC,gCAAgC;IAChC,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAEzD,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,wCAAwC;IACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,0CAA0C;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAE7C,8CAA8C;IAC9C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED;;GAEG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAS9C,CAAC;AAMF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;OAMG;IACH,aAAa,CAAC,CAAC,EACb,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;IAE3C;;;;;OAKG;IACH,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;IAEzD;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,EACd,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EAC5B,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAE7C;;;;OAIG;IACH,iBAAiB,IAAI,kBAAkB,GAAG,SAAS,CAAC;CACrD;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,qBAAsB,YAAW,uBAAuB;IACnE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IAC3D,SAAS,CAAC,eAAe,EAAE,eAAe,GAAG,SAAS,CAAC;IACvD,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAS;IAEhD;;;;OAIG;gBACS,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAWxD;;;;;;;OAOG;cACa,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgDpD;;;;OAIG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBjD;;OAEG;IACG,aAAa,CAAC,CAAC,EACnB,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAkC1C;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO;IA2BxD;;OAEG;IACG,cAAc,CAAC,CAAC,EACpB,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EAC5B,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC;IAuC5C;;OAEG;IACH,iBAAiB,IAAI,kBAAkB,GAAG,SAAS;IAQnD;;OAEG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO;IAIzC;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,eAAe,GAAG,SAAS;IAI3D;;OAEG;IACH,OAAO,CAAC,aAAa;CAuCtB;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAC3C,qBAAqB,CAEvB;AAMD;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhE;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,SAAS,WAAW,EAC5D,IAAI,EAAE,KAAK,EACX,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAC3C,KAAK,GAAG,WAAW,CAAC,uBAAuB,CAAC,CA+G9C"}
@@ -0,0 +1,466 @@
1
+ /**
2
+ * Agentic QE v3 - Consensus Enabled Domain Mixin
3
+ * CONSENSUS-MIXIN-001: Reusable mixin for multi-model consensus verification
4
+ *
5
+ * This mixin allows any domain coordinator to leverage multi-model consensus
6
+ * verification for high-stakes decisions without duplicating consensus logic.
7
+ *
8
+ * @see docs/plans/AQE_V3_IMPROVEMENTS_PLAN.md - Phase 2: Multi-Model Verification
9
+ */
10
+ import { createConsensusEngine, registerProvidersFromEnv, DEFAULT_CONSENSUS_CONFIG, } from '../consensus';
11
+ import { ok, err } from '../../shared/types';
12
+ /**
13
+ * Default consensus configuration
14
+ */
15
+ export const DEFAULT_CONSENSUS_ENABLED_CONFIG = {
16
+ enableConsensus: true,
17
+ consensusThreshold: 0.7,
18
+ verifyFindingTypes: [],
19
+ strategy: 'weighted',
20
+ minModels: 2,
21
+ modelTimeout: 60000,
22
+ verifySeverities: ['critical', 'high'],
23
+ enableLogging: false,
24
+ };
25
+ // ============================================================================
26
+ // Domain Finding to Security Finding Conversion
27
+ // ============================================================================
28
+ /**
29
+ * Convert a generic DomainFinding to SecurityFinding format for the consensus engine
30
+ */
31
+ function toSecurityFinding(finding, category = 'other') {
32
+ // Map FindingSeverity to Severity
33
+ const severityMap = {
34
+ critical: 'critical',
35
+ high: 'high',
36
+ medium: 'medium',
37
+ low: 'low',
38
+ info: 'info',
39
+ };
40
+ // Extract location from payload if available
41
+ const payload = finding.payload;
42
+ const location = payload?.location || {
43
+ file: 'unknown',
44
+ };
45
+ // Extract evidence from payload if available
46
+ const evidence = payload?.evidence || [];
47
+ return {
48
+ id: finding.id,
49
+ type: finding.type,
50
+ category,
51
+ severity: severityMap[finding.severity || 'medium'],
52
+ description: finding.description,
53
+ location,
54
+ evidence,
55
+ detectedAt: finding.detectedAt,
56
+ detectedBy: finding.detectedBy,
57
+ correlationId: finding.correlationId,
58
+ metadata: {
59
+ originalFinding: finding,
60
+ domainContext: finding.context,
61
+ },
62
+ };
63
+ }
64
+ // ============================================================================
65
+ // Consensus Enabled Mixin Class
66
+ // ============================================================================
67
+ /**
68
+ * Mixin class that adds consensus verification capabilities to any domain coordinator
69
+ *
70
+ * This is designed to be used with TypeScript's class composition pattern.
71
+ * Domain coordinators can extend this mixin to gain consensus verification capabilities.
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * class MyDomainCoordinator extends ConsensusEnabledMixin {
76
+ * constructor(config: MyConfig) {
77
+ * super({
78
+ * enableConsensus: true,
79
+ * consensusThreshold: 0.8,
80
+ * verifyFindingTypes: ['vulnerability', 'defect'],
81
+ * strategy: 'weighted',
82
+ * minModels: 2,
83
+ * modelTimeout: 30000,
84
+ * verifySeverities: ['critical', 'high'],
85
+ * enableLogging: true,
86
+ * });
87
+ * }
88
+ *
89
+ * async initialize(): Promise<void> {
90
+ * await this.initializeConsensus();
91
+ * // ... other initialization
92
+ * }
93
+ *
94
+ * async dispose(): Promise<void> {
95
+ * await this.disposeConsensus();
96
+ * // ... other cleanup
97
+ * }
98
+ *
99
+ * async processFindings(findings: DomainFinding[]): Promise<void> {
100
+ * for (const finding of findings) {
101
+ * if (this.requiresConsensus(finding)) {
102
+ * const result = await this.verifyFinding(finding);
103
+ * if (result.success && result.value.verdict === 'verified') {
104
+ * // Take action on verified finding
105
+ * }
106
+ * }
107
+ * }
108
+ * }
109
+ * }
110
+ * ```
111
+ */
112
+ export class ConsensusEnabledMixin {
113
+ consensusConfig;
114
+ consensusEngine;
115
+ consensusInitialized = false;
116
+ /**
117
+ * Create a new ConsensusEnabledMixin
118
+ *
119
+ * @param config - Configuration for consensus verification
120
+ */
121
+ constructor(config = {}) {
122
+ this.consensusConfig = {
123
+ ...DEFAULT_CONSENSUS_ENABLED_CONFIG,
124
+ ...config,
125
+ };
126
+ }
127
+ // ============================================================================
128
+ // Lifecycle Methods
129
+ // ============================================================================
130
+ /**
131
+ * Initialize the consensus engine
132
+ *
133
+ * Call this in the domain coordinator's initialize() method.
134
+ * Uses registerProvidersFromEnv to auto-detect available model providers.
135
+ *
136
+ * @throws Error if consensus initialization fails
137
+ */
138
+ async initializeConsensus() {
139
+ if (!this.consensusConfig.enableConsensus) {
140
+ if (this.consensusConfig.enableLogging) {
141
+ console.log('[ConsensusEnabledMixin] Consensus verification disabled');
142
+ }
143
+ return;
144
+ }
145
+ try {
146
+ // Register providers from environment
147
+ const registry = registerProvidersFromEnv(this.consensusConfig.enableLogging);
148
+ const providers = registry.getAll();
149
+ if (providers.length === 0) {
150
+ if (this.consensusConfig.enableLogging) {
151
+ console.warn('[ConsensusEnabledMixin] No model providers available for consensus verification');
152
+ }
153
+ return;
154
+ }
155
+ // Create consensus engine
156
+ this.consensusEngine = createConsensusEngine({
157
+ strategy: this.consensusConfig.strategy,
158
+ models: providers,
159
+ engineConfig: {
160
+ minModels: Math.min(this.consensusConfig.minModels, providers.length),
161
+ defaultModelTimeout: this.consensusConfig.modelTimeout,
162
+ verifySeverities: this.consensusConfig.verifySeverities,
163
+ humanReviewThreshold: DEFAULT_CONSENSUS_CONFIG.humanReviewThreshold,
164
+ },
165
+ });
166
+ this.consensusInitialized = true;
167
+ if (this.consensusConfig.enableLogging) {
168
+ console.log(`[ConsensusEnabledMixin] Initialized with ${providers.length} providers ` +
169
+ `(strategy: ${this.consensusConfig.strategy})`);
170
+ }
171
+ }
172
+ catch (error) {
173
+ console.error('[ConsensusEnabledMixin] Failed to initialize consensus:', error);
174
+ throw error;
175
+ }
176
+ }
177
+ /**
178
+ * Dispose the consensus engine
179
+ *
180
+ * Call this in the domain coordinator's dispose() method.
181
+ */
182
+ async disposeConsensus() {
183
+ if (this.consensusEngine) {
184
+ await this.consensusEngine.dispose();
185
+ this.consensusEngine = undefined;
186
+ this.consensusInitialized = false;
187
+ if (this.consensusConfig.enableLogging) {
188
+ console.log('[ConsensusEnabledMixin] Consensus engine disposed');
189
+ }
190
+ }
191
+ }
192
+ // ============================================================================
193
+ // IConsensusEnabledDomain Implementation
194
+ // ============================================================================
195
+ /**
196
+ * Verify a single finding using multi-model consensus
197
+ */
198
+ async verifyFinding(finding, options) {
199
+ // Check if consensus is available
200
+ if (!this.consensusEngine || !this.consensusInitialized) {
201
+ return err(new Error('Consensus engine not initialized'));
202
+ }
203
+ // Check if finding requires consensus
204
+ if (!this.requiresConsensus(finding)) {
205
+ return err(new Error(`Finding ${finding.id} does not require consensus verification`));
206
+ }
207
+ try {
208
+ // Convert to SecurityFinding format
209
+ const securityFinding = toSecurityFinding(finding, this.inferCategory(finding.type));
210
+ // Verify using consensus engine
211
+ const result = await this.consensusEngine.verify(securityFinding, {
212
+ forceVerification: true,
213
+ ...options,
214
+ });
215
+ if (this.consensusConfig.enableLogging && result.success) {
216
+ console.log(`[ConsensusEnabledMixin] Finding ${finding.id} verified: ` +
217
+ `verdict=${result.value.verdict}, confidence=${result.value.confidence.toFixed(2)}`);
218
+ }
219
+ return result;
220
+ }
221
+ catch (error) {
222
+ return err(error instanceof Error ? error : new Error(String(error)));
223
+ }
224
+ }
225
+ /**
226
+ * Check if a finding requires consensus verification
227
+ */
228
+ requiresConsensus(finding) {
229
+ // Check if consensus is enabled
230
+ if (!this.consensusConfig.enableConsensus) {
231
+ return false;
232
+ }
233
+ // Check if finding type is in the verify list
234
+ const typeMatches = this.consensusConfig.verifyFindingTypes.length === 0 ||
235
+ this.consensusConfig.verifyFindingTypes.includes(finding.type);
236
+ if (!typeMatches) {
237
+ return false;
238
+ }
239
+ // Check severity
240
+ if (finding.severity) {
241
+ const severityMatches = this.consensusConfig.verifySeverities.includes(finding.severity);
242
+ if (severityMatches) {
243
+ return true;
244
+ }
245
+ }
246
+ // Check confidence threshold
247
+ return finding.confidence >= this.consensusConfig.consensusThreshold;
248
+ }
249
+ /**
250
+ * Verify multiple findings in batch
251
+ */
252
+ async verifyFindings(findings, options) {
253
+ // Check if consensus is available
254
+ if (!this.consensusEngine || !this.consensusInitialized) {
255
+ return err(new Error('Consensus engine not initialized'));
256
+ }
257
+ // Filter findings that require consensus
258
+ const findingsRequiringConsensus = findings.filter(f => this.requiresConsensus(f));
259
+ if (findingsRequiringConsensus.length === 0) {
260
+ return ok([]);
261
+ }
262
+ try {
263
+ // Convert all findings to SecurityFinding format
264
+ const securityFindings = findingsRequiringConsensus.map(f => toSecurityFinding(f, this.inferCategory(f.type)));
265
+ // Verify batch
266
+ const result = await this.consensusEngine.verifyBatch(securityFindings, {
267
+ forceVerification: true,
268
+ ...options,
269
+ });
270
+ if (this.consensusConfig.enableLogging && result.success) {
271
+ const verified = result.value.filter(r => r.verdict === 'verified').length;
272
+ console.log(`[ConsensusEnabledMixin] Batch verification complete: ` +
273
+ `${verified}/${result.value.length} verified`);
274
+ }
275
+ return result;
276
+ }
277
+ catch (error) {
278
+ return err(error instanceof Error ? error : new Error(String(error)));
279
+ }
280
+ }
281
+ /**
282
+ * Get consensus statistics
283
+ */
284
+ getConsensusStats() {
285
+ return this.consensusEngine?.getStats();
286
+ }
287
+ // ============================================================================
288
+ // Helper Methods
289
+ // ============================================================================
290
+ /**
291
+ * Check if consensus engine is available
292
+ */
293
+ isConsensusAvailable() {
294
+ return this.consensusInitialized && this.consensusEngine !== undefined;
295
+ }
296
+ /**
297
+ * Get the consensus engine (for advanced usage)
298
+ */
299
+ getConsensusEngine() {
300
+ return this.consensusEngine;
301
+ }
302
+ /**
303
+ * Infer security finding category from finding type
304
+ */
305
+ inferCategory(findingType) {
306
+ const categoryMap = {
307
+ // Security categories
308
+ 'sql-injection': 'injection',
309
+ 'command-injection': 'injection',
310
+ 'xss': 'input-validation',
311
+ 'authentication': 'authentication',
312
+ 'authorization': 'authorization',
313
+ 'crypto': 'cryptography',
314
+ 'hardcoded-secret': 'cryptography',
315
+ 'data-exposure': 'data-exposure',
316
+ 'pii-exposure': 'data-exposure',
317
+ 'misconfiguration': 'configuration',
318
+ 'vulnerable-dependency': 'dependency',
319
+ 'path-traversal': 'input-validation',
320
+ 'session': 'session-management',
321
+ 'timing': 'timing-attack',
322
+ 'dos': 'resource-management',
323
+ 'memory-leak': 'resource-management',
324
+ 'logging': 'logging',
325
+ // Generic categories for non-security findings
326
+ 'vulnerability': 'other',
327
+ 'defect': 'other',
328
+ 'coverage-gap': 'other',
329
+ 'contract-violation': 'other',
330
+ 'quality-issue': 'other',
331
+ };
332
+ // Find matching category
333
+ const lowercaseType = findingType.toLowerCase();
334
+ for (const [pattern, category] of Object.entries(categoryMap)) {
335
+ if (lowercaseType.includes(pattern)) {
336
+ return category;
337
+ }
338
+ }
339
+ return 'other';
340
+ }
341
+ }
342
+ // ============================================================================
343
+ // Factory Function
344
+ // ============================================================================
345
+ /**
346
+ * Create a consensus-enabled mixin instance
347
+ *
348
+ * @param config - Configuration for consensus verification
349
+ * @returns ConsensusEnabledMixin instance
350
+ *
351
+ * @example
352
+ * ```typescript
353
+ * const mixin = createConsensusEnabledMixin({
354
+ * enableConsensus: true,
355
+ * consensusThreshold: 0.8,
356
+ * verifyFindingTypes: ['vulnerability'],
357
+ * strategy: 'weighted',
358
+ * minModels: 2,
359
+ * modelTimeout: 30000,
360
+ * });
361
+ *
362
+ * await mixin.initializeConsensus();
363
+ *
364
+ * const result = await mixin.verifyFinding(finding);
365
+ * ```
366
+ */
367
+ export function createConsensusEnabledMixin(config = {}) {
368
+ return new ConsensusEnabledMixin(config);
369
+ }
370
+ /**
371
+ * Apply ConsensusEnabledMixin to a base class
372
+ *
373
+ * This is a TypeScript mixin pattern that adds consensus capabilities
374
+ * to any base class.
375
+ *
376
+ * @param Base - The base class to extend
377
+ * @param config - Configuration for consensus verification
378
+ * @returns Mixed class with consensus capabilities
379
+ */
380
+ export function withConsensusEnabled(Base, config = {}) {
381
+ return class extends Base {
382
+ consensusConfig;
383
+ consensusEngine;
384
+ consensusInitialized = false;
385
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
386
+ constructor(...args) {
387
+ super(...args);
388
+ this.consensusConfig = {
389
+ ...DEFAULT_CONSENSUS_ENABLED_CONFIG,
390
+ ...config,
391
+ };
392
+ }
393
+ async initializeConsensus() {
394
+ if (!this.consensusConfig.enableConsensus) {
395
+ return;
396
+ }
397
+ const registry = registerProvidersFromEnv(this.consensusConfig.enableLogging);
398
+ const providers = registry.getAll();
399
+ if (providers.length === 0) {
400
+ return;
401
+ }
402
+ this.consensusEngine = createConsensusEngine({
403
+ strategy: this.consensusConfig.strategy,
404
+ models: providers,
405
+ engineConfig: {
406
+ minModels: Math.min(this.consensusConfig.minModels, providers.length),
407
+ defaultModelTimeout: this.consensusConfig.modelTimeout,
408
+ verifySeverities: this.consensusConfig.verifySeverities,
409
+ },
410
+ });
411
+ this.consensusInitialized = true;
412
+ }
413
+ async disposeConsensus() {
414
+ if (this.consensusEngine) {
415
+ await this.consensusEngine.dispose();
416
+ this.consensusEngine = undefined;
417
+ this.consensusInitialized = false;
418
+ }
419
+ }
420
+ async verifyFinding(finding, options) {
421
+ if (!this.consensusEngine || !this.consensusInitialized) {
422
+ return err(new Error('Consensus engine not initialized'));
423
+ }
424
+ if (!this.requiresConsensus(finding)) {
425
+ return err(new Error(`Finding ${finding.id} does not require consensus verification`));
426
+ }
427
+ const securityFinding = toSecurityFinding(finding, 'other');
428
+ return this.consensusEngine.verify(securityFinding, {
429
+ forceVerification: true,
430
+ ...options,
431
+ });
432
+ }
433
+ requiresConsensus(finding) {
434
+ if (!this.consensusConfig.enableConsensus) {
435
+ return false;
436
+ }
437
+ const typeMatches = this.consensusConfig.verifyFindingTypes.length === 0 ||
438
+ this.consensusConfig.verifyFindingTypes.includes(finding.type);
439
+ if (!typeMatches) {
440
+ return false;
441
+ }
442
+ if (finding.severity && this.consensusConfig.verifySeverities.includes(finding.severity)) {
443
+ return true;
444
+ }
445
+ return finding.confidence >= this.consensusConfig.consensusThreshold;
446
+ }
447
+ async verifyFindings(findings, options) {
448
+ if (!this.consensusEngine || !this.consensusInitialized) {
449
+ return err(new Error('Consensus engine not initialized'));
450
+ }
451
+ const findingsRequiringConsensus = findings.filter(f => this.requiresConsensus(f));
452
+ if (findingsRequiringConsensus.length === 0) {
453
+ return ok([]);
454
+ }
455
+ const securityFindings = findingsRequiringConsensus.map(f => toSecurityFinding(f, 'other'));
456
+ return this.consensusEngine.verifyBatch(securityFindings, {
457
+ forceVerification: true,
458
+ ...options,
459
+ });
460
+ }
461
+ getConsensusStats() {
462
+ return this.consensusEngine?.getStats();
463
+ }
464
+ };
465
+ }
466
+ //# sourceMappingURL=consensus-enabled-domain.js.map