agentic-qe 3.6.8 → 3.6.10

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 (1290) hide show
  1. package/.claude/skills/.validation/schemas/skill-eval.schema.json +11 -1
  2. package/.claude/skills/README.md +1 -1
  3. package/.claude/skills/pr-review/SKILL.md +2 -2
  4. package/.claude/skills/qcsd-production-swarm/SKILL.md +2781 -0
  5. package/.claude/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +246 -0
  6. package/.claude/skills/qcsd-production-swarm/schemas/output.json +505 -0
  7. package/.claude/skills/qcsd-production-swarm/scripts/validate-config.json +25 -0
  8. package/.claude/skills/skills-manifest.json +5 -5
  9. package/package.json +3 -2
  10. package/scripts/benchmark-hnsw-loading.ts +480 -0
  11. package/scripts/benchmark-kg-assisted.ts +725 -0
  12. package/scripts/collect-production-telemetry.sh +291 -0
  13. package/scripts/detect-skill-conflicts.ts +347 -0
  14. package/scripts/eval-driven-workflow.ts +704 -0
  15. package/scripts/run-skill-eval.ts +210 -10
  16. package/scripts/score-skill-quality.ts +511 -0
  17. package/v3/CHANGELOG.md +39 -0
  18. package/v3/assets/skills/pr-review/SKILL.md +2 -2
  19. package/v3/dist/adapters/a2a/agent-cards/generator.d.ts.map +1 -1
  20. package/v3/dist/adapters/a2a/agent-cards/generator.js +2 -1
  21. package/v3/dist/adapters/a2a/agent-cards/generator.js.map +1 -1
  22. package/v3/dist/adapters/a2a/auth/jwt-utils.d.ts.map +1 -1
  23. package/v3/dist/adapters/a2a/auth/jwt-utils.js +3 -2
  24. package/v3/dist/adapters/a2a/auth/jwt-utils.js.map +1 -1
  25. package/v3/dist/adapters/a2a/auth/middleware.d.ts.map +1 -1
  26. package/v3/dist/adapters/a2a/auth/middleware.js +3 -0
  27. package/v3/dist/adapters/a2a/auth/middleware.js.map +1 -1
  28. package/v3/dist/adapters/a2a/discovery/agent-health.d.ts.map +1 -1
  29. package/v3/dist/adapters/a2a/discovery/agent-health.js +4 -3
  30. package/v3/dist/adapters/a2a/discovery/agent-health.js.map +1 -1
  31. package/v3/dist/adapters/a2a/discovery/file-watcher.d.ts.map +1 -1
  32. package/v3/dist/adapters/a2a/discovery/file-watcher.js +3 -2
  33. package/v3/dist/adapters/a2a/discovery/file-watcher.js.map +1 -1
  34. package/v3/dist/adapters/a2a/discovery/hot-reload-service.d.ts.map +1 -1
  35. package/v3/dist/adapters/a2a/discovery/hot-reload-service.js +6 -5
  36. package/v3/dist/adapters/a2a/discovery/hot-reload-service.js.map +1 -1
  37. package/v3/dist/adapters/a2a/jsonrpc/envelope.d.ts.map +1 -1
  38. package/v3/dist/adapters/a2a/jsonrpc/envelope.js +5 -4
  39. package/v3/dist/adapters/a2a/jsonrpc/envelope.js.map +1 -1
  40. package/v3/dist/adapters/ag-ui/event-adapter.d.ts.map +1 -1
  41. package/v3/dist/adapters/ag-ui/event-adapter.js +2 -1
  42. package/v3/dist/adapters/ag-ui/event-adapter.js.map +1 -1
  43. package/v3/dist/adapters/ag-ui/event-batcher.d.ts.map +1 -1
  44. package/v3/dist/adapters/ag-ui/event-batcher.js +2 -1
  45. package/v3/dist/adapters/ag-ui/event-batcher.js.map +1 -1
  46. package/v3/dist/adapters/ag-ui/json-patch-utils.d.ts.map +1 -1
  47. package/v3/dist/adapters/ag-ui/json-patch-utils.js +2 -1
  48. package/v3/dist/adapters/ag-ui/json-patch-utils.js.map +1 -1
  49. package/v3/dist/adapters/ag-ui/json-patch.d.ts +1 -1
  50. package/v3/dist/adapters/ag-ui/json-patch.d.ts.map +1 -1
  51. package/v3/dist/adapters/ag-ui/json-patch.js +4 -6
  52. package/v3/dist/adapters/ag-ui/json-patch.js.map +1 -1
  53. package/v3/dist/adapters/ag-ui/stream-controller.d.ts.map +1 -1
  54. package/v3/dist/adapters/ag-ui/stream-controller.js +3 -0
  55. package/v3/dist/adapters/ag-ui/stream-controller.js.map +1 -1
  56. package/v3/dist/adapters/claude-flow/detect.d.ts.map +1 -1
  57. package/v3/dist/adapters/claude-flow/detect.js +4 -3
  58. package/v3/dist/adapters/claude-flow/detect.js.map +1 -1
  59. package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts.map +1 -1
  60. package/v3/dist/adapters/claude-flow/pretrain-bridge.js +7 -5
  61. package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -1
  62. package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts.map +1 -1
  63. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +2 -14
  64. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -1
  65. package/v3/dist/adapters/trajectory-adapter.d.ts.map +1 -1
  66. package/v3/dist/adapters/trajectory-adapter.js +5 -3
  67. package/v3/dist/adapters/trajectory-adapter.js.map +1 -1
  68. package/v3/dist/agents/claim-verifier/verifiers/test-verifier.d.ts.map +1 -1
  69. package/v3/dist/agents/claim-verifier/verifiers/test-verifier.js +2 -1
  70. package/v3/dist/agents/claim-verifier/verifiers/test-verifier.js.map +1 -1
  71. package/v3/dist/benchmarks/performance-benchmarks.d.ts.map +1 -1
  72. package/v3/dist/benchmarks/performance-benchmarks.js +4 -3
  73. package/v3/dist/benchmarks/performance-benchmarks.js.map +1 -1
  74. package/v3/dist/benchmarks/run-benchmarks.js +27 -45
  75. package/v3/dist/benchmarks/run-benchmarks.js.map +1 -1
  76. package/v3/dist/cli/bundle.js +14596 -15275
  77. package/v3/dist/cli/commands/claude-flow-setup.d.ts.map +1 -1
  78. package/v3/dist/cli/commands/claude-flow-setup.js +7 -5
  79. package/v3/dist/cli/commands/claude-flow-setup.js.map +1 -1
  80. package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
  81. package/v3/dist/cli/commands/hooks.js +145 -3
  82. package/v3/dist/cli/commands/hooks.js.map +1 -1
  83. package/v3/dist/cli/commands/init.d.ts.map +1 -1
  84. package/v3/dist/cli/commands/init.js +2 -1
  85. package/v3/dist/cli/commands/init.js.map +1 -1
  86. package/v3/dist/cli/commands/learning-helpers.d.ts +101 -0
  87. package/v3/dist/cli/commands/learning-helpers.d.ts.map +1 -0
  88. package/v3/dist/cli/commands/learning-helpers.js +294 -0
  89. package/v3/dist/cli/commands/learning-helpers.js.map +1 -0
  90. package/v3/dist/cli/commands/learning.d.ts +1 -6
  91. package/v3/dist/cli/commands/learning.d.ts.map +1 -1
  92. package/v3/dist/cli/commands/learning.js +230 -839
  93. package/v3/dist/cli/commands/learning.js.map +1 -1
  94. package/v3/dist/cli/commands/qe-tools.d.ts.map +1 -1
  95. package/v3/dist/cli/commands/qe-tools.js +2 -1
  96. package/v3/dist/cli/commands/qe-tools.js.map +1 -1
  97. package/v3/dist/cli/commands/sync.d.ts.map +1 -1
  98. package/v3/dist/cli/commands/sync.js +5 -4
  99. package/v3/dist/cli/commands/sync.js.map +1 -1
  100. package/v3/dist/cli/commands/test.d.ts.map +1 -1
  101. package/v3/dist/cli/commands/test.js +6 -0
  102. package/v3/dist/cli/commands/test.js.map +1 -1
  103. package/v3/dist/cli/commands/token-usage.d.ts.map +1 -1
  104. package/v3/dist/cli/commands/token-usage.js +2 -1
  105. package/v3/dist/cli/commands/token-usage.js.map +1 -1
  106. package/v3/dist/cli/commands/validate.d.ts.map +1 -1
  107. package/v3/dist/cli/commands/validate.js +3 -2
  108. package/v3/dist/cli/commands/validate.js.map +1 -1
  109. package/v3/dist/cli/config/cli-config.d.ts.map +1 -1
  110. package/v3/dist/cli/config/cli-config.js +2 -1
  111. package/v3/dist/cli/config/cli-config.js.map +1 -1
  112. package/v3/dist/cli/handlers/init-handler.d.ts.map +1 -1
  113. package/v3/dist/cli/handlers/init-handler.js +3 -2
  114. package/v3/dist/cli/handlers/init-handler.js.map +1 -1
  115. package/v3/dist/cli/helpers/safe-json.d.ts +4 -48
  116. package/v3/dist/cli/helpers/safe-json.d.ts.map +1 -1
  117. package/v3/dist/cli/helpers/safe-json.js +4 -68
  118. package/v3/dist/cli/helpers/safe-json.js.map +1 -1
  119. package/v3/dist/cli/index.js +3 -2
  120. package/v3/dist/cli/index.js.map +1 -1
  121. package/v3/dist/cli/scheduler/persistent-scheduler.d.ts.map +1 -1
  122. package/v3/dist/cli/scheduler/persistent-scheduler.js +4 -2
  123. package/v3/dist/cli/scheduler/persistent-scheduler.js.map +1 -1
  124. package/v3/dist/cli/wizards/test-wizard.d.ts.map +1 -1
  125. package/v3/dist/cli/wizards/test-wizard.js +2 -1
  126. package/v3/dist/cli/wizards/test-wizard.js.map +1 -1
  127. package/v3/dist/coordination/agent-teams/tracing.d.ts.map +1 -1
  128. package/v3/dist/coordination/agent-teams/tracing.js +2 -1
  129. package/v3/dist/coordination/agent-teams/tracing.js.map +1 -1
  130. package/v3/dist/coordination/circuit-breaker/breaker-registry.d.ts.map +1 -1
  131. package/v3/dist/coordination/circuit-breaker/breaker-registry.js +3 -2
  132. package/v3/dist/coordination/circuit-breaker/breaker-registry.js.map +1 -1
  133. package/v3/dist/coordination/circuit-breaker/domain-circuit-breaker.d.ts.map +1 -1
  134. package/v3/dist/coordination/circuit-breaker/domain-circuit-breaker.js +3 -2
  135. package/v3/dist/coordination/circuit-breaker/domain-circuit-breaker.js.map +1 -1
  136. package/v3/dist/coordination/consensus/consensus-engine.d.ts.map +1 -1
  137. package/v3/dist/coordination/consensus/consensus-engine.js +7 -6
  138. package/v3/dist/coordination/consensus/consensus-engine.js.map +1 -1
  139. package/v3/dist/coordination/consensus/model-provider.d.ts.map +1 -1
  140. package/v3/dist/coordination/consensus/model-provider.js +2 -1
  141. package/v3/dist/coordination/consensus/model-provider.js.map +1 -1
  142. package/v3/dist/coordination/consensus/providers/claude-provider.d.ts.map +1 -1
  143. package/v3/dist/coordination/consensus/providers/claude-provider.js +13 -12
  144. package/v3/dist/coordination/consensus/providers/claude-provider.js.map +1 -1
  145. package/v3/dist/coordination/consensus/providers/gemini-provider.d.ts.map +1 -1
  146. package/v3/dist/coordination/consensus/providers/gemini-provider.js +13 -12
  147. package/v3/dist/coordination/consensus/providers/gemini-provider.js.map +1 -1
  148. package/v3/dist/coordination/consensus/providers/native-learning-provider.d.ts.map +1 -1
  149. package/v3/dist/coordination/consensus/providers/native-learning-provider.js +3 -2
  150. package/v3/dist/coordination/consensus/providers/native-learning-provider.js.map +1 -1
  151. package/v3/dist/coordination/consensus/providers/ollama-provider.d.ts.map +1 -1
  152. package/v3/dist/coordination/consensus/providers/ollama-provider.js +3 -2
  153. package/v3/dist/coordination/consensus/providers/ollama-provider.js.map +1 -1
  154. package/v3/dist/coordination/consensus/providers/openai-provider.d.ts.map +1 -1
  155. package/v3/dist/coordination/consensus/providers/openai-provider.js +3 -2
  156. package/v3/dist/coordination/consensus/providers/openai-provider.js.map +1 -1
  157. package/v3/dist/coordination/consensus/providers/openrouter-provider.d.ts.map +1 -1
  158. package/v3/dist/coordination/consensus/providers/openrouter-provider.js +3 -2
  159. package/v3/dist/coordination/consensus/providers/openrouter-provider.js.map +1 -1
  160. package/v3/dist/coordination/dynamic-scaling/dynamic-scaler.d.ts.map +1 -1
  161. package/v3/dist/coordination/dynamic-scaling/dynamic-scaler.js +5 -4
  162. package/v3/dist/coordination/dynamic-scaling/dynamic-scaler.js.map +1 -1
  163. package/v3/dist/coordination/mincut/dream-integration.d.ts.map +1 -1
  164. package/v3/dist/coordination/mincut/dream-integration.js.map +1 -1
  165. package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts +4 -2
  166. package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts.map +1 -1
  167. package/v3/dist/coordination/mincut/mincut-health-monitor.js +13 -3
  168. package/v3/dist/coordination/mincut/mincut-health-monitor.js.map +1 -1
  169. package/v3/dist/coordination/mincut/mincut-persistence.d.ts.map +1 -1
  170. package/v3/dist/coordination/mincut/mincut-persistence.js +5 -4
  171. package/v3/dist/coordination/mincut/mincut-persistence.js.map +1 -1
  172. package/v3/dist/coordination/mincut/neural-goap.d.ts.map +1 -1
  173. package/v3/dist/coordination/mincut/neural-goap.js +2 -1
  174. package/v3/dist/coordination/mincut/neural-goap.js.map +1 -1
  175. package/v3/dist/coordination/mincut/strange-loop.d.ts.map +1 -1
  176. package/v3/dist/coordination/mincut/strange-loop.js +10 -2
  177. package/v3/dist/coordination/mincut/strange-loop.js.map +1 -1
  178. package/v3/dist/coordination/mincut/time-crystal.d.ts.map +1 -1
  179. package/v3/dist/coordination/mincut/time-crystal.js +2 -1
  180. package/v3/dist/coordination/mincut/time-crystal.js.map +1 -1
  181. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +19 -3
  182. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -1
  183. package/v3/dist/coordination/mixins/consensus-enabled-domain.js +6 -2
  184. package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -1
  185. package/v3/dist/coordination/plugin.d.ts +1 -1
  186. package/v3/dist/coordination/plugin.d.ts.map +1 -1
  187. package/v3/dist/coordination/plugin.js +1 -1
  188. package/v3/dist/coordination/plugin.js.map +1 -1
  189. package/v3/dist/coordination/protocol-executor.d.ts.map +1 -1
  190. package/v3/dist/coordination/protocol-executor.js +4 -3
  191. package/v3/dist/coordination/protocol-executor.js.map +1 -1
  192. package/v3/dist/coordination/protocols/code-intelligence-index.d.ts +1 -1
  193. package/v3/dist/coordination/protocols/code-intelligence-index.d.ts.map +1 -1
  194. package/v3/dist/coordination/protocols/code-intelligence-index.js +22 -10
  195. package/v3/dist/coordination/protocols/code-intelligence-index.js.map +1 -1
  196. package/v3/dist/coordination/protocols/defect-investigation.d.ts +2 -2
  197. package/v3/dist/coordination/protocols/defect-investigation.d.ts.map +1 -1
  198. package/v3/dist/coordination/protocols/defect-investigation.js +16 -7
  199. package/v3/dist/coordination/protocols/defect-investigation.js.map +1 -1
  200. package/v3/dist/coordination/protocols/learning-consolidation.d.ts +1 -1
  201. package/v3/dist/coordination/protocols/learning-consolidation.d.ts.map +1 -1
  202. package/v3/dist/coordination/protocols/learning-consolidation.js +6 -5
  203. package/v3/dist/coordination/protocols/learning-consolidation.js.map +1 -1
  204. package/v3/dist/coordination/protocols/morning-sync.d.ts.map +1 -1
  205. package/v3/dist/coordination/protocols/morning-sync.js +2 -1
  206. package/v3/dist/coordination/protocols/morning-sync.js.map +1 -1
  207. package/v3/dist/coordination/protocols/quality-gate.d.ts.map +1 -1
  208. package/v3/dist/coordination/protocols/quality-gate.js +6 -5
  209. package/v3/dist/coordination/protocols/quality-gate.js.map +1 -1
  210. package/v3/dist/coordination/protocols/security-audit.d.ts +1 -1
  211. package/v3/dist/coordination/protocols/security-audit.d.ts.map +1 -1
  212. package/v3/dist/coordination/protocols/security-audit.js +35 -13
  213. package/v3/dist/coordination/protocols/security-audit.js.map +1 -1
  214. package/v3/dist/coordination/queen-coordinator.d.ts +26 -257
  215. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  216. package/v3/dist/coordination/queen-coordinator.js +282 -1175
  217. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  218. package/v3/dist/coordination/queen-event-handlers.d.ts +61 -0
  219. package/v3/dist/coordination/queen-event-handlers.d.ts.map +1 -0
  220. package/v3/dist/coordination/queen-event-handlers.js +311 -0
  221. package/v3/dist/coordination/queen-event-handlers.js.map +1 -0
  222. package/v3/dist/coordination/queen-lifecycle.d.ts +61 -0
  223. package/v3/dist/coordination/queen-lifecycle.d.ts.map +1 -0
  224. package/v3/dist/coordination/queen-lifecycle.js +162 -0
  225. package/v3/dist/coordination/queen-lifecycle.js.map +1 -0
  226. package/v3/dist/coordination/queen-task-management.d.ts +84 -0
  227. package/v3/dist/coordination/queen-task-management.d.ts.map +1 -0
  228. package/v3/dist/coordination/queen-task-management.js +333 -0
  229. package/v3/dist/coordination/queen-task-management.js.map +1 -0
  230. package/v3/dist/coordination/queen-types.d.ts +175 -0
  231. package/v3/dist/coordination/queen-types.d.ts.map +1 -0
  232. package/v3/dist/coordination/queen-types.js +80 -0
  233. package/v3/dist/coordination/queen-types.js.map +1 -0
  234. package/v3/dist/coordination/queen-work-stealing.d.ts +33 -0
  235. package/v3/dist/coordination/queen-work-stealing.d.ts.map +1 -0
  236. package/v3/dist/coordination/queen-work-stealing.js +78 -0
  237. package/v3/dist/coordination/queen-work-stealing.js.map +1 -0
  238. package/v3/dist/coordination/result-saver.d.ts.map +1 -1
  239. package/v3/dist/coordination/result-saver.js +2 -1
  240. package/v3/dist/coordination/result-saver.js.map +1 -1
  241. package/v3/dist/coordination/task-executor.d.ts +45 -2
  242. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  243. package/v3/dist/coordination/task-executor.js +643 -570
  244. package/v3/dist/coordination/task-executor.js.map +1 -1
  245. package/v3/dist/coordination/workflow-builtin.d.ts +17 -0
  246. package/v3/dist/coordination/workflow-builtin.d.ts.map +1 -0
  247. package/v3/dist/coordination/workflow-builtin.js +648 -0
  248. package/v3/dist/coordination/workflow-builtin.js.map +1 -0
  249. package/v3/dist/coordination/workflow-orchestrator.d.ts +13 -300
  250. package/v3/dist/coordination/workflow-orchestrator.d.ts.map +1 -1
  251. package/v3/dist/coordination/workflow-orchestrator.js +142 -1009
  252. package/v3/dist/coordination/workflow-orchestrator.js.map +1 -1
  253. package/v3/dist/coordination/workflow-types.d.ts +250 -0
  254. package/v3/dist/coordination/workflow-types.d.ts.map +1 -0
  255. package/v3/dist/coordination/workflow-types.js +27 -0
  256. package/v3/dist/coordination/workflow-types.js.map +1 -0
  257. package/v3/dist/domains/base-domain-coordinator.d.ts +119 -0
  258. package/v3/dist/domains/base-domain-coordinator.d.ts.map +1 -0
  259. package/v3/dist/domains/base-domain-coordinator.js +200 -0
  260. package/v3/dist/domains/base-domain-coordinator.js.map +1 -0
  261. package/v3/dist/domains/chaos-resilience/coordinator.d.ts +12 -70
  262. package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
  263. package/v3/dist/domains/chaos-resilience/coordinator.js +25 -181
  264. package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
  265. package/v3/dist/domains/chaos-resilience/plugin.d.ts.map +1 -1
  266. package/v3/dist/domains/chaos-resilience/plugin.js +2 -1
  267. package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
  268. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
  269. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +15 -13
  270. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
  271. package/v3/dist/domains/chaos-resilience/services/load-tester.d.ts.map +1 -1
  272. package/v3/dist/domains/chaos-resilience/services/load-tester.js +8 -7
  273. package/v3/dist/domains/chaos-resilience/services/load-tester.js.map +1 -1
  274. package/v3/dist/domains/chaos-resilience/services/performance-profiler.d.ts.map +1 -1
  275. package/v3/dist/domains/chaos-resilience/services/performance-profiler.js +7 -5
  276. package/v3/dist/domains/chaos-resilience/services/performance-profiler.js.map +1 -1
  277. package/v3/dist/domains/code-intelligence/coordinator-consensus.d.ts +33 -0
  278. package/v3/dist/domains/code-intelligence/coordinator-consensus.d.ts.map +1 -0
  279. package/v3/dist/domains/code-intelligence/coordinator-consensus.js +81 -0
  280. package/v3/dist/domains/code-intelligence/coordinator-consensus.js.map +1 -0
  281. package/v3/dist/domains/code-intelligence/coordinator-gnn.d.ts +44 -0
  282. package/v3/dist/domains/code-intelligence/coordinator-gnn.d.ts.map +1 -0
  283. package/v3/dist/domains/code-intelligence/coordinator-gnn.js +183 -0
  284. package/v3/dist/domains/code-intelligence/coordinator-gnn.js.map +1 -0
  285. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.d.ts +40 -0
  286. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.d.ts.map +1 -0
  287. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.js +191 -0
  288. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.js.map +1 -0
  289. package/v3/dist/domains/code-intelligence/coordinator.d.ts +17 -93
  290. package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
  291. package/v3/dist/domains/code-intelligence/coordinator.js +46 -565
  292. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  293. package/v3/dist/domains/code-intelligence/index.d.ts.map +1 -1
  294. package/v3/dist/domains/code-intelligence/index.js +10 -0
  295. package/v3/dist/domains/code-intelligence/index.js.map +1 -1
  296. package/v3/dist/domains/code-intelligence/plugin.d.ts.map +1 -1
  297. package/v3/dist/domains/code-intelligence/plugin.js +2 -1
  298. package/v3/dist/domains/code-intelligence/plugin.js.map +1 -1
  299. package/v3/dist/domains/code-intelligence/services/c4-model/index.d.ts +3 -3
  300. package/v3/dist/domains/code-intelligence/services/c4-model/index.d.ts.map +1 -1
  301. package/v3/dist/domains/code-intelligence/services/c4-model/index.js +2 -2
  302. package/v3/dist/domains/code-intelligence/services/c4-model/index.js.map +1 -1
  303. package/v3/dist/domains/code-intelligence/services/c4-model/types.d.ts +1 -1
  304. package/v3/dist/domains/code-intelligence/services/c4-model/types.d.ts.map +1 -1
  305. package/v3/dist/domains/code-intelligence/services/impact-analyzer.d.ts.map +1 -1
  306. package/v3/dist/domains/code-intelligence/services/impact-analyzer.js +3 -2
  307. package/v3/dist/domains/code-intelligence/services/impact-analyzer.js.map +1 -1
  308. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
  309. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +8 -6
  310. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
  311. package/v3/dist/domains/code-intelligence/services/metric-collector/loc-counter.d.ts.map +1 -1
  312. package/v3/dist/domains/code-intelligence/services/metric-collector/loc-counter.js +3 -2
  313. package/v3/dist/domains/code-intelligence/services/metric-collector/loc-counter.js.map +1 -1
  314. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.d.ts.map +1 -1
  315. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js +3 -2
  316. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js.map +1 -1
  317. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.d.ts.map +1 -1
  318. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.js +8 -6
  319. package/v3/dist/domains/code-intelligence/services/product-factors-bridge.js.map +1 -1
  320. package/v3/dist/domains/code-intelligence/services/semantic-analyzer.d.ts.map +1 -1
  321. package/v3/dist/domains/code-intelligence/services/semantic-analyzer.js +5 -4
  322. package/v3/dist/domains/code-intelligence/services/semantic-analyzer.js.map +1 -1
  323. package/v3/dist/domains/contract-testing/coordinator.d.ts +13 -89
  324. package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
  325. package/v3/dist/domains/contract-testing/coordinator.js +43 -215
  326. package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
  327. package/v3/dist/domains/contract-testing/plugin.d.ts.map +1 -1
  328. package/v3/dist/domains/contract-testing/plugin.js +5 -4
  329. package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
  330. package/v3/dist/domains/contract-testing/services/api-compatibility.d.ts.map +1 -1
  331. package/v3/dist/domains/contract-testing/services/api-compatibility.js +7 -5
  332. package/v3/dist/domains/contract-testing/services/api-compatibility.js.map +1 -1
  333. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
  334. package/v3/dist/domains/contract-testing/services/contract-validator.js +10 -8
  335. package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
  336. package/v3/dist/domains/contract-testing/services/schema-validator.d.ts.map +1 -1
  337. package/v3/dist/domains/contract-testing/services/schema-validator.js +10 -8
  338. package/v3/dist/domains/contract-testing/services/schema-validator.js.map +1 -1
  339. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +8 -59
  340. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  341. package/v3/dist/domains/coverage-analysis/coordinator.js +30 -138
  342. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  343. package/v3/dist/domains/coverage-analysis/index.js +7 -0
  344. package/v3/dist/domains/coverage-analysis/index.js.map +1 -1
  345. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  346. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +5 -3
  347. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  348. package/v3/dist/domains/coverage-analysis/services/coverage-parser.d.ts.map +1 -1
  349. package/v3/dist/domains/coverage-analysis/services/coverage-parser.js +2 -1
  350. package/v3/dist/domains/coverage-analysis/services/coverage-parser.js.map +1 -1
  351. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  352. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +6 -4
  353. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  354. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.d.ts.map +1 -1
  355. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js +5 -4
  356. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js.map +1 -1
  357. package/v3/dist/domains/coverage-analysis/services/risk-scorer.d.ts.map +1 -1
  358. package/v3/dist/domains/coverage-analysis/services/risk-scorer.js +3 -2
  359. package/v3/dist/domains/coverage-analysis/services/risk-scorer.js.map +1 -1
  360. package/v3/dist/domains/coverage-analysis/services/sublinear-analyzer.d.ts.map +1 -1
  361. package/v3/dist/domains/coverage-analysis/services/sublinear-analyzer.js +4 -3
  362. package/v3/dist/domains/coverage-analysis/services/sublinear-analyzer.js.map +1 -1
  363. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +10 -58
  364. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  365. package/v3/dist/domains/defect-intelligence/coordinator.js +50 -171
  366. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  367. package/v3/dist/domains/defect-intelligence/plugin.d.ts.map +1 -1
  368. package/v3/dist/domains/defect-intelligence/plugin.js +2 -1
  369. package/v3/dist/domains/defect-intelligence/plugin.js.map +1 -1
  370. package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.d.ts.map +1 -1
  371. package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.js +4 -3
  372. package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.js.map +1 -1
  373. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  374. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +6 -4
  375. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  376. package/v3/dist/domains/defect-intelligence/services/pattern-learner.d.ts.map +1 -1
  377. package/v3/dist/domains/defect-intelligence/services/pattern-learner.js +4 -3
  378. package/v3/dist/domains/defect-intelligence/services/pattern-learner.js.map +1 -1
  379. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  380. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +6 -4
  381. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  382. package/v3/dist/domains/domain-interface.d.ts +6 -219
  383. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  384. package/v3/dist/domains/domain-interface.js +6 -312
  385. package/v3/dist/domains/domain-interface.js.map +1 -1
  386. package/v3/dist/domains/enterprise-integration/coordinator.d.ts +11 -37
  387. package/v3/dist/domains/enterprise-integration/coordinator.d.ts.map +1 -1
  388. package/v3/dist/domains/enterprise-integration/coordinator.js +39 -148
  389. package/v3/dist/domains/enterprise-integration/coordinator.js.map +1 -1
  390. package/v3/dist/domains/enterprise-integration/plugin.d.ts.map +1 -1
  391. package/v3/dist/domains/enterprise-integration/plugin.js +2 -1
  392. package/v3/dist/domains/enterprise-integration/plugin.js.map +1 -1
  393. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.d.ts.map +1 -1
  394. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.js +7 -5
  395. package/v3/dist/domains/enterprise-integration/services/esb-middleware-service.js.map +1 -1
  396. package/v3/dist/domains/enterprise-integration/services/message-broker-service.d.ts.map +1 -1
  397. package/v3/dist/domains/enterprise-integration/services/message-broker-service.js +11 -9
  398. package/v3/dist/domains/enterprise-integration/services/message-broker-service.js.map +1 -1
  399. package/v3/dist/domains/enterprise-integration/services/odata-service.d.ts.map +1 -1
  400. package/v3/dist/domains/enterprise-integration/services/odata-service.js +4 -3
  401. package/v3/dist/domains/enterprise-integration/services/odata-service.js.map +1 -1
  402. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.d.ts.map +1 -1
  403. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.js +5 -3
  404. package/v3/dist/domains/enterprise-integration/services/sap-integration-service.js.map +1 -1
  405. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.d.ts.map +1 -1
  406. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.js +4 -3
  407. package/v3/dist/domains/enterprise-integration/services/soap-wsdl-service.js.map +1 -1
  408. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.d.ts.map +1 -1
  409. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.js +3 -2
  410. package/v3/dist/domains/enterprise-integration/services/sod-analysis-service.js.map +1 -1
  411. package/v3/dist/domains/learning-optimization/coordinator-consensus.d.ts +37 -0
  412. package/v3/dist/domains/learning-optimization/coordinator-consensus.d.ts.map +1 -0
  413. package/v3/dist/domains/learning-optimization/coordinator-consensus.js +82 -0
  414. package/v3/dist/domains/learning-optimization/coordinator-consensus.js.map +1 -0
  415. package/v3/dist/domains/learning-optimization/coordinator-dream.d.ts +32 -0
  416. package/v3/dist/domains/learning-optimization/coordinator-dream.d.ts.map +1 -0
  417. package/v3/dist/domains/learning-optimization/coordinator-dream.js +43 -0
  418. package/v3/dist/domains/learning-optimization/coordinator-dream.js.map +1 -0
  419. package/v3/dist/domains/learning-optimization/coordinator-helpers.d.ts +56 -0
  420. package/v3/dist/domains/learning-optimization/coordinator-helpers.d.ts.map +1 -0
  421. package/v3/dist/domains/learning-optimization/coordinator-helpers.js +142 -0
  422. package/v3/dist/domains/learning-optimization/coordinator-helpers.js.map +1 -0
  423. package/v3/dist/domains/learning-optimization/coordinator-sona-methods.d.ts +64 -0
  424. package/v3/dist/domains/learning-optimization/coordinator-sona-methods.d.ts.map +1 -0
  425. package/v3/dist/domains/learning-optimization/coordinator-sona-methods.js +73 -0
  426. package/v3/dist/domains/learning-optimization/coordinator-sona-methods.js.map +1 -0
  427. package/v3/dist/domains/learning-optimization/coordinator.d.ts +17 -82
  428. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  429. package/v3/dist/domains/learning-optimization/coordinator.js +36 -320
  430. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  431. package/v3/dist/domains/learning-optimization/plugin.d.ts.map +1 -1
  432. package/v3/dist/domains/learning-optimization/plugin.js +2 -1
  433. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  434. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  435. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +11 -10
  436. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  437. package/v3/dist/domains/learning-optimization/services/metrics-optimizer.d.ts.map +1 -1
  438. package/v3/dist/domains/learning-optimization/services/metrics-optimizer.js +8 -7
  439. package/v3/dist/domains/learning-optimization/services/metrics-optimizer.js.map +1 -1
  440. package/v3/dist/domains/learning-optimization/services/production-intel.d.ts.map +1 -1
  441. package/v3/dist/domains/learning-optimization/services/production-intel.js +11 -10
  442. package/v3/dist/domains/learning-optimization/services/production-intel.js.map +1 -1
  443. package/v3/dist/domains/learning-optimization/services/transfer-specialist.d.ts.map +1 -1
  444. package/v3/dist/domains/learning-optimization/services/transfer-specialist.js +8 -7
  445. package/v3/dist/domains/learning-optimization/services/transfer-specialist.js.map +1 -1
  446. package/v3/dist/domains/quality-assessment/coordinator-claim-verifier.d.ts +41 -0
  447. package/v3/dist/domains/quality-assessment/coordinator-claim-verifier.d.ts.map +1 -0
  448. package/v3/dist/domains/quality-assessment/coordinator-claim-verifier.js +157 -0
  449. package/v3/dist/domains/quality-assessment/coordinator-claim-verifier.js.map +1 -0
  450. package/v3/dist/domains/quality-assessment/coordinator-gate-evaluation.d.ts +26 -0
  451. package/v3/dist/domains/quality-assessment/coordinator-gate-evaluation.d.ts.map +1 -0
  452. package/v3/dist/domains/quality-assessment/coordinator-gate-evaluation.js +135 -0
  453. package/v3/dist/domains/quality-assessment/coordinator-gate-evaluation.js.map +1 -0
  454. package/v3/dist/domains/quality-assessment/coordinator-reports.d.ts +90 -0
  455. package/v3/dist/domains/quality-assessment/coordinator-reports.d.ts.map +1 -0
  456. package/v3/dist/domains/quality-assessment/coordinator-reports.js +265 -0
  457. package/v3/dist/domains/quality-assessment/coordinator-reports.js.map +1 -0
  458. package/v3/dist/domains/quality-assessment/coordinator-rl-integration.d.ts +92 -0
  459. package/v3/dist/domains/quality-assessment/coordinator-rl-integration.d.ts.map +1 -0
  460. package/v3/dist/domains/quality-assessment/coordinator-rl-integration.js +321 -0
  461. package/v3/dist/domains/quality-assessment/coordinator-rl-integration.js.map +1 -0
  462. package/v3/dist/domains/quality-assessment/coordinator.d.ts +18 -127
  463. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  464. package/v3/dist/domains/quality-assessment/coordinator.js +58 -1022
  465. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  466. package/v3/dist/domains/quality-assessment/index.d.ts.map +1 -1
  467. package/v3/dist/domains/quality-assessment/index.js +10 -0
  468. package/v3/dist/domains/quality-assessment/index.js.map +1 -1
  469. package/v3/dist/domains/quality-assessment/plugin.d.ts.map +1 -1
  470. package/v3/dist/domains/quality-assessment/plugin.js +2 -1
  471. package/v3/dist/domains/quality-assessment/plugin.js.map +1 -1
  472. package/v3/dist/domains/quality-assessment/services/coherence-gate.d.ts.map +1 -1
  473. package/v3/dist/domains/quality-assessment/services/coherence-gate.js +2 -1
  474. package/v3/dist/domains/quality-assessment/services/coherence-gate.js.map +1 -1
  475. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  476. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +5 -3
  477. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  478. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  479. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +6 -4
  480. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  481. package/v3/dist/domains/quality-assessment/services/quality-gate.d.ts.map +1 -1
  482. package/v3/dist/domains/quality-assessment/services/quality-gate.js +3 -2
  483. package/v3/dist/domains/quality-assessment/services/quality-gate.js.map +1 -1
  484. package/v3/dist/domains/requirements-validation/coordinator.d.ts +17 -61
  485. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  486. package/v3/dist/domains/requirements-validation/coordinator.js +25 -175
  487. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  488. package/v3/dist/domains/requirements-validation/plugin.d.ts.map +1 -1
  489. package/v3/dist/domains/requirements-validation/plugin.js +2 -1
  490. package/v3/dist/domains/requirements-validation/plugin.js.map +1 -1
  491. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.d.ts.map +1 -1
  492. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.js +12 -11
  493. package/v3/dist/domains/requirements-validation/qcsd-ideation-plugin.js.map +1 -1
  494. package/v3/dist/domains/requirements-validation/qcsd-refinement-plugin.d.ts.map +1 -1
  495. package/v3/dist/domains/requirements-validation/qcsd-refinement-plugin.js +11 -10
  496. package/v3/dist/domains/requirements-validation/qcsd-refinement-plugin.js.map +1 -1
  497. package/v3/dist/domains/requirements-validation/services/bdd-scenario-writer.d.ts.map +1 -1
  498. package/v3/dist/domains/requirements-validation/services/bdd-scenario-writer.js +4 -3
  499. package/v3/dist/domains/requirements-validation/services/bdd-scenario-writer.js.map +1 -1
  500. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.d.ts.map +1 -1
  501. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.js +3 -2
  502. package/v3/dist/domains/requirements-validation/services/product-factors-assessment/code-intelligence/codebase-analyzer.js.map +1 -1
  503. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  504. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +7 -5
  505. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  506. package/v3/dist/domains/requirements-validation/services/testability-scorer.d.ts.map +1 -1
  507. package/v3/dist/domains/requirements-validation/services/testability-scorer.js +4 -3
  508. package/v3/dist/domains/requirements-validation/services/testability-scorer.js.map +1 -1
  509. package/v3/dist/domains/security-compliance/coordinator.d.ts +12 -58
  510. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  511. package/v3/dist/domains/security-compliance/coordinator.js +22 -164
  512. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  513. package/v3/dist/domains/security-compliance/index.d.ts.map +1 -1
  514. package/v3/dist/domains/security-compliance/index.js +14 -0
  515. package/v3/dist/domains/security-compliance/index.js.map +1 -1
  516. package/v3/dist/domains/security-compliance/plugin.d.ts.map +1 -1
  517. package/v3/dist/domains/security-compliance/plugin.js +2 -1
  518. package/v3/dist/domains/security-compliance/plugin.js.map +1 -1
  519. package/v3/dist/domains/security-compliance/services/compliance-validator.d.ts.map +1 -1
  520. package/v3/dist/domains/security-compliance/services/compliance-validator.js +6 -5
  521. package/v3/dist/domains/security-compliance/services/compliance-validator.js.map +1 -1
  522. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.d.ts.map +1 -1
  523. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.js +2 -1
  524. package/v3/dist/domains/security-compliance/services/scanners/dast-helpers.js.map +1 -1
  525. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts +1 -1
  526. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.d.ts.map +1 -1
  527. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.js +4 -3
  528. package/v3/dist/domains/security-compliance/services/scanners/dast-scanner.js.map +1 -1
  529. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.d.ts +1 -1
  530. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.d.ts.map +1 -1
  531. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.js +7 -5
  532. package/v3/dist/domains/security-compliance/services/scanners/dependency-scanner.js.map +1 -1
  533. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.d.ts +2 -2
  534. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.d.ts.map +1 -1
  535. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.js +6 -4
  536. package/v3/dist/domains/security-compliance/services/scanners/sast-scanner.js.map +1 -1
  537. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.d.ts +2 -2
  538. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.d.ts.map +1 -1
  539. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js +3 -2
  540. package/v3/dist/domains/security-compliance/services/scanners/scanner-orchestrator.js.map +1 -1
  541. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.d.ts +2 -2
  542. package/v3/dist/domains/security-compliance/services/scanners/scanner-types.d.ts.map +1 -1
  543. package/v3/dist/domains/security-compliance/services/security-auditor-dast.d.ts +11 -0
  544. package/v3/dist/domains/security-compliance/services/security-auditor-dast.d.ts.map +1 -0
  545. package/v3/dist/domains/security-compliance/services/security-auditor-dast.js +284 -0
  546. package/v3/dist/domains/security-compliance/services/security-auditor-dast.js.map +1 -0
  547. package/v3/dist/domains/security-compliance/services/security-auditor-reports.d.ts +44 -0
  548. package/v3/dist/domains/security-compliance/services/security-auditor-reports.d.ts.map +1 -0
  549. package/v3/dist/domains/security-compliance/services/security-auditor-reports.js +193 -0
  550. package/v3/dist/domains/security-compliance/services/security-auditor-reports.js.map +1 -0
  551. package/v3/dist/domains/security-compliance/services/security-auditor-sast.d.ts +27 -0
  552. package/v3/dist/domains/security-compliance/services/security-auditor-sast.d.ts.map +1 -0
  553. package/v3/dist/domains/security-compliance/services/security-auditor-sast.js +279 -0
  554. package/v3/dist/domains/security-compliance/services/security-auditor-sast.js.map +1 -0
  555. package/v3/dist/domains/security-compliance/services/security-auditor-secrets.d.ts +34 -0
  556. package/v3/dist/domains/security-compliance/services/security-auditor-secrets.d.ts.map +1 -0
  557. package/v3/dist/domains/security-compliance/services/security-auditor-secrets.js +236 -0
  558. package/v3/dist/domains/security-compliance/services/security-auditor-secrets.js.map +1 -0
  559. package/v3/dist/domains/security-compliance/services/security-auditor-types.d.ts +93 -0
  560. package/v3/dist/domains/security-compliance/services/security-auditor-types.d.ts.map +1 -0
  561. package/v3/dist/domains/security-compliance/services/security-auditor-types.js +50 -0
  562. package/v3/dist/domains/security-compliance/services/security-auditor-types.js.map +1 -0
  563. package/v3/dist/domains/security-compliance/services/security-auditor.d.ts +12 -132
  564. package/v3/dist/domains/security-compliance/services/security-auditor.d.ts.map +1 -1
  565. package/v3/dist/domains/security-compliance/services/security-auditor.js +71 -1188
  566. package/v3/dist/domains/security-compliance/services/security-auditor.js.map +1 -1
  567. package/v3/dist/domains/security-compliance/services/semgrep-integration.d.ts.map +1 -1
  568. package/v3/dist/domains/security-compliance/services/semgrep-integration.js +4 -2
  569. package/v3/dist/domains/security-compliance/services/semgrep-integration.js.map +1 -1
  570. package/v3/dist/domains/test-execution/coordinator.d.ts +8 -60
  571. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  572. package/v3/dist/domains/test-execution/coordinator.js +19 -132
  573. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  574. package/v3/dist/domains/test-execution/services/auth-state-manager.d.ts.map +1 -1
  575. package/v3/dist/domains/test-execution/services/auth-state-manager.js +2 -1
  576. package/v3/dist/domains/test-execution/services/auth-state-manager.js.map +1 -1
  577. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.d.ts +2 -2
  578. package/v3/dist/domains/test-execution/services/e2e/assertion-handlers.d.ts.map +1 -1
  579. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts +2 -2
  580. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.d.ts.map +1 -1
  581. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.js +2 -1
  582. package/v3/dist/domains/test-execution/services/e2e/browser-orchestrator.js.map +1 -1
  583. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.d.ts +2 -2
  584. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.d.ts.map +1 -1
  585. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.js +3 -2
  586. package/v3/dist/domains/test-execution/services/e2e/e2e-coordinator.js.map +1 -1
  587. package/v3/dist/domains/test-execution/services/e2e/result-collector.d.ts +1 -1
  588. package/v3/dist/domains/test-execution/services/e2e/result-collector.d.ts.map +1 -1
  589. package/v3/dist/domains/test-execution/services/e2e/step-executors.d.ts.map +1 -1
  590. package/v3/dist/domains/test-execution/services/e2e/step-executors.js +2 -1
  591. package/v3/dist/domains/test-execution/services/e2e/step-executors.js.map +1 -1
  592. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.d.ts.map +1 -1
  593. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.js +3 -2
  594. package/v3/dist/domains/test-execution/services/e2e/step-retry-handler.js.map +1 -1
  595. package/v3/dist/domains/test-execution/services/e2e/types.d.ts +2 -2
  596. package/v3/dist/domains/test-execution/services/e2e/types.d.ts.map +1 -1
  597. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.d.ts +1 -1
  598. package/v3/dist/domains/test-execution/services/e2e/wait-condition-handler.d.ts.map +1 -1
  599. package/v3/dist/domains/test-execution/services/flaky-detector.d.ts.map +1 -1
  600. package/v3/dist/domains/test-execution/services/flaky-detector.js +7 -5
  601. package/v3/dist/domains/test-execution/services/flaky-detector.js.map +1 -1
  602. package/v3/dist/domains/test-execution/services/retry-handler.d.ts.map +1 -1
  603. package/v3/dist/domains/test-execution/services/retry-handler.js +8 -6
  604. package/v3/dist/domains/test-execution/services/retry-handler.js.map +1 -1
  605. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  606. package/v3/dist/domains/test-execution/services/test-executor.js +8 -6
  607. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  608. package/v3/dist/domains/test-execution/services/test-prioritizer.d.ts.map +1 -1
  609. package/v3/dist/domains/test-execution/services/test-prioritizer.js +2 -1
  610. package/v3/dist/domains/test-execution/services/test-prioritizer.js.map +1 -1
  611. package/v3/dist/domains/test-execution/services/user-flow-generator.d.ts +28 -0
  612. package/v3/dist/domains/test-execution/services/user-flow-generator.d.ts.map +1 -1
  613. package/v3/dist/domains/test-execution/services/user-flow-generator.js +156 -189
  614. package/v3/dist/domains/test-execution/services/user-flow-generator.js.map +1 -1
  615. package/v3/dist/domains/test-generation/coordinator.d.ts +14 -78
  616. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  617. package/v3/dist/domains/test-generation/coordinator.js +58 -202
  618. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  619. package/v3/dist/domains/test-generation/generators/base-test-generator.d.ts +10 -0
  620. package/v3/dist/domains/test-generation/generators/base-test-generator.d.ts.map +1 -1
  621. package/v3/dist/domains/test-generation/generators/base-test-generator.js +37 -30
  622. package/v3/dist/domains/test-generation/generators/base-test-generator.js.map +1 -1
  623. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.d.ts.map +1 -1
  624. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js +58 -6
  625. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js.map +1 -1
  626. package/v3/dist/domains/test-generation/generators/mocha-generator.d.ts.map +1 -1
  627. package/v3/dist/domains/test-generation/generators/mocha-generator.js +79 -7
  628. package/v3/dist/domains/test-generation/generators/mocha-generator.js.map +1 -1
  629. package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts +4 -0
  630. package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts.map +1 -1
  631. package/v3/dist/domains/test-generation/generators/pytest-generator.js +77 -10
  632. package/v3/dist/domains/test-generation/generators/pytest-generator.js.map +1 -1
  633. package/v3/dist/domains/test-generation/index.d.ts.map +1 -1
  634. package/v3/dist/domains/test-generation/index.js +10 -0
  635. package/v3/dist/domains/test-generation/index.js.map +1 -1
  636. package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts +21 -0
  637. package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts.map +1 -1
  638. package/v3/dist/domains/test-generation/interfaces.d.ts +21 -0
  639. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  640. package/v3/dist/domains/test-generation/plugin.d.ts.map +1 -1
  641. package/v3/dist/domains/test-generation/plugin.js +2 -1
  642. package/v3/dist/domains/test-generation/plugin.js.map +1 -1
  643. package/v3/dist/domains/test-generation/services/code-transform-integration.d.ts.map +1 -1
  644. package/v3/dist/domains/test-generation/services/code-transform-integration.js +2 -1
  645. package/v3/dist/domains/test-generation/services/code-transform-integration.js.map +1 -1
  646. package/v3/dist/domains/test-generation/services/pattern-matcher.d.ts +10 -0
  647. package/v3/dist/domains/test-generation/services/pattern-matcher.d.ts.map +1 -1
  648. package/v3/dist/domains/test-generation/services/pattern-matcher.js +43 -41
  649. package/v3/dist/domains/test-generation/services/pattern-matcher.js.map +1 -1
  650. package/v3/dist/domains/test-generation/services/test-generator.d.ts +22 -0
  651. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  652. package/v3/dist/domains/test-generation/services/test-generator.js +210 -20
  653. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  654. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +17 -60
  655. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  656. package/v3/dist/domains/visual-accessibility/coordinator.js +32 -183
  657. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  658. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  659. package/v3/dist/domains/visual-accessibility/plugin.js +4 -3
  660. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  661. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-browser.d.ts +114 -0
  662. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-browser.d.ts.map +1 -0
  663. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-browser.js +578 -0
  664. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-browser.js.map +1 -0
  665. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-heuristics.d.ts +54 -0
  666. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-heuristics.d.ts.map +1 -0
  667. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-heuristics.js +403 -0
  668. package/v3/dist/domains/visual-accessibility/services/accessibility-tester-heuristics.js.map +1 -0
  669. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts +1 -314
  670. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts.map +1 -1
  671. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js +79 -1467
  672. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js.map +1 -1
  673. package/v3/dist/domains/visual-accessibility/services/axe-core-audit.d.ts.map +1 -1
  674. package/v3/dist/domains/visual-accessibility/services/axe-core-audit.js +2 -1
  675. package/v3/dist/domains/visual-accessibility/services/axe-core-audit.js.map +1 -1
  676. package/v3/dist/domains/visual-accessibility/services/axe-core-integration.d.ts.map +1 -1
  677. package/v3/dist/domains/visual-accessibility/services/axe-core-integration.js +5 -4
  678. package/v3/dist/domains/visual-accessibility/services/axe-core-integration.js.map +1 -1
  679. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.d.ts.map +1 -1
  680. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.js +5 -4
  681. package/v3/dist/domains/visual-accessibility/services/browser-security-scanner.js.map +1 -1
  682. package/v3/dist/domains/visual-accessibility/services/browser-swarm-coordinator.d.ts.map +1 -1
  683. package/v3/dist/domains/visual-accessibility/services/browser-swarm-coordinator.js +8 -7
  684. package/v3/dist/domains/visual-accessibility/services/browser-swarm-coordinator.js.map +1 -1
  685. package/v3/dist/domains/visual-accessibility/services/eu-compliance.d.ts.map +1 -1
  686. package/v3/dist/domains/visual-accessibility/services/eu-compliance.js +2 -1
  687. package/v3/dist/domains/visual-accessibility/services/eu-compliance.js.map +1 -1
  688. package/v3/dist/domains/visual-accessibility/services/responsive-tester.d.ts.map +1 -1
  689. package/v3/dist/domains/visual-accessibility/services/responsive-tester.js +5 -4
  690. package/v3/dist/domains/visual-accessibility/services/responsive-tester.js.map +1 -1
  691. package/v3/dist/domains/visual-accessibility/services/viewport-capture.d.ts.map +1 -1
  692. package/v3/dist/domains/visual-accessibility/services/viewport-capture.js +7 -6
  693. package/v3/dist/domains/visual-accessibility/services/viewport-capture.js.map +1 -1
  694. package/v3/dist/domains/visual-accessibility/services/visual-regression.d.ts.map +1 -1
  695. package/v3/dist/domains/visual-accessibility/services/visual-regression.js +11 -10
  696. package/v3/dist/domains/visual-accessibility/services/visual-regression.js.map +1 -1
  697. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  698. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +7 -6
  699. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  700. package/v3/dist/early-exit/early-exit-controller.d.ts.map +1 -1
  701. package/v3/dist/early-exit/early-exit-controller.js +4 -3
  702. package/v3/dist/early-exit/early-exit-controller.js.map +1 -1
  703. package/v3/dist/feedback/coverage-learner.d.ts.map +1 -1
  704. package/v3/dist/feedback/coverage-learner.js +7 -5
  705. package/v3/dist/feedback/coverage-learner.js.map +1 -1
  706. package/v3/dist/feedback/test-outcome-tracker.d.ts.map +1 -1
  707. package/v3/dist/feedback/test-outcome-tracker.js +6 -4
  708. package/v3/dist/feedback/test-outcome-tracker.js.map +1 -1
  709. package/v3/dist/governance/adversarial-defense-integration.d.ts +0 -18
  710. package/v3/dist/governance/adversarial-defense-integration.d.ts.map +1 -1
  711. package/v3/dist/governance/adversarial-defense-integration.js +2 -1
  712. package/v3/dist/governance/adversarial-defense-integration.js.map +1 -1
  713. package/v3/dist/governance/compliance-reporter.d.ts +0 -16
  714. package/v3/dist/governance/compliance-reporter.d.ts.map +1 -1
  715. package/v3/dist/governance/compliance-reporter.js +6 -8
  716. package/v3/dist/governance/compliance-reporter.js.map +1 -1
  717. package/v3/dist/governance/continue-gate-integration.d.ts.map +1 -1
  718. package/v3/dist/governance/continue-gate-integration.js +3 -2
  719. package/v3/dist/governance/continue-gate-integration.js.map +1 -1
  720. package/v3/dist/governance/evolution-pipeline-integration.d.ts.map +1 -1
  721. package/v3/dist/governance/evolution-pipeline-integration.js +3 -2
  722. package/v3/dist/governance/evolution-pipeline-integration.js.map +1 -1
  723. package/v3/dist/governance/proof-envelope-integration.d.ts.map +1 -1
  724. package/v3/dist/governance/proof-envelope-integration.js +4 -4
  725. package/v3/dist/governance/proof-envelope-integration.js.map +1 -1
  726. package/v3/dist/governance/shard-embeddings.d.ts.map +1 -1
  727. package/v3/dist/governance/shard-embeddings.js +16 -2
  728. package/v3/dist/governance/shard-embeddings.js.map +1 -1
  729. package/v3/dist/governance/shard-retriever-integration.d.ts.map +1 -1
  730. package/v3/dist/governance/shard-retriever-integration.js +4 -3
  731. package/v3/dist/governance/shard-retriever-integration.js.map +1 -1
  732. package/v3/dist/governance/wasm-kernel-integration.d.ts.map +1 -1
  733. package/v3/dist/governance/wasm-kernel-integration.js +4 -2
  734. package/v3/dist/governance/wasm-kernel-integration.js.map +1 -1
  735. package/v3/dist/hooks/reasoning-bank-pattern-store.d.ts.map +1 -1
  736. package/v3/dist/hooks/reasoning-bank-pattern-store.js +3 -2
  737. package/v3/dist/hooks/reasoning-bank-pattern-store.js.map +1 -1
  738. package/v3/dist/hooks/task-completed-hook.d.ts.map +1 -1
  739. package/v3/dist/hooks/task-completed-hook.js +3 -2
  740. package/v3/dist/hooks/task-completed-hook.js.map +1 -1
  741. package/v3/dist/init/agents-installer.d.ts.map +1 -1
  742. package/v3/dist/init/agents-installer.js +2 -1
  743. package/v3/dist/init/agents-installer.js.map +1 -1
  744. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -1
  745. package/v3/dist/init/enhancements/claude-flow-adapter.js +3 -2
  746. package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -1
  747. package/v3/dist/init/fleet-integration.d.ts.map +1 -1
  748. package/v3/dist/init/fleet-integration.js +2 -1
  749. package/v3/dist/init/fleet-integration.js.map +1 -1
  750. package/v3/dist/init/governance-installer.d.ts.map +1 -1
  751. package/v3/dist/init/governance-installer.js +5 -4
  752. package/v3/dist/init/governance-installer.js.map +1 -1
  753. package/v3/dist/init/init-wizard-hooks.d.ts +26 -0
  754. package/v3/dist/init/init-wizard-hooks.d.ts.map +1 -0
  755. package/v3/dist/init/init-wizard-hooks.js +555 -0
  756. package/v3/dist/init/init-wizard-hooks.js.map +1 -0
  757. package/v3/dist/init/init-wizard-migration.d.ts +52 -0
  758. package/v3/dist/init/init-wizard-migration.d.ts.map +1 -0
  759. package/v3/dist/init/init-wizard-migration.js +349 -0
  760. package/v3/dist/init/init-wizard-migration.js.map +1 -0
  761. package/v3/dist/init/init-wizard-steps.d.ts +68 -0
  762. package/v3/dist/init/init-wizard-steps.d.ts.map +1 -0
  763. package/v3/dist/init/init-wizard-steps.js +457 -0
  764. package/v3/dist/init/init-wizard-steps.js.map +1 -0
  765. package/v3/dist/init/init-wizard.d.ts +8 -130
  766. package/v3/dist/init/init-wizard.d.ts.map +1 -1
  767. package/v3/dist/init/init-wizard.js +108 -1528
  768. package/v3/dist/init/init-wizard.js.map +1 -1
  769. package/v3/dist/init/migration/config-migrator.d.ts.map +1 -1
  770. package/v3/dist/init/migration/config-migrator.js +2 -1
  771. package/v3/dist/init/migration/config-migrator.js.map +1 -1
  772. package/v3/dist/init/migration/data-migrator.d.ts.map +1 -1
  773. package/v3/dist/init/migration/data-migrator.js +5 -3
  774. package/v3/dist/init/migration/data-migrator.js.map +1 -1
  775. package/v3/dist/init/migration/detector.d.ts.map +1 -1
  776. package/v3/dist/init/migration/detector.js +2 -1
  777. package/v3/dist/init/migration/detector.js.map +1 -1
  778. package/v3/dist/init/n8n-installer.d.ts.map +1 -1
  779. package/v3/dist/init/n8n-installer.js +4 -3
  780. package/v3/dist/init/n8n-installer.js.map +1 -1
  781. package/v3/dist/init/orchestrator.d.ts.map +1 -1
  782. package/v3/dist/init/orchestrator.js +2 -1
  783. package/v3/dist/init/orchestrator.js.map +1 -1
  784. package/v3/dist/init/phases/01-detection.d.ts.map +1 -1
  785. package/v3/dist/init/phases/01-detection.js +2 -1
  786. package/v3/dist/init/phases/01-detection.js.map +1 -1
  787. package/v3/dist/init/phases/06-code-intelligence.d.ts.map +1 -1
  788. package/v3/dist/init/phases/06-code-intelligence.js +2 -1
  789. package/v3/dist/init/phases/06-code-intelligence.js.map +1 -1
  790. package/v3/dist/init/phases/07-hooks.d.ts.map +1 -1
  791. package/v3/dist/init/phases/07-hooks.js +2 -1
  792. package/v3/dist/init/phases/07-hooks.js.map +1 -1
  793. package/v3/dist/init/phases/08-mcp.d.ts.map +1 -1
  794. package/v3/dist/init/phases/08-mcp.js +3 -2
  795. package/v3/dist/init/phases/08-mcp.js.map +1 -1
  796. package/v3/dist/init/phases/phase-interface.d.ts.map +1 -1
  797. package/v3/dist/init/phases/phase-interface.js +3 -2
  798. package/v3/dist/init/phases/phase-interface.js.map +1 -1
  799. package/v3/dist/init/project-analyzer.d.ts.map +1 -1
  800. package/v3/dist/init/project-analyzer.js +3 -2
  801. package/v3/dist/init/project-analyzer.js.map +1 -1
  802. package/v3/dist/init/skills-installer.d.ts.map +1 -1
  803. package/v3/dist/init/skills-installer.js +2 -1
  804. package/v3/dist/init/skills-installer.js.map +1 -1
  805. package/v3/dist/integrations/agent-booster-wasm/index.d.ts.map +1 -1
  806. package/v3/dist/integrations/agent-booster-wasm/index.js +4 -1
  807. package/v3/dist/integrations/agent-booster-wasm/index.js.map +1 -1
  808. package/v3/dist/integrations/agentic-flow/metrics/pattern-updater.d.ts.map +1 -1
  809. package/v3/dist/integrations/agentic-flow/metrics/pattern-updater.js +6 -4
  810. package/v3/dist/integrations/agentic-flow/metrics/pattern-updater.js.map +1 -1
  811. package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.d.ts.map +1 -1
  812. package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.js +10 -0
  813. package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.js.map +1 -1
  814. package/v3/dist/integrations/agentic-flow/pattern-loader.d.ts.map +1 -1
  815. package/v3/dist/integrations/agentic-flow/pattern-loader.js +4 -2
  816. package/v3/dist/integrations/agentic-flow/pattern-loader.js.map +1 -1
  817. package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.d.ts.map +1 -1
  818. package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js +4 -3
  819. package/v3/dist/integrations/agentic-flow/reasoning-bank/experience-replay.js.map +1 -1
  820. package/v3/dist/integrations/agentic-flow/reasoning-bank/index.d.ts.map +1 -1
  821. package/v3/dist/integrations/agentic-flow/reasoning-bank/index.js +2 -1
  822. package/v3/dist/integrations/agentic-flow/reasoning-bank/index.js.map +1 -1
  823. package/v3/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.d.ts.map +1 -1
  824. package/v3/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.js +6 -5
  825. package/v3/dist/integrations/agentic-flow/reasoning-bank/pattern-evolution.js.map +1 -1
  826. package/v3/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.d.ts.map +1 -1
  827. package/v3/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.js +7 -6
  828. package/v3/dist/integrations/agentic-flow/reasoning-bank/trajectory-tracker.js.map +1 -1
  829. package/v3/dist/integrations/browser/agent-browser/client.d.ts.map +1 -1
  830. package/v3/dist/integrations/browser/agent-browser/client.js +33 -31
  831. package/v3/dist/integrations/browser/agent-browser/client.js.map +1 -1
  832. package/v3/dist/integrations/browser/agent-browser/command-executor.d.ts.map +1 -1
  833. package/v3/dist/integrations/browser/agent-browser/command-executor.js +42 -22
  834. package/v3/dist/integrations/browser/agent-browser/command-executor.js.map +1 -1
  835. package/v3/dist/integrations/browser/agent-browser/snapshot-parser.d.ts.map +1 -1
  836. package/v3/dist/integrations/browser/agent-browser/snapshot-parser.js +2 -1
  837. package/v3/dist/integrations/browser/agent-browser/snapshot-parser.js.map +1 -1
  838. package/v3/dist/integrations/browser/web-content-fetcher.d.ts.map +1 -1
  839. package/v3/dist/integrations/browser/web-content-fetcher.js +4 -2
  840. package/v3/dist/integrations/browser/web-content-fetcher.js.map +1 -1
  841. package/v3/dist/integrations/coherence/coherence-service.d.ts.map +1 -1
  842. package/v3/dist/integrations/coherence/coherence-service.js +4 -3
  843. package/v3/dist/integrations/coherence/coherence-service.js.map +1 -1
  844. package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts.map +1 -1
  845. package/v3/dist/integrations/coherence/engines/spectral-adapter.js +4 -3
  846. package/v3/dist/integrations/coherence/engines/spectral-adapter.js.map +1 -1
  847. package/v3/dist/integrations/coherence/wasm-loader.d.ts.map +1 -1
  848. package/v3/dist/integrations/coherence/wasm-loader.js +4 -3
  849. package/v3/dist/integrations/coherence/wasm-loader.js.map +1 -1
  850. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.d.ts +6 -0
  851. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.d.ts.map +1 -1
  852. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js +35 -6
  853. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js.map +1 -1
  854. package/v3/dist/integrations/n8n/agent-factory.d.ts.map +1 -1
  855. package/v3/dist/integrations/n8n/agent-factory.js +2 -1
  856. package/v3/dist/integrations/n8n/agent-factory.js.map +1 -1
  857. package/v3/dist/integrations/rl-suite/base-algorithm.d.ts.map +1 -1
  858. package/v3/dist/integrations/rl-suite/base-algorithm.js +8 -3
  859. package/v3/dist/integrations/rl-suite/base-algorithm.js.map +1 -1
  860. package/v3/dist/integrations/rl-suite/persistence/q-value-store.d.ts.map +1 -1
  861. package/v3/dist/integrations/rl-suite/persistence/q-value-store.js +2 -1
  862. package/v3/dist/integrations/rl-suite/persistence/q-value-store.js.map +1 -1
  863. package/v3/dist/integrations/ruvector/ast-complexity.d.ts.map +1 -1
  864. package/v3/dist/integrations/ruvector/ast-complexity.js +3 -2
  865. package/v3/dist/integrations/ruvector/ast-complexity.js.map +1 -1
  866. package/v3/dist/integrations/ruvector/attention-wrapper.d.ts.map +1 -1
  867. package/v3/dist/integrations/ruvector/attention-wrapper.js +2 -1
  868. package/v3/dist/integrations/ruvector/attention-wrapper.js.map +1 -1
  869. package/v3/dist/integrations/ruvector/coverage-router.d.ts.map +1 -1
  870. package/v3/dist/integrations/ruvector/coverage-router.js +3 -2
  871. package/v3/dist/integrations/ruvector/coverage-router.js.map +1 -1
  872. package/v3/dist/integrations/ruvector/diff-risk-classifier.d.ts.map +1 -1
  873. package/v3/dist/integrations/ruvector/diff-risk-classifier.js +3 -2
  874. package/v3/dist/integrations/ruvector/diff-risk-classifier.js.map +1 -1
  875. package/v3/dist/integrations/ruvector/gnn-wrapper.d.ts.map +1 -1
  876. package/v3/dist/integrations/ruvector/gnn-wrapper.js +2 -1
  877. package/v3/dist/integrations/ruvector/gnn-wrapper.js.map +1 -1
  878. package/v3/dist/integrations/ruvector/graph-boundaries.d.ts.map +1 -1
  879. package/v3/dist/integrations/ruvector/graph-boundaries.js +3 -2
  880. package/v3/dist/integrations/ruvector/graph-boundaries.js.map +1 -1
  881. package/v3/dist/integrations/ruvector/hypergraph-engine.d.ts.map +1 -1
  882. package/v3/dist/integrations/ruvector/hypergraph-engine.js +68 -67
  883. package/v3/dist/integrations/ruvector/hypergraph-engine.js.map +1 -1
  884. package/v3/dist/integrations/ruvector/hypergraph-schema.d.ts.map +1 -1
  885. package/v3/dist/integrations/ruvector/hypergraph-schema.js +3 -2
  886. package/v3/dist/integrations/ruvector/hypergraph-schema.js.map +1 -1
  887. package/v3/dist/integrations/ruvector/persistent-q-router.d.ts.map +1 -1
  888. package/v3/dist/integrations/ruvector/persistent-q-router.js +35 -11
  889. package/v3/dist/integrations/ruvector/persistent-q-router.js.map +1 -1
  890. package/v3/dist/integrations/ruvector/q-learning-router.d.ts.map +1 -1
  891. package/v3/dist/integrations/ruvector/q-learning-router.js +3 -2
  892. package/v3/dist/integrations/ruvector/q-learning-router.js.map +1 -1
  893. package/v3/dist/integrations/ruvector/server-client.d.ts.map +1 -1
  894. package/v3/dist/integrations/ruvector/server-client.js +23 -10
  895. package/v3/dist/integrations/ruvector/server-client.js.map +1 -1
  896. package/v3/dist/integrations/ruvector/sona-persistence.d.ts.map +1 -1
  897. package/v3/dist/integrations/ruvector/sona-persistence.js +11 -6
  898. package/v3/dist/integrations/ruvector/sona-persistence.js.map +1 -1
  899. package/v3/dist/integrations/vibium/client.d.ts.map +1 -1
  900. package/v3/dist/integrations/vibium/client.js +11 -10
  901. package/v3/dist/integrations/vibium/client.js.map +1 -1
  902. package/v3/dist/kernel/anti-drift-middleware.d.ts.map +1 -1
  903. package/v3/dist/kernel/anti-drift-middleware.js +8 -3
  904. package/v3/dist/kernel/anti-drift-middleware.js.map +1 -1
  905. package/v3/dist/kernel/hybrid-backend.d.ts.map +1 -1
  906. package/v3/dist/kernel/hybrid-backend.js +4 -0
  907. package/v3/dist/kernel/hybrid-backend.js.map +1 -1
  908. package/v3/dist/kernel/index.d.ts +1 -1
  909. package/v3/dist/kernel/index.d.ts.map +1 -1
  910. package/v3/dist/kernel/index.js +1 -1
  911. package/v3/dist/kernel/index.js.map +1 -1
  912. package/v3/dist/kernel/kernel.d.ts +5 -0
  913. package/v3/dist/kernel/kernel.d.ts.map +1 -1
  914. package/v3/dist/kernel/kernel.js +42 -29
  915. package/v3/dist/kernel/kernel.js.map +1 -1
  916. package/v3/dist/kernel/memory-factory.d.ts.map +1 -1
  917. package/v3/dist/kernel/memory-factory.js +12 -4
  918. package/v3/dist/kernel/memory-factory.js.map +1 -1
  919. package/v3/dist/kernel/plugin-loader.d.ts.map +1 -1
  920. package/v3/dist/kernel/plugin-loader.js +4 -1
  921. package/v3/dist/kernel/plugin-loader.js.map +1 -1
  922. package/v3/dist/kernel/unified-memory-hnsw.d.ts +130 -0
  923. package/v3/dist/kernel/unified-memory-hnsw.d.ts.map +1 -0
  924. package/v3/dist/kernel/unified-memory-hnsw.js +547 -0
  925. package/v3/dist/kernel/unified-memory-hnsw.js.map +1 -0
  926. package/v3/dist/kernel/unified-memory-migration.d.ts.map +1 -1
  927. package/v3/dist/kernel/unified-memory-migration.js +14 -15
  928. package/v3/dist/kernel/unified-memory-migration.js.map +1 -1
  929. package/v3/dist/kernel/unified-memory-schemas.d.ts +21 -0
  930. package/v3/dist/kernel/unified-memory-schemas.d.ts.map +1 -0
  931. package/v3/dist/kernel/unified-memory-schemas.js +581 -0
  932. package/v3/dist/kernel/unified-memory-schemas.js.map +1 -0
  933. package/v3/dist/kernel/unified-memory.d.ts +14 -198
  934. package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
  935. package/v3/dist/kernel/unified-memory.js +117 -1388
  936. package/v3/dist/kernel/unified-memory.js.map +1 -1
  937. package/v3/dist/kernel/unified-persistence.d.ts.map +1 -1
  938. package/v3/dist/kernel/unified-persistence.js +6 -4
  939. package/v3/dist/kernel/unified-persistence.js.map +1 -1
  940. package/v3/dist/learning/aqe-learning-engine.d.ts.map +1 -1
  941. package/v3/dist/learning/aqe-learning-engine.js +11 -9
  942. package/v3/dist/learning/aqe-learning-engine.js.map +1 -1
  943. package/v3/dist/learning/dream/concept-graph.d.ts.map +1 -1
  944. package/v3/dist/learning/dream/concept-graph.js +6 -4
  945. package/v3/dist/learning/dream/concept-graph.js.map +1 -1
  946. package/v3/dist/learning/dream/dream-engine.d.ts +8 -0
  947. package/v3/dist/learning/dream/dream-engine.d.ts.map +1 -1
  948. package/v3/dist/learning/dream/dream-engine.js +35 -5
  949. package/v3/dist/learning/dream/dream-engine.js.map +1 -1
  950. package/v3/dist/learning/dream/dream-scheduler.d.ts.map +1 -1
  951. package/v3/dist/learning/dream/dream-scheduler.js +34 -22
  952. package/v3/dist/learning/dream/dream-scheduler.js.map +1 -1
  953. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -1
  954. package/v3/dist/learning/experience-capture-middleware.js +2 -1
  955. package/v3/dist/learning/experience-capture-middleware.js.map +1 -1
  956. package/v3/dist/learning/experience-capture.d.ts.map +1 -1
  957. package/v3/dist/learning/experience-capture.js +4 -1
  958. package/v3/dist/learning/experience-capture.js.map +1 -1
  959. package/v3/dist/learning/memory-auditor.d.ts.map +1 -1
  960. package/v3/dist/learning/memory-auditor.js +3 -2
  961. package/v3/dist/learning/memory-auditor.js.map +1 -1
  962. package/v3/dist/learning/metrics-tracker.d.ts.map +1 -1
  963. package/v3/dist/learning/metrics-tracker.js +6 -2
  964. package/v3/dist/learning/metrics-tracker.js.map +1 -1
  965. package/v3/dist/learning/pattern-lifecycle.d.ts.map +1 -1
  966. package/v3/dist/learning/pattern-lifecycle.js +11 -5
  967. package/v3/dist/learning/pattern-lifecycle.js.map +1 -1
  968. package/v3/dist/learning/pattern-store.d.ts +7 -0
  969. package/v3/dist/learning/pattern-store.d.ts.map +1 -1
  970. package/v3/dist/learning/pattern-store.js +32 -4
  971. package/v3/dist/learning/pattern-store.js.map +1 -1
  972. package/v3/dist/learning/qe-hooks.d.ts.map +1 -1
  973. package/v3/dist/learning/qe-hooks.js +89 -13
  974. package/v3/dist/learning/qe-hooks.js.map +1 -1
  975. package/v3/dist/learning/qe-reasoning-bank.d.ts +13 -0
  976. package/v3/dist/learning/qe-reasoning-bank.d.ts.map +1 -1
  977. package/v3/dist/learning/qe-reasoning-bank.js +64 -24
  978. package/v3/dist/learning/qe-reasoning-bank.js.map +1 -1
  979. package/v3/dist/learning/qe-unified-memory.d.ts.map +1 -1
  980. package/v3/dist/learning/qe-unified-memory.js +31 -21
  981. package/v3/dist/learning/qe-unified-memory.js.map +1 -1
  982. package/v3/dist/learning/real-embeddings.d.ts.map +1 -1
  983. package/v3/dist/learning/real-embeddings.js +2 -1
  984. package/v3/dist/learning/real-embeddings.js.map +1 -1
  985. package/v3/dist/learning/real-qe-reasoning-bank.d.ts.map +1 -1
  986. package/v3/dist/learning/real-qe-reasoning-bank.js +47 -34
  987. package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
  988. package/v3/dist/learning/skill-validation-learner.d.ts.map +1 -1
  989. package/v3/dist/learning/skill-validation-learner.js +21 -12
  990. package/v3/dist/learning/skill-validation-learner.js.map +1 -1
  991. package/v3/dist/learning/sqlite-persistence.d.ts +9 -0
  992. package/v3/dist/learning/sqlite-persistence.d.ts.map +1 -1
  993. package/v3/dist/learning/sqlite-persistence.js +65 -6
  994. package/v3/dist/learning/sqlite-persistence.js.map +1 -1
  995. package/v3/dist/learning/token-tracker.d.ts.map +1 -1
  996. package/v3/dist/learning/token-tracker.js +4 -2
  997. package/v3/dist/learning/token-tracker.js.map +1 -1
  998. package/v3/dist/learning/v2-to-v3-migration.d.ts.map +1 -1
  999. package/v3/dist/learning/v2-to-v3-migration.js +9 -4
  1000. package/v3/dist/learning/v2-to-v3-migration.js.map +1 -1
  1001. package/v3/dist/mcp/bundle.js +15756 -14023
  1002. package/v3/dist/mcp/handlers/agent-handlers.d.ts.map +1 -1
  1003. package/v3/dist/mcp/handlers/agent-handlers.js +5 -4
  1004. package/v3/dist/mcp/handlers/agent-handlers.js.map +1 -1
  1005. package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
  1006. package/v3/dist/mcp/handlers/core-handlers.js +4 -3
  1007. package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
  1008. package/v3/dist/mcp/handlers/handler-factory.d.ts.map +1 -1
  1009. package/v3/dist/mcp/handlers/handler-factory.js +12 -3
  1010. package/v3/dist/mcp/handlers/handler-factory.js.map +1 -1
  1011. package/v3/dist/mcp/handlers/memory-handlers.d.ts.map +1 -1
  1012. package/v3/dist/mcp/handlers/memory-handlers.js +8 -8
  1013. package/v3/dist/mcp/handlers/memory-handlers.js.map +1 -1
  1014. package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
  1015. package/v3/dist/mcp/handlers/task-handlers.js +11 -10
  1016. package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
  1017. package/v3/dist/mcp/http-server.js +1 -1
  1018. package/v3/dist/mcp/http-server.js.map +1 -1
  1019. package/v3/dist/mcp/security/index.d.ts +2 -6
  1020. package/v3/dist/mcp/security/index.d.ts.map +1 -1
  1021. package/v3/dist/mcp/security/index.js +2 -2
  1022. package/v3/dist/mcp/security/index.js.map +1 -1
  1023. package/v3/dist/mcp/security/oauth21-provider.d.ts +7 -0
  1024. package/v3/dist/mcp/security/oauth21-provider.d.ts.map +1 -1
  1025. package/v3/dist/mcp/security/oauth21-provider.js +15 -3
  1026. package/v3/dist/mcp/security/oauth21-provider.js.map +1 -1
  1027. package/v3/dist/mcp/server.d.ts.map +1 -1
  1028. package/v3/dist/mcp/server.js +10 -24
  1029. package/v3/dist/mcp/server.js.map +1 -1
  1030. package/v3/dist/mcp/tool-registry.d.ts.map +1 -1
  1031. package/v3/dist/mcp/tool-registry.js +2 -1
  1032. package/v3/dist/mcp/tool-registry.js.map +1 -1
  1033. package/v3/dist/mcp/tools/analysis/token-usage.d.ts.map +1 -1
  1034. package/v3/dist/mcp/tools/analysis/token-usage.js +2 -1
  1035. package/v3/dist/mcp/tools/analysis/token-usage.js.map +1 -1
  1036. package/v3/dist/mcp/tools/base.d.ts.map +1 -1
  1037. package/v3/dist/mcp/tools/base.js +2 -1
  1038. package/v3/dist/mcp/tools/base.js.map +1 -1
  1039. package/v3/dist/mcp/tools/chaos-resilience/inject.d.ts.map +1 -1
  1040. package/v3/dist/mcp/tools/chaos-resilience/inject.js +2 -1
  1041. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  1042. package/v3/dist/mcp/tools/code-intelligence/analyze.d.ts.map +1 -1
  1043. package/v3/dist/mcp/tools/code-intelligence/analyze.js +2 -1
  1044. package/v3/dist/mcp/tools/code-intelligence/analyze.js.map +1 -1
  1045. package/v3/dist/mcp/tools/coherence/audit.d.ts.map +1 -1
  1046. package/v3/dist/mcp/tools/coherence/audit.js +2 -1
  1047. package/v3/dist/mcp/tools/coherence/audit.js.map +1 -1
  1048. package/v3/dist/mcp/tools/coherence/check.d.ts.map +1 -1
  1049. package/v3/dist/mcp/tools/coherence/check.js +2 -1
  1050. package/v3/dist/mcp/tools/coherence/check.js.map +1 -1
  1051. package/v3/dist/mcp/tools/coherence/collapse.d.ts.map +1 -1
  1052. package/v3/dist/mcp/tools/coherence/collapse.js +2 -1
  1053. package/v3/dist/mcp/tools/coherence/collapse.js.map +1 -1
  1054. package/v3/dist/mcp/tools/coherence/consensus.d.ts.map +1 -1
  1055. package/v3/dist/mcp/tools/coherence/consensus.js +2 -1
  1056. package/v3/dist/mcp/tools/coherence/consensus.js.map +1 -1
  1057. package/v3/dist/mcp/tools/contract-testing/validate.d.ts.map +1 -1
  1058. package/v3/dist/mcp/tools/contract-testing/validate.js +4 -3
  1059. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  1060. package/v3/dist/mcp/tools/coverage-analysis/index.d.ts.map +1 -1
  1061. package/v3/dist/mcp/tools/coverage-analysis/index.js +7 -6
  1062. package/v3/dist/mcp/tools/coverage-analysis/index.js.map +1 -1
  1063. package/v3/dist/mcp/tools/defect-intelligence/predict.d.ts.map +1 -1
  1064. package/v3/dist/mcp/tools/defect-intelligence/predict.js +2 -1
  1065. package/v3/dist/mcp/tools/defect-intelligence/predict.js.map +1 -1
  1066. package/v3/dist/mcp/tools/embeddings/embedding.d.ts.map +1 -1
  1067. package/v3/dist/mcp/tools/embeddings/embedding.js +6 -5
  1068. package/v3/dist/mcp/tools/embeddings/embedding.js.map +1 -1
  1069. package/v3/dist/mcp/tools/learning-optimization/dream.d.ts.map +1 -1
  1070. package/v3/dist/mcp/tools/learning-optimization/dream.js +3 -2
  1071. package/v3/dist/mcp/tools/learning-optimization/dream.js.map +1 -1
  1072. package/v3/dist/mcp/tools/learning-optimization/optimize.d.ts.map +1 -1
  1073. package/v3/dist/mcp/tools/learning-optimization/optimize.js +2 -1
  1074. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  1075. package/v3/dist/mcp/tools/planning/goap-execute.d.ts.map +1 -1
  1076. package/v3/dist/mcp/tools/planning/goap-execute.js +2 -1
  1077. package/v3/dist/mcp/tools/planning/goap-execute.js.map +1 -1
  1078. package/v3/dist/mcp/tools/planning/goap-plan.d.ts.map +1 -1
  1079. package/v3/dist/mcp/tools/planning/goap-plan.js +2 -1
  1080. package/v3/dist/mcp/tools/planning/goap-plan.js.map +1 -1
  1081. package/v3/dist/mcp/tools/planning/goap-status.d.ts.map +1 -1
  1082. package/v3/dist/mcp/tools/planning/goap-status.js +2 -1
  1083. package/v3/dist/mcp/tools/planning/goap-status.js.map +1 -1
  1084. package/v3/dist/mcp/tools/quality-assessment/evaluate.d.ts.map +1 -1
  1085. package/v3/dist/mcp/tools/quality-assessment/evaluate.js +2 -1
  1086. package/v3/dist/mcp/tools/quality-assessment/evaluate.js.map +1 -1
  1087. package/v3/dist/mcp/tools/qx-analysis/analyze.d.ts.map +1 -1
  1088. package/v3/dist/mcp/tools/qx-analysis/analyze.js +2 -1
  1089. package/v3/dist/mcp/tools/qx-analysis/analyze.js.map +1 -1
  1090. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts +12 -0
  1091. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts.map +1 -1
  1092. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js +158 -109
  1093. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js.map +1 -1
  1094. package/v3/dist/mcp/tools/requirements-validation/quality-criteria.d.ts.map +1 -1
  1095. package/v3/dist/mcp/tools/requirements-validation/quality-criteria.js +2 -1
  1096. package/v3/dist/mcp/tools/requirements-validation/quality-criteria.js.map +1 -1
  1097. package/v3/dist/mcp/tools/requirements-validation/validate.d.ts.map +1 -1
  1098. package/v3/dist/mcp/tools/requirements-validation/validate.js +2 -1
  1099. package/v3/dist/mcp/tools/requirements-validation/validate.js.map +1 -1
  1100. package/v3/dist/mcp/tools/security-compliance/scan.d.ts.map +1 -1
  1101. package/v3/dist/mcp/tools/security-compliance/scan.js +2 -1
  1102. package/v3/dist/mcp/tools/security-compliance/scan.js.map +1 -1
  1103. package/v3/dist/mcp/tools/test-execution/e2e-execute.d.ts.map +1 -1
  1104. package/v3/dist/mcp/tools/test-execution/e2e-execute.js +2 -1
  1105. package/v3/dist/mcp/tools/test-execution/e2e-execute.js.map +1 -1
  1106. package/v3/dist/mcp/tools/test-execution/execute.d.ts.map +1 -1
  1107. package/v3/dist/mcp/tools/test-execution/execute.js +2 -1
  1108. package/v3/dist/mcp/tools/test-execution/execute.js.map +1 -1
  1109. package/v3/dist/mcp/tools/test-generation/generate.d.ts.map +1 -1
  1110. package/v3/dist/mcp/tools/test-generation/generate.js +2 -1
  1111. package/v3/dist/mcp/tools/test-generation/generate.js.map +1 -1
  1112. package/v3/dist/mcp/tools/visual-accessibility/index.d.ts.map +1 -1
  1113. package/v3/dist/mcp/tools/visual-accessibility/index.js +3 -2
  1114. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  1115. package/v3/dist/mcp/transport/sse/sse-transport.js +1 -1
  1116. package/v3/dist/mcp/transport/sse/sse-transport.js.map +1 -1
  1117. package/v3/dist/mcp/transport/stdio.js +1 -1
  1118. package/v3/dist/mcp/transport/stdio.js.map +1 -1
  1119. package/v3/dist/mcp/transport/websocket/websocket-transport.js +1 -1
  1120. package/v3/dist/mcp/transport/websocket/websocket-transport.js.map +1 -1
  1121. package/v3/dist/memory/crdt/or-set.d.ts.map +1 -1
  1122. package/v3/dist/memory/crdt/or-set.js +2 -1
  1123. package/v3/dist/memory/crdt/or-set.js.map +1 -1
  1124. package/v3/dist/optimization/auto-tuner.d.ts.map +1 -1
  1125. package/v3/dist/optimization/auto-tuner.js +2 -1
  1126. package/v3/dist/optimization/auto-tuner.js.map +1 -1
  1127. package/v3/dist/optimization/early-exit-token-optimizer.d.ts.map +1 -1
  1128. package/v3/dist/optimization/early-exit-token-optimizer.js +2 -1
  1129. package/v3/dist/optimization/early-exit-token-optimizer.js.map +1 -1
  1130. package/v3/dist/optimization/qe-workers.d.ts.map +1 -1
  1131. package/v3/dist/optimization/qe-workers.js +2 -1
  1132. package/v3/dist/optimization/qe-workers.js.map +1 -1
  1133. package/v3/dist/performance/benchmarks.d.ts.map +1 -1
  1134. package/v3/dist/performance/benchmarks.js +2 -1
  1135. package/v3/dist/performance/benchmarks.js.map +1 -1
  1136. package/v3/dist/performance/optimizer.d.ts.map +1 -1
  1137. package/v3/dist/performance/optimizer.js +119 -71
  1138. package/v3/dist/performance/optimizer.js.map +1 -1
  1139. package/v3/dist/performance/run-gates.js +2 -1
  1140. package/v3/dist/performance/run-gates.js.map +1 -1
  1141. package/v3/dist/planning/goap-planner.d.ts +4 -1
  1142. package/v3/dist/planning/goap-planner.d.ts.map +1 -1
  1143. package/v3/dist/planning/goap-planner.js +128 -46
  1144. package/v3/dist/planning/goap-planner.js.map +1 -1
  1145. package/v3/dist/planning/index.d.ts +1 -1
  1146. package/v3/dist/planning/index.d.ts.map +1 -1
  1147. package/v3/dist/planning/index.js.map +1 -1
  1148. package/v3/dist/planning/plan-executor.d.ts.map +1 -1
  1149. package/v3/dist/planning/plan-executor.js +7 -5
  1150. package/v3/dist/planning/plan-executor.js.map +1 -1
  1151. package/v3/dist/planning/types.d.ts +0 -16
  1152. package/v3/dist/planning/types.d.ts.map +1 -1
  1153. package/v3/dist/routing/routing-feedback.d.ts.map +1 -1
  1154. package/v3/dist/routing/routing-feedback.js +7 -5
  1155. package/v3/dist/routing/routing-feedback.js.map +1 -1
  1156. package/v3/dist/shared/base-domain-plugin.d.ts +198 -0
  1157. package/v3/dist/shared/base-domain-plugin.d.ts.map +1 -0
  1158. package/v3/dist/shared/base-domain-plugin.js +292 -0
  1159. package/v3/dist/shared/base-domain-plugin.js.map +1 -0
  1160. package/v3/dist/shared/domain-service-registry.d.ts +70 -0
  1161. package/v3/dist/shared/domain-service-registry.d.ts.map +1 -0
  1162. package/v3/dist/shared/domain-service-registry.js +87 -0
  1163. package/v3/dist/shared/domain-service-registry.js.map +1 -0
  1164. package/v3/dist/shared/embeddings/nomic-embedder.d.ts.map +1 -1
  1165. package/v3/dist/shared/embeddings/nomic-embedder.js +2 -1
  1166. package/v3/dist/shared/embeddings/nomic-embedder.js.map +1 -1
  1167. package/v3/dist/shared/embeddings/ollama-client.d.ts.map +1 -1
  1168. package/v3/dist/shared/embeddings/ollama-client.js +2 -1
  1169. package/v3/dist/shared/embeddings/ollama-client.js.map +1 -1
  1170. package/v3/dist/shared/error-utils.d.ts +16 -0
  1171. package/v3/dist/shared/error-utils.d.ts.map +1 -0
  1172. package/v3/dist/shared/error-utils.js +20 -0
  1173. package/v3/dist/shared/error-utils.js.map +1 -0
  1174. package/v3/dist/shared/http/http-client.d.ts.map +1 -1
  1175. package/v3/dist/shared/http/http-client.js +2 -1
  1176. package/v3/dist/shared/http/http-client.js.map +1 -1
  1177. package/v3/dist/shared/index.d.ts +3 -0
  1178. package/v3/dist/shared/index.d.ts.map +1 -1
  1179. package/v3/dist/shared/index.js +3 -0
  1180. package/v3/dist/shared/index.js.map +1 -1
  1181. package/v3/dist/shared/io/file-reader.d.ts.map +1 -1
  1182. package/v3/dist/shared/io/file-reader.js +2 -1
  1183. package/v3/dist/shared/io/file-reader.js.map +1 -1
  1184. package/v3/dist/shared/llm/circuit-breaker.d.ts.map +1 -1
  1185. package/v3/dist/shared/llm/circuit-breaker.js +2 -1
  1186. package/v3/dist/shared/llm/circuit-breaker.js.map +1 -1
  1187. package/v3/dist/shared/llm/metrics/cost-metrics.js.map +1 -1
  1188. package/v3/dist/shared/llm/metrics/router-metrics.d.ts.map +1 -1
  1189. package/v3/dist/shared/llm/metrics/router-metrics.js.map +1 -1
  1190. package/v3/dist/shared/llm/provider-manager.d.ts.map +1 -1
  1191. package/v3/dist/shared/llm/provider-manager.js +2 -1
  1192. package/v3/dist/shared/llm/provider-manager.js.map +1 -1
  1193. package/v3/dist/shared/llm/providers/azure-openai.d.ts.map +1 -1
  1194. package/v3/dist/shared/llm/providers/azure-openai.js +2 -1
  1195. package/v3/dist/shared/llm/providers/azure-openai.js.map +1 -1
  1196. package/v3/dist/shared/llm/providers/bedrock.d.ts.map +1 -1
  1197. package/v3/dist/shared/llm/providers/bedrock.js +2 -1
  1198. package/v3/dist/shared/llm/providers/bedrock.js.map +1 -1
  1199. package/v3/dist/shared/llm/providers/claude.d.ts.map +1 -1
  1200. package/v3/dist/shared/llm/providers/claude.js +2 -1
  1201. package/v3/dist/shared/llm/providers/claude.js.map +1 -1
  1202. package/v3/dist/shared/llm/providers/gemini.d.ts.map +1 -1
  1203. package/v3/dist/shared/llm/providers/gemini.js +4 -2
  1204. package/v3/dist/shared/llm/providers/gemini.js.map +1 -1
  1205. package/v3/dist/shared/llm/providers/openai.d.ts.map +1 -1
  1206. package/v3/dist/shared/llm/providers/openai.js +2 -1
  1207. package/v3/dist/shared/llm/providers/openai.js.map +1 -1
  1208. package/v3/dist/shared/llm/providers/openrouter.d.ts.map +1 -1
  1209. package/v3/dist/shared/llm/providers/openrouter.js +4 -2
  1210. package/v3/dist/shared/llm/providers/openrouter.js.map +1 -1
  1211. package/v3/dist/shared/llm/router/hybrid-router.d.ts.map +1 -1
  1212. package/v3/dist/shared/llm/router/hybrid-router.js +2 -1
  1213. package/v3/dist/shared/llm/router/hybrid-router.js.map +1 -1
  1214. package/v3/dist/shared/llm/translation/prompt-translator.d.ts.map +1 -1
  1215. package/v3/dist/shared/llm/translation/prompt-translator.js +2 -1
  1216. package/v3/dist/shared/llm/translation/prompt-translator.js.map +1 -1
  1217. package/v3/dist/shared/safe-json.d.ts +57 -0
  1218. package/v3/dist/shared/safe-json.d.ts.map +1 -0
  1219. package/v3/dist/shared/safe-json.js +78 -0
  1220. package/v3/dist/shared/safe-json.js.map +1 -0
  1221. package/v3/dist/shared/sql-safety.d.ts +9 -0
  1222. package/v3/dist/shared/sql-safety.d.ts.map +1 -1
  1223. package/v3/dist/shared/sql-safety.js +20 -1
  1224. package/v3/dist/shared/sql-safety.js.map +1 -1
  1225. package/v3/dist/shared/utils/circular-buffer.js +1 -1
  1226. package/v3/dist/shared/utils/circular-buffer.js.map +1 -1
  1227. package/v3/dist/skills/security-visual-testing/index.d.ts.map +1 -1
  1228. package/v3/dist/skills/security-visual-testing/index.js +6 -5
  1229. package/v3/dist/skills/security-visual-testing/index.js.map +1 -1
  1230. package/v3/dist/strange-loop/strange-loop.d.ts +0 -9
  1231. package/v3/dist/strange-loop/strange-loop.d.ts.map +1 -1
  1232. package/v3/dist/strange-loop/strange-loop.js +23 -15
  1233. package/v3/dist/strange-loop/strange-loop.js.map +1 -1
  1234. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -1
  1235. package/v3/dist/sync/claude-flow-bridge.js +2 -1
  1236. package/v3/dist/sync/claude-flow-bridge.js.map +1 -1
  1237. package/v3/dist/sync/cloud/index.d.ts +1 -1
  1238. package/v3/dist/sync/cloud/index.d.ts.map +1 -1
  1239. package/v3/dist/sync/cloud/index.js +1 -1
  1240. package/v3/dist/sync/cloud/index.js.map +1 -1
  1241. package/v3/dist/sync/cloud/postgres-writer.d.ts.map +1 -1
  1242. package/v3/dist/sync/cloud/postgres-writer.js +20 -9
  1243. package/v3/dist/sync/cloud/postgres-writer.js.map +1 -1
  1244. package/v3/dist/sync/cloud/tunnel-manager.d.ts +17 -1
  1245. package/v3/dist/sync/cloud/tunnel-manager.d.ts.map +1 -1
  1246. package/v3/dist/sync/cloud/tunnel-manager.js +36 -1
  1247. package/v3/dist/sync/cloud/tunnel-manager.js.map +1 -1
  1248. package/v3/dist/sync/embeddings/sync-embedding-generator.d.ts.map +1 -1
  1249. package/v3/dist/sync/embeddings/sync-embedding-generator.js +11 -5
  1250. package/v3/dist/sync/embeddings/sync-embedding-generator.js.map +1 -1
  1251. package/v3/dist/sync/readers/json-reader.d.ts.map +1 -1
  1252. package/v3/dist/sync/readers/json-reader.js +2 -1
  1253. package/v3/dist/sync/readers/json-reader.js.map +1 -1
  1254. package/v3/dist/sync/readers/sqlite-reader.d.ts.map +1 -1
  1255. package/v3/dist/sync/readers/sqlite-reader.js +14 -6
  1256. package/v3/dist/sync/readers/sqlite-reader.js.map +1 -1
  1257. package/v3/dist/sync/sync-agent.d.ts.map +1 -1
  1258. package/v3/dist/sync/sync-agent.js +10 -6
  1259. package/v3/dist/sync/sync-agent.js.map +1 -1
  1260. package/v3/dist/test-scheduling/executors/vitest-executor.d.ts.map +1 -1
  1261. package/v3/dist/test-scheduling/executors/vitest-executor.js +3 -2
  1262. package/v3/dist/test-scheduling/executors/vitest-executor.js.map +1 -1
  1263. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.d.ts.map +1 -1
  1264. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.js +2 -1
  1265. package/v3/dist/test-scheduling/flaky-tracking/flaky-tracker.js.map +1 -1
  1266. package/v3/dist/testing/load/agent-load-tester.d.ts.map +1 -1
  1267. package/v3/dist/testing/load/agent-load-tester.js +2 -1
  1268. package/v3/dist/testing/load/agent-load-tester.js.map +1 -1
  1269. package/v3/dist/validation/parallel-eval-runner.d.ts.map +1 -1
  1270. package/v3/dist/validation/parallel-eval-runner.js +83 -37
  1271. package/v3/dist/validation/parallel-eval-runner.js.map +1 -1
  1272. package/v3/dist/validation/swarm-skill-validator.d.ts.map +1 -1
  1273. package/v3/dist/validation/swarm-skill-validator.js +2 -1
  1274. package/v3/dist/validation/swarm-skill-validator.js.map +1 -1
  1275. package/v3/dist/validation/validation-result-aggregator.d.ts.map +1 -1
  1276. package/v3/dist/validation/validation-result-aggregator.js +2 -1
  1277. package/v3/dist/validation/validation-result-aggregator.js.map +1 -1
  1278. package/v3/dist/workers/base-worker.d.ts.map +1 -1
  1279. package/v3/dist/workers/base-worker.js +2 -1
  1280. package/v3/dist/workers/base-worker.js.map +1 -1
  1281. package/v3/dist/workers/workers/cloud-sync.d.ts.map +1 -1
  1282. package/v3/dist/workers/workers/cloud-sync.js +2 -1
  1283. package/v3/dist/workers/workers/cloud-sync.js.map +1 -1
  1284. package/v3/dist/workers/workers/learning-consolidation.d.ts.map +1 -1
  1285. package/v3/dist/workers/workers/learning-consolidation.js +4 -3
  1286. package/v3/dist/workers/workers/learning-consolidation.js.map +1 -1
  1287. package/v3/dist/workers/workers/test-health.d.ts.map +1 -1
  1288. package/v3/dist/workers/workers/test-health.js +2 -1
  1289. package/v3/dist/workers/workers/test-health.js.map +1 -1
  1290. package/v3/package.json +3 -2
@@ -1,30 +1,23 @@
1
1
  /**
2
2
  * Agentic QE v3 - Workflow Orchestrator
3
3
  * Coordinates complete QE workflows across all 12 domains
4
+ *
5
+ * Module structure (extracted for maintainability):
6
+ * - workflow-types.ts: All types, interfaces, events, config
7
+ * - workflow-builtin.ts: Built-in workflow definitions
8
+ * - workflow-orchestrator.ts: WorkflowOrchestrator class (this file, facade)
4
9
  */
5
10
  import { v4 as uuidv4 } from 'uuid';
6
11
  import { ok, err, ALL_DOMAINS, } from '../shared/types/index.js';
7
12
  import { createEvent } from '../shared/events/domain-events.js';
13
+ import { toError, toErrorMessage } from '../shared/error-utils.js';
14
+ export { WorkflowEvents, DEFAULT_WORKFLOW_CONFIG, } from './workflow-types.js';
15
+ import { WorkflowEvents, DEFAULT_WORKFLOW_CONFIG } from './workflow-types.js';
16
+ // Import built-in workflows
17
+ import { getBuiltInWorkflows, BUILTIN_WORKFLOW_IDS } from './workflow-builtin.js';
8
18
  // ============================================================================
9
- // Workflow Events
19
+ // Workflow Orchestrator Implementation
10
20
  // ============================================================================
11
- export const WorkflowEvents = {
12
- WorkflowStarted: 'workflow.WorkflowStarted',
13
- WorkflowCompleted: 'workflow.WorkflowCompleted',
14
- WorkflowFailed: 'workflow.WorkflowFailed',
15
- WorkflowCancelled: 'workflow.WorkflowCancelled',
16
- StepStarted: 'workflow.StepStarted',
17
- StepCompleted: 'workflow.StepCompleted',
18
- StepFailed: 'workflow.StepFailed',
19
- StepSkipped: 'workflow.StepSkipped',
20
- };
21
- const DEFAULT_CONFIG = {
22
- maxConcurrentWorkflows: 10,
23
- defaultStepTimeout: 60000,
24
- defaultWorkflowTimeout: 600000,
25
- enableEventTriggers: true,
26
- persistExecutions: true,
27
- };
28
21
  export class WorkflowOrchestrator {
29
22
  eventBus;
30
23
  memory;
@@ -39,72 +32,49 @@ export class WorkflowOrchestrator {
39
32
  this.eventBus = eventBus;
40
33
  this.memory = memory;
41
34
  this.agentCoordinator = agentCoordinator;
42
- this.config = { ...DEFAULT_CONFIG, ...config };
35
+ this.config = { ...DEFAULT_WORKFLOW_CONFIG, ...config };
43
36
  }
44
- /**
45
- * Initialize the orchestrator
46
- */
47
37
  async initialize() {
48
38
  if (this.initialized)
49
39
  return;
50
- // Register built-in workflows
51
40
  this.registerBuiltInWorkflows();
52
- // Set up event triggers if enabled
53
41
  if (this.config.enableEventTriggers) {
54
42
  this.setupEventTriggers();
55
43
  }
56
- // Load persisted workflow definitions
57
44
  await this.loadPersistedWorkflows();
58
45
  this.initialized = true;
59
46
  }
60
- /**
61
- * Dispose resources
62
- */
63
47
  async dispose() {
64
- // Cancel all active executions
65
48
  for (const execution of this.executions.values()) {
66
49
  if (execution.status === 'running') {
67
50
  await this.cancelWorkflow(execution.executionId);
68
51
  }
69
52
  }
70
- // Unsubscribe from events
71
53
  for (const subscription of this.eventSubscriptions) {
72
54
  subscription.unsubscribe();
73
55
  }
74
- // Persist workflow definitions
75
56
  await this.persistWorkflows();
76
57
  this.initialized = false;
77
58
  }
78
- /**
79
- * Register a workflow definition
80
- */
81
59
  registerWorkflow(definition) {
82
60
  try {
83
- // Validate workflow
84
61
  const validationResult = this.validateWorkflowDefinition(definition);
85
- if (!validationResult.success) {
62
+ if (!validationResult.success)
86
63
  return validationResult;
87
- }
88
- // Store workflow
89
64
  this.workflows.set(definition.id, definition);
90
- // Set up triggers
91
65
  if (this.config.enableEventTriggers && definition.triggers) {
92
66
  this.registerWorkflowTriggers(definition);
93
67
  }
94
68
  return ok(undefined);
95
69
  }
96
70
  catch (error) {
97
- return err(error instanceof Error ? error : new Error(String(error)));
71
+ return err(toError(error));
98
72
  }
99
73
  }
100
- /**
101
- * Unregister a workflow
102
- */
103
74
  unregisterWorkflow(workflowId) {
104
75
  if (!this.workflows.has(workflowId)) {
105
76
  return err(new Error(`Workflow not found: ${workflowId}`));
106
77
  }
107
- // Check for active executions
108
78
  const activeExecutions = Array.from(this.executions.values()).filter((e) => e.workflowId === workflowId && e.status === 'running');
109
79
  if (activeExecutions.length > 0) {
110
80
  return err(new Error(`Cannot unregister workflow with ${activeExecutions.length} active execution(s)`));
@@ -112,51 +82,29 @@ export class WorkflowOrchestrator {
112
82
  this.workflows.delete(workflowId);
113
83
  return ok(undefined);
114
84
  }
115
- /**
116
- * Execute a workflow
117
- */
118
85
  async executeWorkflow(workflowId, input = {}, correlationId) {
119
86
  const workflow = this.workflows.get(workflowId);
120
- if (!workflow) {
87
+ if (!workflow)
121
88
  return err(new Error(`Workflow not found: ${workflowId}`));
122
- }
123
- // Check concurrent execution limit
124
89
  const activeCount = Array.from(this.executions.values()).filter((e) => e.status === 'running').length;
125
90
  if (activeCount >= this.config.maxConcurrentWorkflows) {
126
91
  return err(new Error(`Maximum concurrent workflows (${this.config.maxConcurrentWorkflows}) reached`));
127
92
  }
128
93
  const executionId = uuidv4();
129
94
  const startedAt = new Date();
130
- // Initialize execution context
131
95
  const context = {
132
96
  input,
133
97
  results: {},
134
- metadata: {
135
- executionId,
136
- workflowId,
137
- correlationId: correlationId || executionId,
138
- startedAt,
139
- },
98
+ metadata: { executionId, workflowId, correlationId: correlationId || executionId, startedAt },
140
99
  };
141
- // Initialize execution status
142
100
  const execution = {
143
- executionId,
144
- workflowId,
145
- workflowName: workflow.name,
146
- status: 'running',
147
- startedAt,
148
- progress: 0,
149
- currentSteps: [],
150
- completedSteps: [],
151
- failedSteps: [],
152
- skippedSteps: [],
153
- context,
154
- stepResults: new Map(),
101
+ executionId, workflowId, workflowName: workflow.name,
102
+ status: 'running', startedAt, progress: 0,
103
+ currentSteps: [], completedSteps: [], failedSteps: [], skippedSteps: [],
104
+ context, stepResults: new Map(),
155
105
  };
156
106
  this.executions.set(executionId, execution);
157
- // Publish workflow started event
158
107
  await this.publishWorkflowStarted(execution, workflow);
159
- // Execute workflow asynchronously
160
108
  this.runWorkflow(workflow, execution).catch(async (error) => {
161
109
  execution.status = 'failed';
162
110
  execution.error = String(error);
@@ -166,99 +114,102 @@ export class WorkflowOrchestrator {
166
114
  });
167
115
  return ok(executionId);
168
116
  }
169
- /**
170
- * Get workflow execution status
171
- */
172
117
  getWorkflowStatus(executionId) {
173
118
  return this.executions.get(executionId);
174
119
  }
175
- /**
176
- * Cancel a running workflow
177
- */
178
120
  async cancelWorkflow(executionId) {
179
121
  const execution = this.executions.get(executionId);
180
- if (!execution) {
122
+ if (!execution)
181
123
  return err(new Error(`Execution not found: ${executionId}`));
182
- }
183
124
  if (execution.status !== 'running' && execution.status !== 'paused') {
184
125
  return err(new Error(`Cannot cancel workflow in status: ${execution.status}`));
185
126
  }
186
127
  execution.status = 'cancelled';
187
128
  execution.completedAt = new Date();
188
- execution.duration =
189
- execution.completedAt.getTime() - execution.startedAt.getTime();
190
- // Publish cancellation event
129
+ execution.duration = execution.completedAt.getTime() - execution.startedAt.getTime();
191
130
  await this.publishEvent(WorkflowEvents.WorkflowCancelled, {
192
- executionId,
193
- workflowId: execution.workflowId,
194
- workflowName: execution.workflowName,
131
+ executionId, workflowId: execution.workflowId, workflowName: execution.workflowName,
195
132
  }, execution.context.metadata.correlationId);
196
133
  return ok(undefined);
197
134
  }
198
- /**
199
- * Pause a running workflow
200
- */
201
135
  async pauseWorkflow(executionId) {
202
136
  const execution = this.executions.get(executionId);
203
- if (!execution) {
137
+ if (!execution)
204
138
  return err(new Error(`Execution not found: ${executionId}`));
205
- }
206
- if (execution.status !== 'running') {
139
+ if (execution.status !== 'running')
207
140
  return err(new Error(`Cannot pause workflow in status: ${execution.status}`));
208
- }
209
141
  execution.status = 'paused';
210
142
  return ok(undefined);
211
143
  }
212
- /**
213
- * Resume a paused workflow
214
- */
215
144
  async resumeWorkflow(executionId) {
216
145
  const execution = this.executions.get(executionId);
217
- if (!execution) {
146
+ if (!execution)
218
147
  return err(new Error(`Execution not found: ${executionId}`));
219
- }
220
- if (execution.status !== 'paused') {
148
+ if (execution.status !== 'paused')
221
149
  return err(new Error(`Cannot resume workflow in status: ${execution.status}`));
222
- }
223
150
  const workflow = this.workflows.get(execution.workflowId);
224
- if (!workflow) {
151
+ if (!workflow)
225
152
  return err(new Error(`Workflow definition not found: ${execution.workflowId}`));
226
- }
227
153
  execution.status = 'running';
228
- // Continue execution from where it was paused
229
154
  this.runWorkflow(workflow, execution).catch(async (error) => {
230
155
  execution.status = 'failed';
231
156
  execution.error = String(error);
232
157
  });
233
158
  return ok(undefined);
234
159
  }
235
- /**
236
- * List registered workflows
237
- */
238
160
  listWorkflows() {
239
161
  return Array.from(this.workflows.values()).map((w) => ({
240
- id: w.id,
241
- name: w.name,
242
- description: w.description,
243
- version: w.version,
244
- stepCount: w.steps.length,
245
- tags: w.tags,
162
+ id: w.id, name: w.name, description: w.description, version: w.version,
163
+ stepCount: w.steps.length, tags: w.tags,
246
164
  triggers: w.triggers?.map((t) => t.eventType),
247
165
  }));
248
166
  }
249
- /**
250
- * Get active executions
251
- */
252
167
  getActiveExecutions() {
253
168
  return Array.from(this.executions.values()).filter((e) => e.status === 'running' || e.status === 'paused');
254
169
  }
255
- /**
256
- * Get workflow definition
257
- */
258
170
  getWorkflow(workflowId) {
259
171
  return this.workflows.get(workflowId);
260
172
  }
261
173
  // ============================================================================
174
+ // Public Utility Methods
175
+ // ============================================================================
176
+ isActionRegistered(domain, action) {
177
+ return !!this.actionRegistry[domain]?.[action];
178
+ }
179
+ getRegisteredActions(domain) {
180
+ return Object.keys(this.actionRegistry[domain] || {});
181
+ }
182
+ getDomainsWithActions() {
183
+ return Object.keys(this.actionRegistry);
184
+ }
185
+ async spawnWorkflowAgent(workflowId, stepId, domain) {
186
+ if (!this.agentCoordinator.canSpawn())
187
+ return err(new Error('Agent limit reached'));
188
+ return this.agentCoordinator.spawn({
189
+ name: `workflow-agent-${workflowId.slice(0, 8)}-${stepId}`,
190
+ domain, type: 'coordinator',
191
+ capabilities: ['workflow-execution', stepId],
192
+ config: { workflowId, stepId },
193
+ });
194
+ }
195
+ async stopWorkflowAgent(agentId) {
196
+ return this.agentCoordinator.stop(agentId);
197
+ }
198
+ getAvailableAgentCapacity() {
199
+ return this.agentCoordinator.canSpawn()
200
+ ? this.config.maxConcurrentWorkflows - this.getActiveExecutions().length
201
+ : 0;
202
+ }
203
+ registerAction(domain, action, handler) {
204
+ const dangerousKeys = ['__proto__', 'constructor', 'prototype'];
205
+ if (dangerousKeys.includes(domain) || dangerousKeys.includes(action)) {
206
+ throw new Error('Invalid domain or action name: contains dangerous prototype key');
207
+ }
208
+ if (!this.actionRegistry[domain])
209
+ this.actionRegistry[domain] = {};
210
+ this.actionRegistry[domain][action] = handler;
211
+ }
212
+ // ============================================================================
262
213
  // Private Methods - Workflow Execution
263
214
  // ============================================================================
264
215
  async runWorkflow(workflow, execution) {
@@ -267,15 +218,11 @@ export class WorkflowOrchestrator {
267
218
  setTimeout(() => reject(new Error(`Workflow timeout after ${timeout}ms`)), timeout);
268
219
  });
269
220
  try {
270
- await Promise.race([
271
- this.executeSteps(workflow, execution),
272
- timeoutPromise,
273
- ]);
221
+ await Promise.race([this.executeSteps(workflow, execution), timeoutPromise]);
274
222
  if (execution.status === 'running') {
275
223
  execution.status = 'completed';
276
224
  execution.completedAt = new Date();
277
- execution.duration =
278
- execution.completedAt.getTime() - execution.startedAt.getTime();
225
+ execution.duration = execution.completedAt.getTime() - execution.startedAt.getTime();
279
226
  execution.progress = 100;
280
227
  await this.publishWorkflowCompleted(execution);
281
228
  }
@@ -285,40 +232,29 @@ export class WorkflowOrchestrator {
285
232
  execution.status = 'failed';
286
233
  execution.error = String(error);
287
234
  execution.completedAt = new Date();
288
- execution.duration =
289
- execution.completedAt.getTime() - execution.startedAt.getTime();
235
+ execution.duration = execution.completedAt.getTime() - execution.startedAt.getTime();
290
236
  const failedStep = execution.currentSteps[0] || 'unknown';
291
237
  await this.publishWorkflowFailed(execution, failedStep, String(error));
292
238
  }
293
239
  }
294
- // Persist execution if configured
295
- if (this.config.persistExecutions) {
240
+ if (this.config.persistExecutions)
296
241
  await this.persistExecution(execution);
297
- }
298
242
  }
299
243
  async executeSteps(workflow, execution) {
300
244
  const steps = workflow.steps;
301
245
  const completedSteps = new Set(execution.completedSteps);
302
246
  const skippedSteps = new Set(execution.skippedSteps);
303
247
  const failedSteps = new Set(execution.failedSteps);
304
- // Build dependency graph
305
- const pendingSteps = steps.filter((s) => !completedSteps.has(s.id) &&
306
- !skippedSteps.has(s.id) &&
307
- !failedSteps.has(s.id));
248
+ const pendingSteps = steps.filter((s) => !completedSteps.has(s.id) && !skippedSteps.has(s.id) && !failedSteps.has(s.id));
308
249
  while (pendingSteps.length > 0 && execution.status === 'running') {
309
- // Find steps that are ready to execute (all dependencies satisfied)
310
250
  const readySteps = pendingSteps.filter((step) => {
311
251
  const deps = step.dependsOn || [];
312
252
  return deps.every((depId) => completedSteps.has(depId) || skippedSteps.has(depId));
313
253
  });
314
- if (readySteps.length === 0) {
315
- // Deadlock or all remaining steps have failed dependencies
254
+ if (readySteps.length === 0)
316
255
  break;
317
- }
318
- // Determine execution mode
319
256
  const parallelSteps = readySteps.filter((s) => !s.dependsOn?.length);
320
257
  const sequentialSteps = readySteps.filter((s) => s.dependsOn?.length);
321
- // Execute parallel steps concurrently
322
258
  if (parallelSteps.length > 0) {
323
259
  execution.currentSteps = parallelSteps.map((s) => s.id);
324
260
  const results = await Promise.allSettled(parallelSteps.map((step) => this.executeStep(step, execution, workflow)));
@@ -354,14 +290,11 @@ export class WorkflowOrchestrator {
354
290
  return;
355
291
  }
356
292
  }
357
- // Remove from pending
358
293
  const pendingIndex = pendingSteps.indexOf(step);
359
- if (pendingIndex !== -1) {
294
+ if (pendingIndex !== -1)
360
295
  pendingSteps.splice(pendingIndex, 1);
361
- }
362
296
  }
363
297
  }
364
- // Execute sequential steps one at a time
365
298
  for (const step of sequentialSteps) {
366
299
  if (execution.status !== 'running')
367
300
  break;
@@ -384,13 +317,10 @@ export class WorkflowOrchestrator {
384
317
  return;
385
318
  }
386
319
  }
387
- // Remove from pending
388
320
  const pendingIndex = pendingSteps.indexOf(step);
389
- if (pendingIndex !== -1) {
321
+ if (pendingIndex !== -1)
390
322
  pendingSteps.splice(pendingIndex, 1);
391
- }
392
323
  }
393
- // Update progress
394
324
  const totalSteps = steps.length;
395
325
  const processedSteps = completedSteps.size + skippedSteps.size + failedSteps.size;
396
326
  execution.progress = Math.round((processedSteps / totalSteps) * 100);
@@ -399,13 +329,8 @@ export class WorkflowOrchestrator {
399
329
  }
400
330
  async executeStep(step, execution, _workflow) {
401
331
  const startedAt = new Date();
402
- const result = {
403
- stepId: step.id,
404
- status: 'pending',
405
- startedAt,
406
- };
332
+ const result = { stepId: step.id, status: 'pending', startedAt };
407
333
  try {
408
- // Check skip condition
409
334
  if (step.skipCondition && this.evaluateCondition(step.skipCondition, execution.context)) {
410
335
  result.status = 'skipped';
411
336
  result.completedAt = new Date();
@@ -414,7 +339,6 @@ export class WorkflowOrchestrator {
414
339
  await this.publishStepSkipped(execution, step);
415
340
  return result;
416
341
  }
417
- // Check execution condition
418
342
  if (step.condition && !this.evaluateCondition(step.condition, execution.context)) {
419
343
  result.status = 'skipped';
420
344
  result.completedAt = new Date();
@@ -425,9 +349,7 @@ export class WorkflowOrchestrator {
425
349
  }
426
350
  result.status = 'running';
427
351
  await this.publishStepStarted(execution, step);
428
- // Build input from mapping
429
352
  const input = this.buildStepInput(step, execution.context);
430
- // Execute with retry logic
431
353
  let lastError;
432
354
  const maxAttempts = step.retry?.maxAttempts || 1;
433
355
  let backoffMs = step.retry?.backoffMs || 1000;
@@ -437,7 +359,6 @@ export class WorkflowOrchestrator {
437
359
  try {
438
360
  const stepTimeout = step.timeout || this.config.defaultStepTimeout;
439
361
  const output = await this.executeStepAction(step, input, execution.context, stepTimeout);
440
- // Map output to context
441
362
  this.mapStepOutput(step, output, execution.context);
442
363
  result.status = 'completed';
443
364
  result.output = output;
@@ -448,29 +369,26 @@ export class WorkflowOrchestrator {
448
369
  return result;
449
370
  }
450
371
  catch (error) {
451
- lastError = error instanceof Error ? error : new Error(String(error));
372
+ lastError = toError(error);
452
373
  if (attempt < maxAttempts) {
453
374
  await this.delay(backoffMs);
454
375
  backoffMs *= backoffMultiplier;
455
376
  }
456
377
  }
457
378
  }
458
- // All retries failed
459
379
  result.status = 'failed';
460
380
  result.error = lastError?.message || 'Unknown error';
461
381
  result.completedAt = new Date();
462
382
  result.duration = result.completedAt.getTime() - startedAt.getTime();
463
383
  execution.stepResults.set(step.id, result);
464
- // Execute rollback if defined
465
- if (step.rollback) {
384
+ if (step.rollback)
466
385
  await this.executeRollback(step.rollback, execution.context);
467
- }
468
386
  await this.publishStepFailed(execution, step, result.error);
469
387
  return result;
470
388
  }
471
389
  catch (error) {
472
390
  result.status = 'failed';
473
- result.error = error instanceof Error ? error.message : String(error);
391
+ result.error = toErrorMessage(error);
474
392
  result.completedAt = new Date();
475
393
  result.duration = result.completedAt.getTime() - startedAt.getTime();
476
394
  execution.stepResults.set(step.id, result);
@@ -479,92 +397,31 @@ export class WorkflowOrchestrator {
479
397
  }
480
398
  }
481
399
  async executeStepAction(step, input, context, timeout) {
482
- // Check if action is registered
483
400
  const domainActions = this.actionRegistry[step.domain];
484
401
  if (domainActions?.[step.action]) {
485
402
  const timeoutPromise = new Promise((_, reject) => {
486
403
  setTimeout(() => reject(new Error(`Step timeout after ${timeout}ms`)), timeout);
487
404
  });
488
- const actionResult = await Promise.race([
489
- domainActions[step.action](input, context),
490
- timeoutPromise,
491
- ]);
492
- if (!actionResult.success) {
405
+ const actionResult = await Promise.race([domainActions[step.action](input, context), timeoutPromise]);
406
+ if (!actionResult.success)
493
407
  throw actionResult.error;
494
- }
495
408
  return actionResult.value;
496
409
  }
497
- // No action registered - throw error rather than fake success
498
410
  throw new Error(`Action '${step.action}' not registered for domain '${step.domain}'. ` +
499
411
  `Register it using orchestrator.registerAction('${step.domain}', '${step.action}', handler)`);
500
412
  }
501
- /**
502
- * Check if an action is registered for a domain
503
- */
504
- isActionRegistered(domain, action) {
505
- return !!this.actionRegistry[domain]?.[action];
506
- }
507
- /**
508
- * Get all registered actions for a domain
509
- */
510
- getRegisteredActions(domain) {
511
- return Object.keys(this.actionRegistry[domain] || {});
512
- }
513
- /**
514
- * Get all domains with registered actions
515
- */
516
- getDomainsWithActions() {
517
- return Object.keys(this.actionRegistry);
518
- }
519
- /**
520
- * Spawn a workflow agent for complex step execution
521
- * Used when steps require dedicated agent resources
522
- */
523
- async spawnWorkflowAgent(workflowId, stepId, domain) {
524
- if (!this.agentCoordinator.canSpawn()) {
525
- return err(new Error('Agent limit reached'));
526
- }
527
- return this.agentCoordinator.spawn({
528
- name: `workflow-agent-${workflowId.slice(0, 8)}-${stepId}`,
529
- domain,
530
- type: 'coordinator',
531
- capabilities: ['workflow-execution', stepId],
532
- config: {
533
- workflowId,
534
- stepId,
535
- },
536
- });
537
- }
538
- /**
539
- * Stop a workflow agent after step completion
540
- */
541
- async stopWorkflowAgent(agentId) {
542
- return this.agentCoordinator.stop(agentId);
543
- }
544
- /**
545
- * Get the number of agents available for workflow execution
546
- */
547
- getAvailableAgentCapacity() {
548
- return this.agentCoordinator.canSpawn()
549
- ? this.config.maxConcurrentWorkflows - this.getActiveExecutions().length
550
- : 0;
551
- }
552
413
  async executeRollback(rollback, context) {
553
414
  try {
554
- // Check if rollback action is registered
555
415
  const domainActions = this.actionRegistry[rollback.domain];
556
416
  if (!domainActions?.[rollback.action]) {
557
417
  console.warn(`Rollback action '${rollback.action}' not registered for domain '${rollback.domain}'. Skipping rollback.`);
558
418
  return;
559
419
  }
560
- // Execute rollback action
561
420
  const result = await domainActions[rollback.action](rollback.input || {}, context);
562
- if (!result.success) {
421
+ if (!result.success)
563
422
  console.error(`Rollback failed for ${rollback.domain}.${rollback.action}:`, result.error);
564
- }
565
423
  }
566
424
  catch (error) {
567
- // Log but don't throw - rollback failures shouldn't cascade
568
425
  console.error(`Rollback failed for ${rollback.domain}.${rollback.action}:`, error);
569
426
  }
570
427
  }
@@ -576,23 +433,19 @@ export class WorkflowOrchestrator {
576
433
  if (step.inputMapping) {
577
434
  for (const [targetKey, sourcePath] of Object.entries(step.inputMapping)) {
578
435
  const value = this.getValueByPath(context, sourcePath);
579
- if (value !== undefined) {
436
+ if (value !== undefined)
580
437
  input[targetKey] = value;
581
- }
582
438
  }
583
439
  }
584
440
  return input;
585
441
  }
586
442
  mapStepOutput(step, output, context) {
587
- // Store raw output
588
443
  context.results[step.id] = output;
589
- // Apply output mapping
590
444
  if (step.outputMapping && typeof output === 'object' && output !== null) {
591
445
  for (const [sourcePath, targetPath] of Object.entries(step.outputMapping)) {
592
446
  const value = this.getValueByPath(output, sourcePath);
593
- if (value !== undefined) {
447
+ if (value !== undefined)
594
448
  this.setValueByPath(context.results, targetPath, value);
595
- }
596
449
  }
597
450
  }
598
451
  }
@@ -600,60 +453,37 @@ export class WorkflowOrchestrator {
600
453
  const parts = path.split('.');
601
454
  let current = obj;
602
455
  for (const part of parts) {
603
- if (current === null || current === undefined) {
456
+ if (current === null || current === undefined)
604
457
  return undefined;
605
- }
606
- if (typeof current === 'object') {
458
+ if (typeof current === 'object')
607
459
  current = current[part];
608
- }
609
- else {
460
+ else
610
461
  return undefined;
611
- }
612
462
  }
613
463
  return current;
614
464
  }
615
465
  setValueByPath(obj, path, value) {
616
466
  const parts = path.split('.');
617
- // Guard against prototype pollution - check ALL parts before any assignment
618
467
  const dangerousKeys = new Set(['__proto__', 'constructor', 'prototype']);
619
468
  for (const part of parts) {
620
- if (dangerousKeys.has(part)) {
469
+ if (dangerousKeys.has(part))
621
470
  throw new Error(`Invalid path: contains dangerous prototype key`);
622
- }
623
471
  }
624
472
  let current = obj;
625
473
  for (let i = 0; i < parts.length - 1; i++) {
626
474
  const part = parts[i];
627
- // CodeQL fix: Immediate dangerous key check before property access
628
- if (dangerousKeys.has(part)) {
475
+ if (dangerousKeys.has(part))
629
476
  throw new Error(`Invalid path segment: '${part}' is a dangerous prototype key`);
630
- }
631
- // Use Object.hasOwn for safe property check
632
477
  if (!Object.hasOwn(current, part)) {
633
- // Use Object.defineProperty for safe assignment
634
- Object.defineProperty(current, part, {
635
- value: Object.create(null),
636
- writable: true,
637
- enumerable: true,
638
- configurable: true,
639
- });
478
+ Object.defineProperty(current, part, { value: Object.create(null), writable: true, enumerable: true, configurable: true });
640
479
  }
641
480
  current = current[part];
642
481
  }
643
482
  const finalKey = parts[parts.length - 1];
644
- // CodeQL fix: Immediate dangerous key check before Object.defineProperty
645
- if (dangerousKeys.has(finalKey)) {
483
+ if (dangerousKeys.has(finalKey))
646
484
  throw new Error(`Invalid final key: '${finalKey}' is a dangerous prototype key`);
647
- }
648
- // Use Object.defineProperty for safe final assignment
649
- // CodeQL: False positive - finalKey validated against dangerousKeys Set above
650
485
  // lgtm[js/prototype-pollution-utility]
651
- Object.defineProperty(current, finalKey, {
652
- value,
653
- writable: true,
654
- enumerable: true,
655
- configurable: true,
656
- });
486
+ Object.defineProperty(current, finalKey, { value, writable: true, enumerable: true, configurable: true });
657
487
  }
658
488
  // ============================================================================
659
489
  // Private Methods - Condition Evaluation
@@ -661,138 +491,95 @@ export class WorkflowOrchestrator {
661
491
  evaluateCondition(condition, context) {
662
492
  const value = this.getValueByPath(context, condition.path);
663
493
  switch (condition.operator) {
664
- case 'eq':
665
- return value === condition.value;
666
- case 'neq':
667
- return value !== condition.value;
668
- case 'gt':
669
- return typeof value === 'number' && value > condition.value;
670
- case 'gte':
671
- return typeof value === 'number' && value >= condition.value;
672
- case 'lt':
673
- return typeof value === 'number' && value < condition.value;
674
- case 'lte':
675
- return typeof value === 'number' && value <= condition.value;
494
+ case 'eq': return value === condition.value;
495
+ case 'neq': return value !== condition.value;
496
+ case 'gt': return typeof value === 'number' && value > condition.value;
497
+ case 'gte': return typeof value === 'number' && value >= condition.value;
498
+ case 'lt': return typeof value === 'number' && value < condition.value;
499
+ case 'lte': return typeof value === 'number' && value <= condition.value;
676
500
  case 'contains':
677
- if (Array.isArray(value)) {
501
+ if (Array.isArray(value))
678
502
  return value.includes(condition.value);
679
- }
680
- if (typeof value === 'string') {
503
+ if (typeof value === 'string')
681
504
  return value.includes(String(condition.value));
682
- }
683
- return false;
684
- case 'exists':
685
- return value !== undefined && value !== null;
686
- default:
687
505
  return false;
506
+ case 'exists': return value !== undefined && value !== null;
507
+ default: return false;
688
508
  }
689
509
  }
690
510
  // ============================================================================
691
511
  // Private Methods - Event Publishing
692
512
  // ============================================================================
693
513
  async publishEvent(type, payload, correlationId) {
694
- const event = createEvent(type, 'learning-optimization', // Workflow orchestrator publishes as coordination
695
- payload, correlationId);
514
+ const event = createEvent(type, 'learning-optimization', payload, correlationId);
696
515
  await this.eventBus.publish(event);
697
516
  }
698
517
  async publishWorkflowStarted(execution, workflow) {
699
518
  await this.publishEvent(WorkflowEvents.WorkflowStarted, {
700
- executionId: execution.executionId,
701
- workflowId: execution.workflowId,
702
- workflowName: execution.workflowName,
703
- stepCount: workflow.steps.length,
519
+ executionId: execution.executionId, workflowId: execution.workflowId,
520
+ workflowName: execution.workflowName, stepCount: workflow.steps.length,
704
521
  }, execution.context.metadata.correlationId);
705
522
  }
706
523
  async publishWorkflowCompleted(execution) {
707
524
  await this.publishEvent(WorkflowEvents.WorkflowCompleted, {
708
- executionId: execution.executionId,
709
- workflowId: execution.workflowId,
710
- workflowName: execution.workflowName,
711
- duration: execution.duration || 0,
712
- completedSteps: execution.completedSteps.length,
713
- skippedSteps: execution.skippedSteps.length,
525
+ executionId: execution.executionId, workflowId: execution.workflowId,
526
+ workflowName: execution.workflowName, duration: execution.duration || 0,
527
+ completedSteps: execution.completedSteps.length, skippedSteps: execution.skippedSteps.length,
714
528
  }, execution.context.metadata.correlationId);
715
529
  }
716
530
  async publishWorkflowFailed(execution, failedStep, error) {
717
531
  await this.publishEvent(WorkflowEvents.WorkflowFailed, {
718
- executionId: execution.executionId,
719
- workflowId: execution.workflowId,
720
- workflowName: execution.workflowName,
721
- failedStep,
722
- error,
532
+ executionId: execution.executionId, workflowId: execution.workflowId,
533
+ workflowName: execution.workflowName, failedStep, error,
723
534
  }, execution.context.metadata.correlationId);
724
535
  }
725
536
  async publishStepStarted(execution, step) {
726
537
  await this.publishEvent(WorkflowEvents.StepStarted, {
727
- executionId: execution.executionId,
728
- workflowId: execution.workflowId,
729
- stepId: step.id,
730
- stepName: step.name,
731
- domain: step.domain,
538
+ executionId: execution.executionId, workflowId: execution.workflowId,
539
+ stepId: step.id, stepName: step.name, domain: step.domain,
732
540
  }, execution.context.metadata.correlationId);
733
541
  }
734
542
  async publishStepCompleted(execution, step, result) {
735
543
  await this.publishEvent(WorkflowEvents.StepCompleted, {
736
- executionId: execution.executionId,
737
- workflowId: execution.workflowId,
738
- stepId: step.id,
739
- stepName: step.name,
740
- domain: step.domain,
741
- duration: result.duration,
544
+ executionId: execution.executionId, workflowId: execution.workflowId,
545
+ stepId: step.id, stepName: step.name, domain: step.domain, duration: result.duration,
742
546
  }, execution.context.metadata.correlationId);
743
547
  }
744
548
  async publishStepFailed(execution, step, error) {
745
549
  await this.publishEvent(WorkflowEvents.StepFailed, {
746
- executionId: execution.executionId,
747
- workflowId: execution.workflowId,
748
- stepId: step.id,
749
- stepName: step.name,
750
- domain: step.domain,
751
- error,
550
+ executionId: execution.executionId, workflowId: execution.workflowId,
551
+ stepId: step.id, stepName: step.name, domain: step.domain, error,
752
552
  }, execution.context.metadata.correlationId);
753
553
  }
754
554
  async publishStepSkipped(execution, step) {
755
555
  await this.publishEvent(WorkflowEvents.StepSkipped, {
756
- executionId: execution.executionId,
757
- workflowId: execution.workflowId,
758
- stepId: step.id,
759
- stepName: step.name,
760
- domain: step.domain,
556
+ executionId: execution.executionId, workflowId: execution.workflowId,
557
+ stepId: step.id, stepName: step.name, domain: step.domain,
761
558
  }, execution.context.metadata.correlationId);
762
559
  }
763
560
  // ============================================================================
764
561
  // Private Methods - Workflow Validation
765
562
  // ============================================================================
766
563
  validateWorkflowDefinition(definition) {
767
- if (!definition.id) {
564
+ if (!definition.id)
768
565
  return err(new Error('Workflow ID is required'));
769
- }
770
- if (!definition.name) {
566
+ if (!definition.name)
771
567
  return err(new Error('Workflow name is required'));
772
- }
773
- if (!definition.steps || definition.steps.length === 0) {
568
+ if (!definition.steps || definition.steps.length === 0)
774
569
  return err(new Error('Workflow must have at least one step'));
775
- }
776
- // Validate steps
777
570
  const stepIds = new Set();
778
571
  for (const step of definition.steps) {
779
- if (!step.id) {
572
+ if (!step.id)
780
573
  return err(new Error('Step ID is required'));
781
- }
782
- if (stepIds.has(step.id)) {
574
+ if (stepIds.has(step.id))
783
575
  return err(new Error(`Duplicate step ID: ${step.id}`));
784
- }
785
576
  stepIds.add(step.id);
786
- if (!step.domain) {
577
+ if (!step.domain)
787
578
  return err(new Error(`Step ${step.id} must have a domain`));
788
- }
789
- if (!ALL_DOMAINS.includes(step.domain)) {
579
+ if (!ALL_DOMAINS.includes(step.domain))
790
580
  return err(new Error(`Invalid domain for step ${step.id}: ${step.domain}`));
791
- }
792
- if (!step.action) {
581
+ if (!step.action)
793
582
  return err(new Error(`Step ${step.id} must have an action`));
794
- }
795
- // Validate dependencies
796
583
  if (step.dependsOn) {
797
584
  for (const dep of step.dependsOn) {
798
585
  if (!definition.steps.some((s) => s.id === dep)) {
@@ -801,23 +588,19 @@ export class WorkflowOrchestrator {
801
588
  }
802
589
  }
803
590
  }
804
- // Check for circular dependencies
805
591
  const circularCheck = this.detectCircularDependencies(definition.steps);
806
- if (circularCheck) {
592
+ if (circularCheck)
807
593
  return err(new Error(`Circular dependency detected: ${circularCheck}`));
808
- }
809
594
  return ok(undefined);
810
595
  }
811
596
  detectCircularDependencies(steps) {
812
597
  const visited = new Set();
813
598
  const recursionStack = new Set();
814
599
  const visit = (stepId, path) => {
815
- if (recursionStack.has(stepId)) {
600
+ if (recursionStack.has(stepId))
816
601
  return [...path, stepId].join(' -> ');
817
- }
818
- if (visited.has(stepId)) {
602
+ if (visited.has(stepId))
819
603
  return null;
820
- }
821
604
  visited.add(stepId);
822
605
  recursionStack.add(stepId);
823
606
  const step = steps.find((s) => s.id === stepId);
@@ -842,7 +625,6 @@ export class WorkflowOrchestrator {
842
625
  // Private Methods - Event Triggers
843
626
  // ============================================================================
844
627
  setupEventTriggers() {
845
- // Subscribe to all domain events for trigger matching
846
628
  const subscription = this.eventBus.subscribe('*', async (event) => {
847
629
  await this.handleEventForTriggers(event);
848
630
  });
@@ -850,49 +632,35 @@ export class WorkflowOrchestrator {
850
632
  }
851
633
  registerWorkflowTriggers(_workflow) {
852
634
  // Triggers are evaluated when events arrive via the * subscription
853
- // No additional subscription needed, just store the workflow with triggers
854
635
  }
855
636
  async handleEventForTriggers(event) {
856
637
  for (const workflow of this.workflows.values()) {
857
638
  if (!workflow.triggers)
858
639
  continue;
859
640
  for (const trigger of workflow.triggers) {
860
- // Match event type
861
641
  if (trigger.eventType !== event.type)
862
642
  continue;
863
- // Match source domain
864
643
  if (trigger.sourceDomain && trigger.sourceDomain !== event.source)
865
644
  continue;
866
- // Evaluate condition if present
867
645
  if (trigger.condition) {
868
646
  const context = {
869
- input: { event: event.payload },
870
- results: {},
871
- metadata: {
872
- executionId: '',
873
- workflowId: workflow.id,
874
- startedAt: new Date(),
875
- },
647
+ input: { event: event.payload }, results: {},
648
+ metadata: { executionId: '', workflowId: workflow.id, startedAt: new Date() },
876
649
  };
877
- if (!this.evaluateCondition(trigger.condition, context)) {
650
+ if (!this.evaluateCondition(trigger.condition, context))
878
651
  continue;
879
- }
880
652
  }
881
- // Build input from trigger mapping
882
653
  const input = {};
883
654
  if (trigger.inputMapping) {
884
655
  for (const [targetKey, sourcePath] of Object.entries(trigger.inputMapping)) {
885
656
  const value = this.getValueByPath({ event: event.payload }, sourcePath);
886
- if (value !== undefined) {
657
+ if (value !== undefined)
887
658
  input[targetKey] = value;
888
- }
889
659
  }
890
660
  }
891
661
  else {
892
- // Default: pass entire payload as input
893
662
  input.triggerEvent = event.payload;
894
663
  }
895
- // Execute workflow
896
664
  await this.executeWorkflow(workflow.id, input, event.correlationId);
897
665
  }
898
666
  }
@@ -901,618 +669,10 @@ export class WorkflowOrchestrator {
901
669
  // Private Methods - Built-in Workflows
902
670
  // ============================================================================
903
671
  registerBuiltInWorkflows() {
904
- // 1. Comprehensive Testing Workflow
905
- this.registerWorkflow({
906
- id: 'comprehensive-testing',
907
- name: 'Comprehensive Testing Workflow',
908
- description: 'test-generation -> test-execution -> coverage-analysis -> quality-assessment',
909
- version: '1.0.0',
910
- tags: ['testing', 'quality'],
911
- steps: [
912
- {
913
- id: 'generate-tests',
914
- name: 'Generate Tests',
915
- domain: 'test-generation',
916
- action: 'generateTests',
917
- inputMapping: {
918
- sourceFiles: 'input.sourceFiles',
919
- framework: 'input.framework',
920
- },
921
- outputMapping: {
922
- testFiles: 'generatedTests.files',
923
- testCount: 'generatedTests.count',
924
- },
925
- timeout: 120000,
926
- retry: { maxAttempts: 2, backoffMs: 1000 },
927
- },
928
- {
929
- id: 'execute-tests',
930
- name: 'Execute Tests',
931
- domain: 'test-execution',
932
- action: 'execute',
933
- dependsOn: ['generate-tests'],
934
- inputMapping: {
935
- testFiles: 'results.generatedTests.files',
936
- },
937
- outputMapping: {
938
- runId: 'execution.runId',
939
- passed: 'execution.passed',
940
- failed: 'execution.failed',
941
- },
942
- timeout: 300000,
943
- },
944
- {
945
- id: 'analyze-coverage',
946
- name: 'Analyze Coverage',
947
- domain: 'coverage-analysis',
948
- action: 'analyze',
949
- dependsOn: ['execute-tests'],
950
- inputMapping: {
951
- runId: 'results.execution.runId',
952
- },
953
- outputMapping: {
954
- line: 'coverage.line',
955
- branch: 'coverage.branch',
956
- overall: 'coverage.overall',
957
- },
958
- },
959
- {
960
- id: 'assess-quality',
961
- name: 'Assess Quality',
962
- domain: 'quality-assessment',
963
- action: 'evaluateGate',
964
- dependsOn: ['analyze-coverage'],
965
- inputMapping: {
966
- coverage: 'results.coverage',
967
- testResults: 'results.execution',
968
- },
969
- outputMapping: {
970
- passed: 'quality.gatePassed',
971
- score: 'quality.score',
972
- },
973
- },
974
- {
975
- id: 'generate-more-tests',
976
- name: 'Generate Additional Tests',
977
- domain: 'test-generation',
978
- action: 'generateTests',
979
- dependsOn: ['analyze-coverage'],
980
- condition: {
981
- path: 'results.coverage.overall',
982
- operator: 'lt',
983
- value: 80,
984
- },
985
- inputMapping: {
986
- sourceFiles: 'input.sourceFiles',
987
- targetCoverage: 'input.targetCoverage',
988
- },
989
- continueOnFailure: true,
990
- },
991
- ],
992
- });
993
- // 2. Defect Prevention Workflow
994
- this.registerWorkflow({
995
- id: 'defect-prevention',
996
- name: 'Defect Prevention Workflow',
997
- description: 'code-intelligence (impact) -> defect-intelligence (predict) -> test-generation (for risky areas)',
998
- version: '1.0.0',
999
- tags: ['defect', 'prevention', 'ai'],
1000
- steps: [
1001
- {
1002
- id: 'analyze-impact',
1003
- name: 'Analyze Code Impact',
1004
- domain: 'code-intelligence',
1005
- action: 'analyzeImpact',
1006
- inputMapping: {
1007
- changedFiles: 'input.changedFiles',
1008
- },
1009
- outputMapping: {
1010
- impactedFiles: 'impact.files',
1011
- impactedTests: 'impact.tests',
1012
- riskLevel: 'impact.riskLevel',
1013
- },
1014
- timeout: 60000,
1015
- },
1016
- {
1017
- id: 'predict-defects',
1018
- name: 'Predict Defects',
1019
- domain: 'defect-intelligence',
1020
- action: 'predictDefects',
1021
- dependsOn: ['analyze-impact'],
1022
- inputMapping: {
1023
- files: 'results.impact.files',
1024
- },
1025
- outputMapping: {
1026
- predictions: 'defects.predictions',
1027
- highRiskFiles: 'defects.highRiskFiles',
1028
- },
1029
- },
1030
- {
1031
- id: 'generate-targeted-tests',
1032
- name: 'Generate Targeted Tests',
1033
- domain: 'test-generation',
1034
- action: 'generateTests',
1035
- dependsOn: ['predict-defects'],
1036
- condition: {
1037
- path: 'results.defects.highRiskFiles',
1038
- operator: 'exists',
1039
- value: true,
1040
- },
1041
- inputMapping: {
1042
- sourceFiles: 'results.defects.highRiskFiles',
1043
- priority: 'input.priority',
1044
- },
1045
- },
1046
- ],
1047
- triggers: [
1048
- {
1049
- eventType: 'code-intelligence.ImpactAnalysisCompleted',
1050
- inputMapping: {
1051
- changedFiles: 'event.changedFiles',
1052
- },
1053
- },
1054
- ],
1055
- });
1056
- // 3. Pre-Release Workflow
1057
- this.registerWorkflow({
1058
- id: 'pre-release',
1059
- name: 'Pre-Release Workflow',
1060
- description: 'security-audit -> quality-gate -> deployment-advisor',
1061
- version: '1.0.0',
1062
- tags: ['release', 'security', 'deployment'],
1063
- steps: [
1064
- {
1065
- id: 'security-audit',
1066
- name: 'Security Audit',
1067
- domain: 'security-compliance',
1068
- action: 'runAudit',
1069
- inputMapping: {
1070
- targetFiles: 'input.targetFiles',
1071
- includeDependencies: 'input.includeDependencies',
1072
- },
1073
- outputMapping: {
1074
- vulnerabilities: 'security.vulnerabilities',
1075
- riskScore: 'security.riskScore',
1076
- passed: 'security.passed',
1077
- },
1078
- timeout: 180000,
1079
- },
1080
- {
1081
- id: 'quality-gate',
1082
- name: 'Quality Gate Evaluation',
1083
- domain: 'quality-assessment',
1084
- action: 'evaluateGate',
1085
- dependsOn: ['security-audit'],
1086
- inputMapping: {
1087
- securityResults: 'results.security',
1088
- releaseCandidate: 'input.releaseCandidate',
1089
- },
1090
- outputMapping: {
1091
- passed: 'quality.gatePassed',
1092
- checks: 'quality.checks',
1093
- },
1094
- },
1095
- {
1096
- id: 'deployment-advice',
1097
- name: 'Get Deployment Advice',
1098
- domain: 'quality-assessment',
1099
- action: 'getDeploymentAdvice',
1100
- dependsOn: ['quality-gate'],
1101
- inputMapping: {
1102
- releaseCandidate: 'input.releaseCandidate',
1103
- qualityResults: 'results.quality',
1104
- securityResults: 'results.security',
1105
- },
1106
- outputMapping: {
1107
- decision: 'deployment.decision',
1108
- recommendations: 'deployment.recommendations',
1109
- riskScore: 'deployment.riskScore',
1110
- },
1111
- },
1112
- ],
1113
- triggers: [
1114
- {
1115
- eventType: 'quality-assessment.QualityGateEvaluated',
1116
- condition: {
1117
- path: 'event.passed',
1118
- operator: 'eq',
1119
- value: true,
1120
- },
1121
- },
1122
- ],
1123
- });
1124
- // 4. Continuous Learning Workflow
1125
- this.registerWorkflow({
1126
- id: 'continuous-learning',
1127
- name: 'Continuous Learning Workflow',
1128
- description: 'Collect patterns -> consolidate -> transfer -> optimize',
1129
- version: '1.0.0',
1130
- tags: ['learning', 'optimization', 'ai'],
1131
- steps: [
1132
- {
1133
- id: 'collect-patterns',
1134
- name: 'Collect Patterns',
1135
- domain: 'learning-optimization',
1136
- action: 'runLearningCycle',
1137
- inputMapping: {
1138
- domain: 'input.targetDomain',
1139
- },
1140
- outputMapping: {
1141
- patternsLearned: 'learning.patterns',
1142
- experiencesProcessed: 'learning.experiences',
1143
- },
1144
- },
1145
- {
1146
- id: 'consolidate-patterns',
1147
- name: 'Consolidate Patterns',
1148
- domain: 'learning-optimization',
1149
- action: 'shareCrossDomainLearnings',
1150
- dependsOn: ['collect-patterns'],
1151
- condition: {
1152
- path: 'results.learning.patterns',
1153
- operator: 'gt',
1154
- value: 0,
1155
- },
1156
- outputMapping: {
1157
- knowledgeShared: 'consolidation.shared',
1158
- domainsUpdated: 'consolidation.domains',
1159
- },
1160
- },
1161
- {
1162
- id: 'transfer-knowledge',
1163
- name: 'Transfer Knowledge',
1164
- domain: 'learning-optimization',
1165
- action: 'shareCrossDomainLearnings',
1166
- dependsOn: ['consolidate-patterns'],
1167
- outputMapping: {
1168
- transferSuccessRate: 'transfer.successRate',
1169
- newPatternsCreated: 'transfer.newPatterns',
1170
- },
1171
- },
1172
- {
1173
- id: 'optimize-strategies',
1174
- name: 'Optimize Strategies',
1175
- domain: 'learning-optimization',
1176
- action: 'optimizeAllStrategies',
1177
- dependsOn: ['transfer-knowledge'],
1178
- outputMapping: {
1179
- domainsOptimized: 'optimization.domains',
1180
- avgImprovement: 'optimization.improvement',
1181
- },
1182
- },
1183
- ],
1184
- });
1185
- // 5. Morning Sync Protocol Workflow
1186
- this.registerWorkflow({
1187
- id: 'morning-sync',
1188
- name: 'Morning Sync Protocol',
1189
- description: 'Daily quality synchronization across all domains',
1190
- version: '1.0.0',
1191
- tags: ['protocol', 'daily', 'sync'],
1192
- steps: [
1193
- {
1194
- id: 'collect-metrics',
1195
- name: 'Collect Quality Metrics',
1196
- domain: 'quality-assessment',
1197
- action: 'analyzeQuality',
1198
- inputMapping: {
1199
- sourceFiles: 'input.sourceFiles',
1200
- },
1201
- outputMapping: {
1202
- score: 'metrics.qualityScore',
1203
- },
1204
- },
1205
- {
1206
- id: 'analyze-trends',
1207
- name: 'Analyze Coverage Trends',
1208
- domain: 'coverage-analysis',
1209
- action: 'getTrend',
1210
- inputMapping: {
1211
- timeRange: 'input.timeRange',
1212
- granularity: 'input.granularity',
1213
- },
1214
- outputMapping: {
1215
- trend: 'trends.coverage',
1216
- forecast: 'trends.forecast',
1217
- },
1218
- },
1219
- {
1220
- id: 'check-security',
1221
- name: 'Check Security Posture',
1222
- domain: 'security-compliance',
1223
- action: 'getSecurityPosture',
1224
- outputMapping: {
1225
- overallScore: 'security.score',
1226
- criticalIssues: 'security.critical',
1227
- recommendations: 'security.recommendations',
1228
- },
1229
- },
1230
- {
1231
- id: 'get-defect-predictions',
1232
- name: 'Get Defect Predictions',
1233
- domain: 'defect-intelligence',
1234
- action: 'predictDefects',
1235
- inputMapping: {
1236
- files: 'input.changedFiles',
1237
- },
1238
- outputMapping: {
1239
- predictions: 'defects.predictions',
1240
- },
1241
- },
1242
- {
1243
- id: 'generate-learning-report',
1244
- name: 'Generate Learning Dashboard',
1245
- domain: 'learning-optimization',
1246
- action: 'getLearningDashboard',
1247
- dependsOn: ['collect-metrics', 'analyze-trends', 'check-security', 'get-defect-predictions'],
1248
- outputMapping: {
1249
- learningRate: 'learning.rate',
1250
- topDomains: 'learning.topDomains',
1251
- },
1252
- },
1253
- ],
1254
- });
1255
- // 6. QCSD Ideation Swarm Workflow
1256
- // Per QCSD framework: Quality Criteria sessions during PI/Sprint Planning
1257
- // Primary: qe-quality-criteria-recommender (HTSM v6.3 analysis)
1258
- // Supporting: testability-scoring, qe-risk-assessor, qe-requirements-validator
1259
- // Enhanced: Supports live URL input - extracts website content for analysis
1260
- this.registerWorkflow({
1261
- id: 'qcsd-ideation-swarm',
1262
- name: 'QCSD Ideation Swarm',
1263
- description: 'Quality Conscious Software Delivery ideation phase: [url-extraction] -> [flag-detection] -> quality-criteria (HTSM) -> [testability, risk, requirements, security*, accessibility*, qx*] in parallel -> aggregated report. Supports live website URLs with conditional agent spawning based on HAS_UI, HAS_SECURITY, HAS_UX flags.',
1264
- version: '3.0.0',
1265
- tags: ['qcsd', 'ideation', 'quality-criteria', 'htsm', 'shift-left', 'url-analysis'],
1266
- steps: [
1267
- // Step 0: Optional - Website Content Extraction (for URL input)
1268
- {
1269
- id: 'website-content-extraction',
1270
- name: 'Website Content Extraction',
1271
- domain: 'requirements-validation',
1272
- action: 'extractWebsiteContent',
1273
- inputMapping: {
1274
- url: 'input.url',
1275
- },
1276
- outputMapping: {
1277
- extractedDescription: 'extraction.description',
1278
- extractedFeatures: 'extraction.features',
1279
- extractedAcceptanceCriteria: 'extraction.acceptanceCriteria',
1280
- detectedFlags: 'extraction.flags',
1281
- isWebsite: 'extraction.isWebsite',
1282
- },
1283
- timeout: 60000, // 1 minute for URL fetch
1284
- continueOnFailure: true, // Continue even if URL fetch fails
1285
- },
1286
- // Step 1: Primary - Quality Criteria Analysis (HTSM v6.3)
1287
- {
1288
- id: 'quality-criteria-analysis',
1289
- name: 'HTSM Quality Criteria Analysis',
1290
- domain: 'requirements-validation',
1291
- action: 'analyzeQualityCriteria',
1292
- dependsOn: ['website-content-extraction'],
1293
- inputMapping: {
1294
- targetId: 'input.targetId',
1295
- targetType: 'input.targetType',
1296
- // Use extracted description if available, otherwise use input
1297
- description: 'results.website-content-extraction.extractedDescription || input.description',
1298
- acceptanceCriteria: 'results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria',
1299
- },
1300
- outputMapping: {
1301
- qualityCriteria: 'qualityCriteria.criteria',
1302
- qualityScore: 'qualityCriteria.score',
1303
- },
1304
- timeout: 180000, // 3 minutes for deep analysis
1305
- retry: { maxAttempts: 2, backoffMs: 2000 },
1306
- },
1307
- // Step 2a: Parallel - Testability Scoring
1308
- {
1309
- id: 'testability-assessment',
1310
- name: 'Testability Scoring (10 Principles)',
1311
- domain: 'requirements-validation',
1312
- action: 'assessTestability',
1313
- dependsOn: ['quality-criteria-analysis'],
1314
- inputMapping: {
1315
- targetId: 'input.targetId',
1316
- description: 'results.website-content-extraction.extractedDescription || input.description',
1317
- acceptanceCriteria: 'results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria',
1318
- },
1319
- outputMapping: {
1320
- overallScore: 'testability.overallScore',
1321
- principles: 'testability.principles',
1322
- blockers: 'testability.blockers',
1323
- recommendations: 'testability.recommendations',
1324
- },
1325
- timeout: 120000,
1326
- continueOnFailure: true, // Don't block other assessments
1327
- },
1328
- // Step 2b: Parallel - Risk Assessment
1329
- {
1330
- id: 'risk-assessment',
1331
- name: 'Quality Risk Assessment',
1332
- domain: 'requirements-validation',
1333
- action: 'assessRisks',
1334
- dependsOn: ['quality-criteria-analysis'],
1335
- inputMapping: {
1336
- targetId: 'input.targetId',
1337
- targetType: 'input.targetType',
1338
- description: 'results.website-content-extraction.extractedDescription || input.description',
1339
- },
1340
- outputMapping: {
1341
- overallRisk: 'risks.overallRisk',
1342
- riskScore: 'risks.riskScore',
1343
- factors: 'risks.factors',
1344
- mitigations: 'risks.mitigations',
1345
- },
1346
- timeout: 90000,
1347
- continueOnFailure: true,
1348
- },
1349
- // Step 2c: Parallel - Requirements Validation
1350
- {
1351
- id: 'requirements-validation',
1352
- name: 'Requirements & Acceptance Criteria Validation',
1353
- domain: 'requirements-validation',
1354
- action: 'validateRequirements',
1355
- dependsOn: ['quality-criteria-analysis'],
1356
- inputMapping: {
1357
- targetId: 'input.targetId',
1358
- description: 'results.website-content-extraction.extractedDescription || input.description',
1359
- acceptanceCriteria: 'results.website-content-extraction.extractedAcceptanceCriteria || input.acceptanceCriteria',
1360
- },
1361
- outputMapping: {
1362
- valid: 'requirements.valid',
1363
- issues: 'requirements.issues',
1364
- suggestions: 'requirements.suggestions',
1365
- },
1366
- timeout: 90000,
1367
- continueOnFailure: true,
1368
- },
1369
- // Step 3a: Optional - Security Threat Modeling (if HAS_SECURITY flag is true)
1370
- {
1371
- id: 'security-threat-modeling',
1372
- name: 'Early Security Threat Modeling (STRIDE)',
1373
- domain: 'security-compliance',
1374
- action: 'modelSecurityThreats',
1375
- dependsOn: ['quality-criteria-analysis'],
1376
- // Trigger if explicitly requested OR if website extraction detected security features
1377
- condition: {
1378
- path: 'results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical',
1379
- operator: 'eq',
1380
- value: true,
1381
- },
1382
- inputMapping: {
1383
- targetId: 'input.targetId',
1384
- description: 'results.website-content-extraction.extractedDescription || input.description',
1385
- securityCritical: 'results.website-content-extraction.detectedFlags.hasSecurity || input.securityCritical',
1386
- },
1387
- outputMapping: {
1388
- threats: 'security.threats',
1389
- overallRisk: 'security.overallRisk',
1390
- recommendations: 'security.recommendations',
1391
- },
1392
- timeout: 120000,
1393
- continueOnFailure: true,
1394
- },
1395
- // Step 3b: Optional - Accessibility Audit (if HAS_UI flag is true)
1396
- {
1397
- id: 'accessibility-audit',
1398
- name: 'Accessibility Audit (WCAG 2.2)',
1399
- domain: 'visual-accessibility',
1400
- action: 'auditAccessibility',
1401
- dependsOn: ['quality-criteria-analysis'],
1402
- // Trigger if website has UI components
1403
- condition: {
1404
- path: 'results.website-content-extraction.detectedFlags.hasUI || input.hasUI',
1405
- operator: 'eq',
1406
- value: true,
1407
- },
1408
- inputMapping: {
1409
- targetId: 'input.targetId',
1410
- url: 'input.url',
1411
- description: 'results.website-content-extraction.extractedDescription || input.description',
1412
- features: 'results.website-content-extraction.extractedFeatures',
1413
- },
1414
- outputMapping: {
1415
- wcagLevel: 'accessibility.wcagLevel',
1416
- violations: 'accessibility.violations',
1417
- recommendations: 'accessibility.recommendations',
1418
- },
1419
- timeout: 180000, // 3 minutes for comprehensive audit
1420
- continueOnFailure: true,
1421
- },
1422
- // Step 3c: Optional - Quality Experience Analysis (if HAS_UX flag is true)
1423
- {
1424
- id: 'quality-experience-analysis',
1425
- name: 'Quality Experience Analysis (QX Partner)',
1426
- domain: 'coordination',
1427
- action: 'analyzeQualityExperience',
1428
- dependsOn: ['quality-criteria-analysis'],
1429
- // Trigger if website has UX concerns
1430
- condition: {
1431
- path: 'results.website-content-extraction.detectedFlags.hasUX || input.hasUX',
1432
- operator: 'eq',
1433
- value: true,
1434
- },
1435
- inputMapping: {
1436
- targetId: 'input.targetId',
1437
- url: 'input.url',
1438
- description: 'results.website-content-extraction.extractedDescription || input.description',
1439
- features: 'results.website-content-extraction.extractedFeatures',
1440
- },
1441
- outputMapping: {
1442
- journeys: 'qx.journeys',
1443
- frictionPoints: 'qx.frictionPoints',
1444
- recommendations: 'qx.recommendations',
1445
- },
1446
- timeout: 150000,
1447
- continueOnFailure: true,
1448
- },
1449
- // Step 4: Aggregate Ideation Report (waits for all parallel assessments)
1450
- {
1451
- id: 'aggregate-ideation-report',
1452
- name: 'Generate Ideation Report',
1453
- domain: 'requirements-validation',
1454
- action: 'generateIdeationReport',
1455
- dependsOn: [
1456
- 'quality-criteria-analysis',
1457
- 'testability-assessment',
1458
- 'risk-assessment',
1459
- 'requirements-validation',
1460
- 'security-threat-modeling', // Optional - may be skipped
1461
- 'accessibility-audit', // Optional - may be skipped
1462
- 'quality-experience-analysis', // Optional - may be skipped
1463
- ],
1464
- inputMapping: {
1465
- targetId: 'input.targetId',
1466
- targetType: 'input.targetType',
1467
- },
1468
- outputMapping: {
1469
- report: 'ideation.report',
1470
- readyForDevelopment: 'ideation.readyForDevelopment',
1471
- blockers: 'ideation.blockers',
1472
- recommendations: 'ideation.recommendations',
1473
- testStrategy: 'ideation.testStrategy',
1474
- },
1475
- timeout: 60000,
1476
- },
1477
- // Step 5: Store learnings for cross-phase feedback
1478
- {
1479
- id: 'store-ideation-learnings',
1480
- name: 'Store Ideation Learnings',
1481
- domain: 'learning-optimization',
1482
- action: 'storeIdeationLearnings',
1483
- dependsOn: ['aggregate-ideation-report'],
1484
- inputMapping: {
1485
- targetId: 'input.targetId',
1486
- report: 'results.ideation.report',
1487
- },
1488
- outputMapping: {
1489
- stored: 'learning.stored',
1490
- patternId: 'learning.patternId',
1491
- },
1492
- continueOnFailure: true,
1493
- },
1494
- ],
1495
- triggers: [
1496
- {
1497
- eventType: 'requirements-validation.EpicCreated',
1498
- inputMapping: {
1499
- targetId: 'event.epicId',
1500
- targetType: 'event.type',
1501
- description: 'event.description',
1502
- acceptanceCriteria: 'event.acceptanceCriteria',
1503
- },
1504
- },
1505
- {
1506
- eventType: 'requirements-validation.SprintPlanningStarted',
1507
- inputMapping: {
1508
- targetId: 'event.sprintId',
1509
- targetType: 'event.type',
1510
- description: 'event.description',
1511
- acceptanceCriteria: 'event.acceptanceCriteria',
1512
- },
1513
- },
1514
- ],
1515
- });
672
+ const builtInWorkflows = getBuiltInWorkflows();
673
+ for (const workflow of builtInWorkflows) {
674
+ this.registerWorkflow(workflow);
675
+ }
1516
676
  }
1517
677
  // ============================================================================
1518
678
  // Private Methods - Persistence
@@ -1534,16 +694,8 @@ export class WorkflowOrchestrator {
1534
694
  async persistWorkflows() {
1535
695
  try {
1536
696
  for (const workflow of this.workflows.values()) {
1537
- // Don't persist built-in workflows
1538
- if ([
1539
- 'comprehensive-testing',
1540
- 'defect-prevention',
1541
- 'pre-release',
1542
- 'continuous-learning',
1543
- 'morning-sync',
1544
- ].includes(workflow.id)) {
697
+ if (BUILTIN_WORKFLOW_IDS.includes(workflow.id))
1545
698
  continue;
1546
- }
1547
699
  await this.memory.set(`workflow:definition:${workflow.id}`, workflow, { namespace: 'coordination', persist: true });
1548
700
  }
1549
701
  }
@@ -1553,13 +705,8 @@ export class WorkflowOrchestrator {
1553
705
  }
1554
706
  async persistExecution(execution) {
1555
707
  try {
1556
- // Convert Map to object for serialization
1557
- const serializable = {
1558
- ...execution,
1559
- stepResults: Object.fromEntries(execution.stepResults),
1560
- };
1561
- await this.memory.set(`workflow:execution:${execution.executionId}`, serializable, { namespace: 'coordination', ttl: 86400 * 7 } // 7 days
1562
- );
708
+ const serializable = { ...execution, stepResults: Object.fromEntries(execution.stepResults) };
709
+ await this.memory.set(`workflow:execution:${execution.executionId}`, serializable, { namespace: 'coordination', ttl: 86400 * 7 });
1563
710
  }
1564
711
  catch (error) {
1565
712
  console.error('Failed to persist execution:', error);
@@ -1571,20 +718,6 @@ export class WorkflowOrchestrator {
1571
718
  delay(ms) {
1572
719
  return new Promise((resolve) => setTimeout(resolve, ms));
1573
720
  }
1574
- /**
1575
- * Register a domain action handler
1576
- */
1577
- registerAction(domain, action, handler) {
1578
- // Guard against prototype pollution
1579
- const dangerousKeys = ['__proto__', 'constructor', 'prototype'];
1580
- if (dangerousKeys.includes(domain) || dangerousKeys.includes(action)) {
1581
- throw new Error('Invalid domain or action name: contains dangerous prototype key');
1582
- }
1583
- if (!this.actionRegistry[domain]) {
1584
- this.actionRegistry[domain] = {};
1585
- }
1586
- this.actionRegistry[domain][action] = handler;
1587
- }
1588
721
  }
1589
722
  // ============================================================================
1590
723
  // Factory Function