agentic-qe 3.2.3 → 3.3.0

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 (340) hide show
  1. package/.claude/agents/v3/qe-accessibility-auditor.md +90 -0
  2. package/README.md +43 -5
  3. package/package.json +3 -2
  4. package/scripts/cloud-db-config.json +37 -0
  5. package/scripts/cloud-db-connect.sh +37 -0
  6. package/scripts/cloud-db-tunnel.sh +23 -0
  7. package/v3/CHANGELOG.md +165 -0
  8. package/v3/README.md +59 -1
  9. package/v3/assets/agents/v3/qe-accessibility-auditor.md +90 -0
  10. package/v3/dist/adapters/claude-flow/index.d.ts +54 -0
  11. package/v3/dist/adapters/claude-flow/index.d.ts.map +1 -0
  12. package/v3/dist/adapters/claude-flow/index.js +79 -0
  13. package/v3/dist/adapters/claude-flow/index.js.map +1 -0
  14. package/v3/dist/adapters/claude-flow/model-router-bridge.d.ts +70 -0
  15. package/v3/dist/adapters/claude-flow/model-router-bridge.d.ts.map +1 -0
  16. package/v3/dist/adapters/claude-flow/model-router-bridge.js +203 -0
  17. package/v3/dist/adapters/claude-flow/model-router-bridge.js.map +1 -0
  18. package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts +73 -0
  19. package/v3/dist/adapters/claude-flow/pretrain-bridge.d.ts.map +1 -0
  20. package/v3/dist/adapters/claude-flow/pretrain-bridge.js +276 -0
  21. package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -0
  22. package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts +70 -0
  23. package/v3/dist/adapters/claude-flow/trajectory-bridge.d.ts.map +1 -0
  24. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +205 -0
  25. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -0
  26. package/v3/dist/adapters/claude-flow/types.d.ts +99 -0
  27. package/v3/dist/adapters/claude-flow/types.d.ts.map +1 -0
  28. package/v3/dist/adapters/claude-flow/types.js +6 -0
  29. package/v3/dist/adapters/claude-flow/types.js.map +1 -0
  30. package/v3/dist/causal-discovery/causal-graph.d.ts +80 -1
  31. package/v3/dist/causal-discovery/causal-graph.d.ts.map +1 -1
  32. package/v3/dist/causal-discovery/causal-graph.js +111 -1
  33. package/v3/dist/causal-discovery/causal-graph.js.map +1 -1
  34. package/v3/dist/cli/bundle.js +11612 -4929
  35. package/v3/dist/cli/commands/claude-flow-setup.d.ts +82 -0
  36. package/v3/dist/cli/commands/claude-flow-setup.d.ts.map +1 -0
  37. package/v3/dist/cli/commands/claude-flow-setup.js +334 -0
  38. package/v3/dist/cli/commands/claude-flow-setup.js.map +1 -0
  39. package/v3/dist/cli/commands/hooks.d.ts +2 -0
  40. package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
  41. package/v3/dist/cli/commands/hooks.js +13 -2
  42. package/v3/dist/cli/commands/hooks.js.map +1 -1
  43. package/v3/dist/cli/commands/init.d.ts +19 -0
  44. package/v3/dist/cli/commands/init.d.ts.map +1 -0
  45. package/v3/dist/cli/commands/init.js +345 -0
  46. package/v3/dist/cli/commands/init.js.map +1 -0
  47. package/v3/dist/cli/index.js +110 -2
  48. package/v3/dist/cli/index.js.map +1 -1
  49. package/v3/dist/coordination/mincut/interfaces.d.ts +8 -2
  50. package/v3/dist/coordination/mincut/interfaces.d.ts.map +1 -1
  51. package/v3/dist/coordination/mincut/interfaces.js.map +1 -1
  52. package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts +5 -0
  53. package/v3/dist/coordination/mincut/mincut-health-monitor.d.ts.map +1 -1
  54. package/v3/dist/coordination/mincut/mincut-health-monitor.js +22 -4
  55. package/v3/dist/coordination/mincut/mincut-health-monitor.js.map +1 -1
  56. package/v3/dist/coordination/mincut/queen-integration.d.ts +4 -0
  57. package/v3/dist/coordination/mincut/queen-integration.d.ts.map +1 -1
  58. package/v3/dist/coordination/mincut/queen-integration.js +14 -1
  59. package/v3/dist/coordination/mincut/queen-integration.js.map +1 -1
  60. package/v3/dist/coordination/queen-coordinator.d.ts +5 -0
  61. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  62. package/v3/dist/coordination/queen-coordinator.js +45 -7
  63. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  64. package/v3/dist/domains/learning-optimization/coordinator.d.ts +5 -0
  65. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  66. package/v3/dist/domains/learning-optimization/coordinator.js +79 -0
  67. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  68. package/v3/dist/domains/test-generation/coherence-gate.d.ts +245 -0
  69. package/v3/dist/domains/test-generation/coherence-gate.d.ts.map +1 -0
  70. package/v3/dist/domains/test-generation/coherence-gate.js +454 -0
  71. package/v3/dist/domains/test-generation/coherence-gate.js.map +1 -0
  72. package/v3/dist/domains/test-generation/coordinator.d.ts +32 -1
  73. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  74. package/v3/dist/domains/test-generation/coordinator.js +70 -1
  75. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  76. package/v3/dist/domains/test-generation/index.d.ts +1 -0
  77. package/v3/dist/domains/test-generation/index.d.ts.map +1 -1
  78. package/v3/dist/domains/test-generation/index.js +4 -0
  79. package/v3/dist/domains/test-generation/index.js.map +1 -1
  80. package/v3/dist/domains/test-generation/services/index.d.ts +1 -0
  81. package/v3/dist/domains/test-generation/services/index.d.ts.map +1 -1
  82. package/v3/dist/domains/test-generation/services/index.js +2 -0
  83. package/v3/dist/domains/test-generation/services/index.js.map +1 -1
  84. package/v3/dist/domains/visual-accessibility/index.d.ts +2 -1
  85. package/v3/dist/domains/visual-accessibility/index.d.ts.map +1 -1
  86. package/v3/dist/domains/visual-accessibility/index.js +1 -0
  87. package/v3/dist/domains/visual-accessibility/index.js.map +1 -1
  88. package/v3/dist/domains/visual-accessibility/interfaces.d.ts +131 -0
  89. package/v3/dist/domains/visual-accessibility/interfaces.d.ts.map +1 -1
  90. package/v3/dist/domains/visual-accessibility/plugin.d.ts +26 -0
  91. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  92. package/v3/dist/domains/visual-accessibility/plugin.js +151 -0
  93. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  94. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts +42 -1
  95. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.d.ts.map +1 -1
  96. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js +69 -0
  97. package/v3/dist/domains/visual-accessibility/services/accessibility-tester.js.map +1 -1
  98. package/v3/dist/domains/visual-accessibility/services/eu-compliance.d.ts +138 -0
  99. package/v3/dist/domains/visual-accessibility/services/eu-compliance.d.ts.map +1 -0
  100. package/v3/dist/domains/visual-accessibility/services/eu-compliance.js +830 -0
  101. package/v3/dist/domains/visual-accessibility/services/eu-compliance.js.map +1 -0
  102. package/v3/dist/domains/visual-accessibility/services/index.d.ts +1 -0
  103. package/v3/dist/domains/visual-accessibility/services/index.d.ts.map +1 -1
  104. package/v3/dist/domains/visual-accessibility/services/index.js +1 -0
  105. package/v3/dist/domains/visual-accessibility/services/index.js.map +1 -1
  106. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts +84 -0
  107. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -0
  108. package/v3/dist/init/enhancements/claude-flow-adapter.js +250 -0
  109. package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -0
  110. package/v3/dist/init/enhancements/detector.d.ts +10 -0
  111. package/v3/dist/init/enhancements/detector.d.ts.map +1 -0
  112. package/v3/dist/init/enhancements/detector.js +87 -0
  113. package/v3/dist/init/enhancements/detector.js.map +1 -0
  114. package/v3/dist/init/enhancements/index.d.ts +13 -0
  115. package/v3/dist/init/enhancements/index.d.ts.map +1 -0
  116. package/v3/dist/init/enhancements/index.js +25 -0
  117. package/v3/dist/init/enhancements/index.js.map +1 -0
  118. package/v3/dist/init/enhancements/types.d.ts +93 -0
  119. package/v3/dist/init/enhancements/types.d.ts.map +1 -0
  120. package/v3/dist/init/enhancements/types.js +6 -0
  121. package/v3/dist/init/enhancements/types.js.map +1 -0
  122. package/v3/dist/init/index.d.ts +8 -0
  123. package/v3/dist/init/index.d.ts.map +1 -1
  124. package/v3/dist/init/index.js +4 -0
  125. package/v3/dist/init/index.js.map +1 -1
  126. package/v3/dist/init/migration/config-migrator.d.ts +31 -0
  127. package/v3/dist/init/migration/config-migrator.d.ts.map +1 -0
  128. package/v3/dist/init/migration/config-migrator.js +133 -0
  129. package/v3/dist/init/migration/config-migrator.js.map +1 -0
  130. package/v3/dist/init/migration/data-migrator.d.ts +72 -0
  131. package/v3/dist/init/migration/data-migrator.d.ts.map +1 -0
  132. package/v3/dist/init/migration/data-migrator.js +233 -0
  133. package/v3/dist/init/migration/data-migrator.js.map +1 -0
  134. package/v3/dist/init/migration/detector.d.ts +44 -0
  135. package/v3/dist/init/migration/detector.d.ts.map +1 -0
  136. package/v3/dist/init/migration/detector.js +106 -0
  137. package/v3/dist/init/migration/detector.js.map +1 -0
  138. package/v3/dist/init/migration/index.d.ts +8 -0
  139. package/v3/dist/init/migration/index.d.ts.map +1 -0
  140. package/v3/dist/init/migration/index.js +8 -0
  141. package/v3/dist/init/migration/index.js.map +1 -0
  142. package/v3/dist/init/orchestrator.d.ts +68 -0
  143. package/v3/dist/init/orchestrator.d.ts.map +1 -0
  144. package/v3/dist/init/orchestrator.js +239 -0
  145. package/v3/dist/init/orchestrator.js.map +1 -0
  146. package/v3/dist/init/phases/01-detection.d.ts +30 -0
  147. package/v3/dist/init/phases/01-detection.d.ts.map +1 -0
  148. package/v3/dist/init/phases/01-detection.js +143 -0
  149. package/v3/dist/init/phases/01-detection.js.map +1 -0
  150. package/v3/dist/init/phases/02-analysis.d.ts +18 -0
  151. package/v3/dist/init/phases/02-analysis.d.ts.map +1 -0
  152. package/v3/dist/init/phases/02-analysis.js +28 -0
  153. package/v3/dist/init/phases/02-analysis.js.map +1 -0
  154. package/v3/dist/init/phases/03-configuration.d.ts +26 -0
  155. package/v3/dist/init/phases/03-configuration.d.ts.map +1 -0
  156. package/v3/dist/init/phases/03-configuration.js +98 -0
  157. package/v3/dist/init/phases/03-configuration.js.map +1 -0
  158. package/v3/dist/init/phases/04-database.d.ts +22 -0
  159. package/v3/dist/init/phases/04-database.d.ts.map +1 -0
  160. package/v3/dist/init/phases/04-database.js +88 -0
  161. package/v3/dist/init/phases/04-database.js.map +1 -0
  162. package/v3/dist/init/phases/05-learning.d.ts +28 -0
  163. package/v3/dist/init/phases/05-learning.d.ts.map +1 -0
  164. package/v3/dist/init/phases/05-learning.js +98 -0
  165. package/v3/dist/init/phases/05-learning.js.map +1 -0
  166. package/v3/dist/init/phases/06-code-intelligence.d.ts +33 -0
  167. package/v3/dist/init/phases/06-code-intelligence.d.ts.map +1 -0
  168. package/v3/dist/init/phases/06-code-intelligence.js +115 -0
  169. package/v3/dist/init/phases/06-code-intelligence.js.map +1 -0
  170. package/v3/dist/init/phases/07-hooks.d.ts +27 -0
  171. package/v3/dist/init/phases/07-hooks.d.ts.map +1 -0
  172. package/v3/dist/init/phases/07-hooks.js +209 -0
  173. package/v3/dist/init/phases/07-hooks.js.map +1 -0
  174. package/v3/dist/init/phases/08-mcp.d.ts +22 -0
  175. package/v3/dist/init/phases/08-mcp.d.ts.map +1 -0
  176. package/v3/dist/init/phases/08-mcp.js +62 -0
  177. package/v3/dist/init/phases/08-mcp.js.map +1 -0
  178. package/v3/dist/init/phases/09-assets.d.ts +23 -0
  179. package/v3/dist/init/phases/09-assets.d.ts.map +1 -0
  180. package/v3/dist/init/phases/09-assets.js +82 -0
  181. package/v3/dist/init/phases/09-assets.js.map +1 -0
  182. package/v3/dist/init/phases/10-workers.d.ts +23 -0
  183. package/v3/dist/init/phases/10-workers.d.ts.map +1 -0
  184. package/v3/dist/init/phases/10-workers.js +111 -0
  185. package/v3/dist/init/phases/10-workers.js.map +1 -0
  186. package/v3/dist/init/phases/11-claude-md.d.ts +26 -0
  187. package/v3/dist/init/phases/11-claude-md.d.ts.map +1 -0
  188. package/v3/dist/init/phases/11-claude-md.js +121 -0
  189. package/v3/dist/init/phases/11-claude-md.js.map +1 -0
  190. package/v3/dist/init/phases/12-verification.d.ts +38 -0
  191. package/v3/dist/init/phases/12-verification.d.ts.map +1 -0
  192. package/v3/dist/init/phases/12-verification.js +187 -0
  193. package/v3/dist/init/phases/12-verification.js.map +1 -0
  194. package/v3/dist/init/phases/index.d.ts +46 -0
  195. package/v3/dist/init/phases/index.d.ts.map +1 -0
  196. package/v3/dist/init/phases/index.js +64 -0
  197. package/v3/dist/init/phases/index.js.map +1 -0
  198. package/v3/dist/init/phases/phase-interface.d.ts +193 -0
  199. package/v3/dist/init/phases/phase-interface.d.ts.map +1 -0
  200. package/v3/dist/init/phases/phase-interface.js +119 -0
  201. package/v3/dist/init/phases/phase-interface.js.map +1 -0
  202. package/v3/dist/integrations/coherence/coherence-service.d.ts +323 -0
  203. package/v3/dist/integrations/coherence/coherence-service.d.ts.map +1 -0
  204. package/v3/dist/integrations/coherence/coherence-service.js +799 -0
  205. package/v3/dist/integrations/coherence/coherence-service.js.map +1 -0
  206. package/v3/dist/integrations/coherence/engines/category-adapter.d.ts +170 -0
  207. package/v3/dist/integrations/coherence/engines/category-adapter.d.ts.map +1 -0
  208. package/v3/dist/integrations/coherence/engines/category-adapter.js +403 -0
  209. package/v3/dist/integrations/coherence/engines/category-adapter.js.map +1 -0
  210. package/v3/dist/integrations/coherence/engines/causal-adapter.d.ts +159 -0
  211. package/v3/dist/integrations/coherence/engines/causal-adapter.d.ts.map +1 -0
  212. package/v3/dist/integrations/coherence/engines/causal-adapter.js +348 -0
  213. package/v3/dist/integrations/coherence/engines/causal-adapter.js.map +1 -0
  214. package/v3/dist/integrations/coherence/engines/cohomology-adapter.d.ts +174 -0
  215. package/v3/dist/integrations/coherence/engines/cohomology-adapter.d.ts.map +1 -0
  216. package/v3/dist/integrations/coherence/engines/cohomology-adapter.js +401 -0
  217. package/v3/dist/integrations/coherence/engines/cohomology-adapter.js.map +1 -0
  218. package/v3/dist/integrations/coherence/engines/homotopy-adapter.d.ts +201 -0
  219. package/v3/dist/integrations/coherence/engines/homotopy-adapter.d.ts.map +1 -0
  220. package/v3/dist/integrations/coherence/engines/homotopy-adapter.js +324 -0
  221. package/v3/dist/integrations/coherence/engines/homotopy-adapter.js.map +1 -0
  222. package/v3/dist/integrations/coherence/engines/index.d.ts +20 -0
  223. package/v3/dist/integrations/coherence/engines/index.d.ts.map +1 -0
  224. package/v3/dist/integrations/coherence/engines/index.js +26 -0
  225. package/v3/dist/integrations/coherence/engines/index.js.map +1 -0
  226. package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts +193 -0
  227. package/v3/dist/integrations/coherence/engines/spectral-adapter.d.ts.map +1 -0
  228. package/v3/dist/integrations/coherence/engines/spectral-adapter.js +476 -0
  229. package/v3/dist/integrations/coherence/engines/spectral-adapter.js.map +1 -0
  230. package/v3/dist/integrations/coherence/engines/witness-adapter.d.ts +175 -0
  231. package/v3/dist/integrations/coherence/engines/witness-adapter.d.ts.map +1 -0
  232. package/v3/dist/integrations/coherence/engines/witness-adapter.js +377 -0
  233. package/v3/dist/integrations/coherence/engines/witness-adapter.js.map +1 -0
  234. package/v3/dist/integrations/coherence/index.d.ts +84 -0
  235. package/v3/dist/integrations/coherence/index.d.ts.map +1 -0
  236. package/v3/dist/integrations/coherence/index.js +114 -0
  237. package/v3/dist/integrations/coherence/index.js.map +1 -0
  238. package/v3/dist/integrations/coherence/threshold-tuner.d.ts +396 -0
  239. package/v3/dist/integrations/coherence/threshold-tuner.d.ts.map +1 -0
  240. package/v3/dist/integrations/coherence/threshold-tuner.js +538 -0
  241. package/v3/dist/integrations/coherence/threshold-tuner.js.map +1 -0
  242. package/v3/dist/integrations/coherence/types.d.ts +879 -0
  243. package/v3/dist/integrations/coherence/types.d.ts.map +1 -0
  244. package/v3/dist/integrations/coherence/types.js +134 -0
  245. package/v3/dist/integrations/coherence/types.js.map +1 -0
  246. package/v3/dist/integrations/coherence/wasm-loader.d.ts +351 -0
  247. package/v3/dist/integrations/coherence/wasm-loader.d.ts.map +1 -0
  248. package/v3/dist/integrations/coherence/wasm-loader.js +842 -0
  249. package/v3/dist/integrations/coherence/wasm-loader.js.map +1 -0
  250. package/v3/dist/integrations/embeddings/index/HNSWIndex.d.ts.map +1 -1
  251. package/v3/dist/integrations/embeddings/index/HNSWIndex.js +4 -1
  252. package/v3/dist/integrations/embeddings/index/HNSWIndex.js.map +1 -1
  253. package/v3/dist/kernel/interfaces.d.ts +8 -1
  254. package/v3/dist/kernel/interfaces.d.ts.map +1 -1
  255. package/v3/dist/learning/aqe-learning-engine.d.ts +272 -0
  256. package/v3/dist/learning/aqe-learning-engine.d.ts.map +1 -0
  257. package/v3/dist/learning/aqe-learning-engine.js +708 -0
  258. package/v3/dist/learning/aqe-learning-engine.js.map +1 -0
  259. package/v3/dist/learning/causal-verifier.d.ts +244 -0
  260. package/v3/dist/learning/causal-verifier.d.ts.map +1 -0
  261. package/v3/dist/learning/causal-verifier.js +300 -0
  262. package/v3/dist/learning/causal-verifier.js.map +1 -0
  263. package/v3/dist/learning/experience-capture.d.ts +266 -0
  264. package/v3/dist/learning/experience-capture.d.ts.map +1 -0
  265. package/v3/dist/learning/experience-capture.js +647 -0
  266. package/v3/dist/learning/experience-capture.js.map +1 -0
  267. package/v3/dist/learning/index.d.ts +8 -0
  268. package/v3/dist/learning/index.d.ts.map +1 -1
  269. package/v3/dist/learning/index.js +16 -0
  270. package/v3/dist/learning/index.js.map +1 -1
  271. package/v3/dist/learning/memory-auditor.d.ts +235 -0
  272. package/v3/dist/learning/memory-auditor.d.ts.map +1 -0
  273. package/v3/dist/learning/memory-auditor.js +478 -0
  274. package/v3/dist/learning/memory-auditor.js.map +1 -0
  275. package/v3/dist/learning/pattern-store.d.ts.map +1 -1
  276. package/v3/dist/learning/pattern-store.js +27 -6
  277. package/v3/dist/learning/pattern-store.js.map +1 -1
  278. package/v3/dist/learning/qe-patterns.d.ts +15 -1
  279. package/v3/dist/learning/qe-patterns.d.ts.map +1 -1
  280. package/v3/dist/learning/qe-patterns.js +26 -5
  281. package/v3/dist/learning/qe-patterns.js.map +1 -1
  282. package/v3/dist/learning/qe-reasoning-bank.d.ts +38 -2
  283. package/v3/dist/learning/qe-reasoning-bank.d.ts.map +1 -1
  284. package/v3/dist/learning/qe-reasoning-bank.js +86 -4
  285. package/v3/dist/learning/qe-reasoning-bank.js.map +1 -1
  286. package/v3/dist/learning/real-qe-reasoning-bank.d.ts +32 -2
  287. package/v3/dist/learning/real-qe-reasoning-bank.d.ts.map +1 -1
  288. package/v3/dist/learning/real-qe-reasoning-bank.js +61 -6
  289. package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
  290. package/v3/dist/mcp/bundle.js +6303 -266
  291. package/v3/dist/mcp/tools/coherence/audit.d.ts +107 -0
  292. package/v3/dist/mcp/tools/coherence/audit.d.ts.map +1 -0
  293. package/v3/dist/mcp/tools/coherence/audit.js +236 -0
  294. package/v3/dist/mcp/tools/coherence/audit.js.map +1 -0
  295. package/v3/dist/mcp/tools/coherence/check.d.ts +106 -0
  296. package/v3/dist/mcp/tools/coherence/check.d.ts.map +1 -0
  297. package/v3/dist/mcp/tools/coherence/check.js +205 -0
  298. package/v3/dist/mcp/tools/coherence/check.js.map +1 -0
  299. package/v3/dist/mcp/tools/coherence/collapse.d.ts +123 -0
  300. package/v3/dist/mcp/tools/coherence/collapse.d.ts.map +1 -0
  301. package/v3/dist/mcp/tools/coherence/collapse.js +279 -0
  302. package/v3/dist/mcp/tools/coherence/collapse.js.map +1 -0
  303. package/v3/dist/mcp/tools/coherence/consensus.d.ts +100 -0
  304. package/v3/dist/mcp/tools/coherence/consensus.d.ts.map +1 -0
  305. package/v3/dist/mcp/tools/coherence/consensus.js +201 -0
  306. package/v3/dist/mcp/tools/coherence/consensus.js.map +1 -0
  307. package/v3/dist/mcp/tools/coherence/index.d.ts +31 -0
  308. package/v3/dist/mcp/tools/coherence/index.d.ts.map +1 -0
  309. package/v3/dist/mcp/tools/coherence/index.js +42 -0
  310. package/v3/dist/mcp/tools/coherence/index.js.map +1 -0
  311. package/v3/dist/mcp/tools/index.d.ts +6 -1
  312. package/v3/dist/mcp/tools/index.d.ts.map +1 -1
  313. package/v3/dist/mcp/tools/index.js +9 -1
  314. package/v3/dist/mcp/tools/index.js.map +1 -1
  315. package/v3/dist/mcp/tools/mincut/index.d.ts +1 -1
  316. package/v3/dist/mcp/tools/mincut/index.d.ts.map +1 -1
  317. package/v3/dist/mcp/tools/mincut/index.js.map +1 -1
  318. package/v3/dist/mcp/tools/registry.d.ts +4 -0
  319. package/v3/dist/mcp/tools/registry.d.ts.map +1 -1
  320. package/v3/dist/mcp/tools/registry.js +5 -0
  321. package/v3/dist/mcp/tools/registry.js.map +1 -1
  322. package/v3/dist/mcp/types.d.ts +1 -1
  323. package/v3/dist/mcp/types.d.ts.map +1 -1
  324. package/v3/dist/strange-loop/belief-reconciler.d.ts +357 -0
  325. package/v3/dist/strange-loop/belief-reconciler.d.ts.map +1 -0
  326. package/v3/dist/strange-loop/belief-reconciler.js +696 -0
  327. package/v3/dist/strange-loop/belief-reconciler.js.map +1 -0
  328. package/v3/dist/strange-loop/index.d.ts +1 -0
  329. package/v3/dist/strange-loop/index.d.ts.map +1 -1
  330. package/v3/dist/strange-loop/index.js +2 -0
  331. package/v3/dist/strange-loop/index.js.map +1 -1
  332. package/v3/dist/strange-loop/strange-loop.d.ts +177 -5
  333. package/v3/dist/strange-loop/strange-loop.d.ts.map +1 -1
  334. package/v3/dist/strange-loop/strange-loop.js +452 -9
  335. package/v3/dist/strange-loop/strange-loop.js.map +1 -1
  336. package/v3/dist/strange-loop/types.d.ts +205 -1
  337. package/v3/dist/strange-loop/types.d.ts.map +1 -1
  338. package/v3/dist/strange-loop/types.js +5 -0
  339. package/v3/dist/strange-loop/types.js.map +1 -1
  340. package/v3/package.json +5 -1
@@ -0,0 +1,143 @@
1
+ /**
2
+ * Phase 01: Detection
3
+ * Detects existing AQE v2 installation and v3 markers
4
+ */
5
+ import { existsSync } from 'fs';
6
+ import { join } from 'path';
7
+ import { createRequire } from 'module';
8
+ import { BasePhase, } from './phase-interface.js';
9
+ const require = createRequire(import.meta.url);
10
+ /**
11
+ * Detection phase - checks for existing AQE installations
12
+ */
13
+ export class DetectionPhase extends BasePhase {
14
+ name = 'detection';
15
+ description = 'Detect existing installations';
16
+ order = 10;
17
+ critical = true;
18
+ async run(context) {
19
+ const { projectRoot } = context;
20
+ // Detect v2 installation
21
+ const v2Detection = await this.detectV2Installation(projectRoot);
22
+ // Check for v3 markers
23
+ const v3ConfigYaml = existsSync(join(projectRoot, '.agentic-qe', 'config.yaml'));
24
+ const v3Version = v2Detection.version?.startsWith('3.');
25
+ const v2Detected = v2Detection.detected;
26
+ const v3Detected = v3ConfigYaml || v3Version || false;
27
+ const freshInstall = !v2Detected && !v3Detected;
28
+ // Store v2 detection in context for other phases
29
+ context.v2Detection = v2Detection;
30
+ if (v2Detected && !context.options.autoMigrate) {
31
+ context.services.log('');
32
+ context.services.log('═'.repeat(60));
33
+ context.services.log('⚠️ EXISTING V2 INSTALLATION DETECTED');
34
+ context.services.log('═'.repeat(60));
35
+ context.services.log('');
36
+ context.services.log('Found v2 installation at:');
37
+ if (v2Detection.hasMemoryDb) {
38
+ context.services.log(' • Memory DB: .agentic-qe/memory.db');
39
+ }
40
+ if (v2Detection.hasConfig) {
41
+ context.services.log(' • Config: .agentic-qe/config/');
42
+ }
43
+ if (v2Detection.hasAgents) {
44
+ context.services.log(' • Agents: .claude/agents/');
45
+ }
46
+ context.services.log('');
47
+ context.services.log('📋 RECOMMENDED: Run with --auto-migrate:');
48
+ context.services.log(' aqe init --auto-migrate');
49
+ context.services.log('');
50
+ return {
51
+ v2Detected: true,
52
+ v3Detected,
53
+ freshInstall: false,
54
+ v2Detection,
55
+ };
56
+ }
57
+ return {
58
+ v2Detected,
59
+ v3Detected,
60
+ freshInstall,
61
+ v2Detection,
62
+ };
63
+ }
64
+ /**
65
+ * Detect existing v2 AQE installation
66
+ */
67
+ async detectV2Installation(projectRoot) {
68
+ const memoryDbPath = join(projectRoot, '.agentic-qe', 'memory.db');
69
+ const configPath = join(projectRoot, '.agentic-qe', 'config');
70
+ const agentsPath = join(projectRoot, '.claude', 'agents');
71
+ const v2ConfigFile = join(projectRoot, '.agentic-qe', 'config', 'learning.json');
72
+ const hasMemoryDb = existsSync(memoryDbPath);
73
+ const hasConfig = existsSync(configPath);
74
+ const hasAgents = existsSync(agentsPath);
75
+ // Check for v2-specific markers
76
+ const hasV2ConfigFiles = existsSync(v2ConfigFile);
77
+ const hasV3ConfigYaml = existsSync(join(projectRoot, '.agentic-qe', 'config.yaml'));
78
+ // Try to read version from memory.db
79
+ let version;
80
+ let isV3Installation = false;
81
+ if (hasMemoryDb) {
82
+ version = this.readVersionFromDb(memoryDbPath);
83
+ if (version) {
84
+ isV3Installation = version.startsWith('3.');
85
+ }
86
+ else {
87
+ version = '2.x.x';
88
+ }
89
+ }
90
+ // Detected as v2 if:
91
+ // 1. Has memory.db but no v3 version marker, OR
92
+ // 2. Has v2 config files but no v3 config.yaml
93
+ const detected = !isV3Installation && hasMemoryDb && (!version?.startsWith('3.') ||
94
+ (hasV2ConfigFiles && !hasV3ConfigYaml));
95
+ return {
96
+ detected,
97
+ memoryDbPath: hasMemoryDb ? memoryDbPath : undefined,
98
+ configPath: hasConfig ? configPath : undefined,
99
+ agentsPath: hasAgents ? agentsPath : undefined,
100
+ hasMemoryDb,
101
+ hasConfig,
102
+ hasAgents,
103
+ version,
104
+ };
105
+ }
106
+ /**
107
+ * Read AQE version from memory.db
108
+ */
109
+ readVersionFromDb(dbPath) {
110
+ try {
111
+ const Database = require('better-sqlite3');
112
+ const db = new Database(dbPath, { readonly: true, fileMustExist: true });
113
+ try {
114
+ const tableExists = db.prepare(`
115
+ SELECT name FROM sqlite_master
116
+ WHERE type='table' AND name='kv_store'
117
+ `).get();
118
+ if (!tableExists) {
119
+ db.close();
120
+ return undefined;
121
+ }
122
+ const row = db.prepare(`
123
+ SELECT value FROM kv_store
124
+ WHERE key = 'aqe_version' AND namespace = '_system'
125
+ `).get();
126
+ db.close();
127
+ if (row) {
128
+ return JSON.parse(row.value);
129
+ }
130
+ return undefined;
131
+ }
132
+ catch {
133
+ db.close();
134
+ return undefined;
135
+ }
136
+ }
137
+ catch {
138
+ return undefined;
139
+ }
140
+ }
141
+ }
142
+ // Instance exported from index.ts
143
+ //# sourceMappingURL=01-detection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"01-detection.js","sourceRoot":"","sources":["../../../src/init/phases/01-detection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Phase 02: Analysis
3
+ * Analyzes project structure, frameworks, and languages
4
+ */
5
+ import { BasePhase, type InitContext } from './phase-interface.js';
6
+ import type { ProjectAnalysis } from '../types.js';
7
+ /**
8
+ * Analysis phase - analyzes project structure
9
+ */
10
+ export declare class AnalysisPhase extends BasePhase<ProjectAnalysis> {
11
+ readonly name = "analysis";
12
+ readonly description = "Analyze project structure";
13
+ readonly order = 20;
14
+ readonly critical = true;
15
+ readonly requiresPhases: readonly ["detection"];
16
+ protected run(context: InitContext): Promise<ProjectAnalysis>;
17
+ }
18
+ //# sourceMappingURL=02-analysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"02-analysis.d.ts","sourceRoot":"","sources":["../../../src/init/phases/02-analysis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,eAAe,CAAC;IAC3D,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,WAAW,+BAA+B;IACnD,QAAQ,CAAC,KAAK,MAAM;IACpB,QAAQ,CAAC,QAAQ,QAAQ;IACzB,QAAQ,CAAC,cAAc,yBAA0B;cAEjC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;CAapE"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Phase 02: Analysis
3
+ * Analyzes project structure, frameworks, and languages
4
+ */
5
+ import { BasePhase, } from './phase-interface.js';
6
+ import { createProjectAnalyzer } from '../project-analyzer.js';
7
+ /**
8
+ * Analysis phase - analyzes project structure
9
+ */
10
+ export class AnalysisPhase extends BasePhase {
11
+ name = 'analysis';
12
+ description = 'Analyze project structure';
13
+ order = 20;
14
+ critical = true;
15
+ requiresPhases = ['detection'];
16
+ async run(context) {
17
+ const analyzer = createProjectAnalyzer(context.projectRoot);
18
+ const analysis = await analyzer.analyze();
19
+ // Store in context for other phases
20
+ context.analysis = analysis;
21
+ context.services.log(` Project: ${analysis.projectName}`);
22
+ context.services.log(` Languages: ${analysis.languages.join(', ')}`);
23
+ context.services.log(` Frameworks: ${analysis.frameworks.join(', ')}`);
24
+ return analysis;
25
+ }
26
+ }
27
+ // Instance exported from index.ts
28
+ //# sourceMappingURL=02-analysis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"02-analysis.js","sourceRoot":"","sources":["../../../src/init/phases/02-analysis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,SAAS,GAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG/D;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,SAA0B;IAClD,IAAI,GAAG,UAAU,CAAC;IAClB,WAAW,GAAG,2BAA2B,CAAC;IAC1C,KAAK,GAAG,EAAE,CAAC;IACX,QAAQ,GAAG,IAAI,CAAC;IAChB,cAAc,GAAG,CAAC,WAAW,CAAU,CAAC;IAEvC,KAAK,CAAC,GAAG,CAAC,OAAoB;QACtC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QAE1C,oCAAoC;QACpC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,gBAAgB,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAExE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,kCAAkC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Phase 03: Configuration
3
+ * Generates AQE configuration based on analysis and options
4
+ */
5
+ import { BasePhase, type InitContext } from './phase-interface.js';
6
+ import type { AQEInitConfig } from '../types.js';
7
+ /**
8
+ * Configuration phase - generates optimal config
9
+ */
10
+ export declare class ConfigurationPhase extends BasePhase<AQEInitConfig> {
11
+ readonly name = "configuration";
12
+ readonly description = "Generate configuration";
13
+ readonly order = 30;
14
+ readonly critical = true;
15
+ readonly requiresPhases: readonly ["analysis"];
16
+ protected run(context: InitContext): Promise<AQEInitConfig>;
17
+ /**
18
+ * Apply CLI options to config
19
+ */
20
+ private applyOptions;
21
+ /**
22
+ * Apply wizard answers to config
23
+ */
24
+ private applyWizardAnswers;
25
+ }
26
+ //# sourceMappingURL=03-configuration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"03-configuration.d.ts","sourceRoot":"","sources":["../../../src/init/phases/03-configuration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,SAAS,CAAC,aAAa,CAAC;IAC9D,QAAQ,CAAC,IAAI,mBAAmB;IAChC,QAAQ,CAAC,WAAW,4BAA4B;IAChD,QAAQ,CAAC,KAAK,MAAM;IACpB,QAAQ,CAAC,QAAQ,QAAQ;IACzB,QAAQ,CAAC,cAAc,wBAAyB;cAEhC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAyBjE;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;CA8C3B"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Phase 03: Configuration
3
+ * Generates AQE configuration based on analysis and options
4
+ */
5
+ import { BasePhase, } from './phase-interface.js';
6
+ import { createSelfConfigurator } from '../self-configurator.js';
7
+ /**
8
+ * Configuration phase - generates optimal config
9
+ */
10
+ export class ConfigurationPhase extends BasePhase {
11
+ name = 'configuration';
12
+ description = 'Generate configuration';
13
+ order = 30;
14
+ critical = true;
15
+ requiresPhases = ['analysis'];
16
+ async run(context) {
17
+ if (!context.analysis) {
18
+ throw new Error('Analysis phase must complete before configuration');
19
+ }
20
+ const configurator = createSelfConfigurator({
21
+ minimal: context.options.minimal,
22
+ });
23
+ // Generate base config from analysis
24
+ let config = configurator.recommend(context.analysis);
25
+ // Apply CLI options
26
+ config = this.applyOptions(config, context);
27
+ // Store in context
28
+ context.config = config;
29
+ context.services.log(` Version: ${config.version}`);
30
+ context.services.log(` Learning: ${config.learning.enabled ? 'enabled' : 'disabled'}`);
31
+ context.services.log(` Workers: ${config.workers.enabled.length}`);
32
+ return config;
33
+ }
34
+ /**
35
+ * Apply CLI options to config
36
+ */
37
+ applyOptions(config, context) {
38
+ const { options } = context;
39
+ // Minimal mode
40
+ if (options.minimal) {
41
+ config.skills.install = false;
42
+ config.learning.pretrainedPatterns = false;
43
+ config.workers.enabled = [];
44
+ config.workers.daemonAutoStart = false;
45
+ }
46
+ // Skip patterns
47
+ if (options.skipPatterns) {
48
+ config.learning.pretrainedPatterns = false;
49
+ }
50
+ // Apply wizard answers if present
51
+ if (options.wizardAnswers) {
52
+ config = this.applyWizardAnswers(config, options.wizardAnswers);
53
+ }
54
+ return config;
55
+ }
56
+ /**
57
+ * Apply wizard answers to config
58
+ */
59
+ applyWizardAnswers(config, answers) {
60
+ // Project type override
61
+ if (answers['project-type'] && answers['project-type'] !== 'auto') {
62
+ config.project.type = answers['project-type'];
63
+ }
64
+ // Learning mode
65
+ switch (answers['learning-mode']) {
66
+ case 'full':
67
+ config.learning.enabled = true;
68
+ config.learning.embeddingModel = 'transformer';
69
+ break;
70
+ case 'basic':
71
+ config.learning.enabled = true;
72
+ config.learning.embeddingModel = 'hash';
73
+ break;
74
+ case 'disabled':
75
+ config.learning.enabled = false;
76
+ break;
77
+ }
78
+ // Pattern loading
79
+ if (answers['load-patterns'] === false) {
80
+ config.learning.pretrainedPatterns = false;
81
+ }
82
+ // Hooks
83
+ if (answers['hooks'] === false) {
84
+ config.hooks.claudeCode = false;
85
+ }
86
+ // Workers
87
+ if (answers['workers'] === false) {
88
+ config.workers.daemonAutoStart = false;
89
+ }
90
+ // Skills
91
+ if (answers['skills'] === false) {
92
+ config.skills.install = false;
93
+ }
94
+ return config;
95
+ }
96
+ }
97
+ // Instance exported from index.ts
98
+ //# sourceMappingURL=03-configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"03-configuration.js","sourceRoot":"","sources":["../../../src/init/phases/03-configuration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Phase 04: Database
3
+ * Initializes SQLite persistence database
4
+ */
5
+ import { BasePhase, type InitContext } from './phase-interface.js';
6
+ export interface DatabaseResult {
7
+ dbPath: string;
8
+ created: boolean;
9
+ tablesCreated: string[];
10
+ }
11
+ /**
12
+ * Database phase - initializes SQLite persistence
13
+ */
14
+ export declare class DatabasePhase extends BasePhase<DatabaseResult> {
15
+ readonly name = "database";
16
+ readonly description = "Initialize persistence database";
17
+ readonly order = 40;
18
+ readonly critical = true;
19
+ readonly requiresPhases: readonly ["configuration"];
20
+ protected run(context: InitContext): Promise<DatabaseResult>;
21
+ }
22
+ //# sourceMappingURL=04-database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"04-database.d.ts","sourceRoot":"","sources":["../../../src/init/phases/04-database.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC1D,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,WAAW,qCAAqC;IACzD,QAAQ,CAAC,KAAK,MAAM;IACpB,QAAQ,CAAC,QAAQ,QAAQ;IACzB,QAAQ,CAAC,cAAc,6BAA8B;cAErC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;CAoFnE"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Phase 04: Database
3
+ * Initializes SQLite persistence database
4
+ */
5
+ import { existsSync, mkdirSync } from 'fs';
6
+ import { join } from 'path';
7
+ import { BasePhase, } from './phase-interface.js';
8
+ /**
9
+ * Database phase - initializes SQLite persistence
10
+ */
11
+ export class DatabasePhase extends BasePhase {
12
+ name = 'database';
13
+ description = 'Initialize persistence database';
14
+ order = 40;
15
+ critical = true;
16
+ requiresPhases = ['configuration'];
17
+ async run(context) {
18
+ const { projectRoot } = context;
19
+ // Dynamic import for better-sqlite3
20
+ let Database;
21
+ try {
22
+ const mod = await import('better-sqlite3');
23
+ Database = mod.default;
24
+ }
25
+ catch (error) {
26
+ throw new Error('SQLite persistence REQUIRED but better-sqlite3 is not installed.\n' +
27
+ 'Install it with: npm install better-sqlite3\n' +
28
+ 'If you see native compilation errors, ensure build tools are installed.');
29
+ }
30
+ // Create .agentic-qe directory
31
+ const dataDir = join(projectRoot, '.agentic-qe');
32
+ if (!existsSync(dataDir)) {
33
+ mkdirSync(dataDir, { recursive: true });
34
+ }
35
+ const dbPath = join(dataDir, 'memory.db');
36
+ const created = !existsSync(dbPath);
37
+ try {
38
+ const db = new Database(dbPath);
39
+ // Configure for performance
40
+ db.pragma('journal_mode = WAL');
41
+ db.pragma('busy_timeout = 5000');
42
+ // Create tables
43
+ const tablesCreated = [];
44
+ // kv_store table
45
+ db.exec(`
46
+ CREATE TABLE IF NOT EXISTS kv_store (
47
+ key TEXT NOT NULL,
48
+ namespace TEXT NOT NULL,
49
+ value TEXT NOT NULL,
50
+ expires_at INTEGER,
51
+ created_at INTEGER DEFAULT (strftime('%s', 'now') * 1000),
52
+ PRIMARY KEY (namespace, key)
53
+ );
54
+ CREATE INDEX IF NOT EXISTS idx_kv_namespace ON kv_store(namespace);
55
+ CREATE INDEX IF NOT EXISTS idx_kv_expires ON kv_store(expires_at) WHERE expires_at IS NOT NULL;
56
+ `);
57
+ tablesCreated.push('kv_store');
58
+ // Verify the table exists
59
+ const tableCheck = db.prepare(`
60
+ SELECT name FROM sqlite_master WHERE type='table' AND name='kv_store'
61
+ `).get();
62
+ if (!tableCheck) {
63
+ throw new Error('Failed to create kv_store table');
64
+ }
65
+ // Write init test entry
66
+ const stmt = db.prepare(`
67
+ INSERT OR REPLACE INTO kv_store (key, namespace, value)
68
+ VALUES (?, ?, ?)
69
+ `);
70
+ stmt.run('_init_test', '_system', JSON.stringify({ initialized: new Date().toISOString() }));
71
+ db.close();
72
+ context.services.log(` Database: ${dbPath}`);
73
+ context.services.log(` Tables: ${tablesCreated.join(', ')}`);
74
+ return {
75
+ dbPath,
76
+ created,
77
+ tablesCreated,
78
+ };
79
+ }
80
+ catch (error) {
81
+ throw new Error(`SQLite persistence initialization FAILED: ${error}\n` +
82
+ `Database path: ${dbPath}\n` +
83
+ 'Ensure the directory is writable and has sufficient disk space.');
84
+ }
85
+ }
86
+ }
87
+ // Instance exported from index.ts
88
+ //# sourceMappingURL=04-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"04-database.js","sourceRoot":"","sources":["../../../src/init/phases/04-database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Phase 05: Learning
3
+ * Initializes the learning system with HNSW index and pattern storage
4
+ */
5
+ import { BasePhase, type InitContext } from './phase-interface.js';
6
+ export interface LearningResult {
7
+ enabled: boolean;
8
+ dataDir: string;
9
+ hnswDir: string;
10
+ patternsLoaded: number;
11
+ }
12
+ /**
13
+ * Learning phase - initializes pattern learning system
14
+ */
15
+ export declare class LearningPhase extends BasePhase<LearningResult> {
16
+ readonly name = "learning";
17
+ readonly description = "Initialize learning system";
18
+ readonly order = 50;
19
+ readonly critical = false;
20
+ readonly requiresPhases: readonly ["database", "configuration"];
21
+ shouldRun(context: InitContext): Promise<boolean>;
22
+ protected run(context: InitContext): Promise<LearningResult>;
23
+ /**
24
+ * Load pre-trained patterns from bundled library
25
+ */
26
+ private loadPretrainedPatterns;
27
+ }
28
+ //# sourceMappingURL=05-learning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"05-learning.d.ts","sourceRoot":"","sources":["../../../src/init/phases/05-learning.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC1D,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,WAAW,gCAAgC;IACpD,QAAQ,CAAC,KAAK,MAAM;IACpB,QAAQ,CAAC,QAAQ,SAAS;IAC1B,QAAQ,CAAC,cAAc,yCAA0C;IAE3D,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;cAKvC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAyDlE;;OAEG;YACW,sBAAsB;CA4BrC"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Phase 05: Learning
3
+ * Initializes the learning system with HNSW index and pattern storage
4
+ */
5
+ import { existsSync, mkdirSync, writeFileSync } from 'fs';
6
+ import { join } from 'path';
7
+ import { BasePhase, } from './phase-interface.js';
8
+ /**
9
+ * Learning phase - initializes pattern learning system
10
+ */
11
+ export class LearningPhase extends BasePhase {
12
+ name = 'learning';
13
+ description = 'Initialize learning system';
14
+ order = 50;
15
+ critical = false;
16
+ requiresPhases = ['database', 'configuration'];
17
+ async shouldRun(context) {
18
+ const config = context.config;
19
+ return config?.learning?.enabled ?? true;
20
+ }
21
+ async run(context) {
22
+ const config = context.config;
23
+ const { projectRoot, options } = context;
24
+ if (!config.learning.enabled) {
25
+ return {
26
+ enabled: false,
27
+ dataDir: '',
28
+ hnswDir: '',
29
+ patternsLoaded: 0,
30
+ };
31
+ }
32
+ // Create data directory
33
+ const dataDir = join(projectRoot, '.agentic-qe', 'data');
34
+ if (!existsSync(dataDir)) {
35
+ mkdirSync(dataDir, { recursive: true });
36
+ }
37
+ // Create HNSW index directory
38
+ const hnswDir = join(dataDir, 'hnsw');
39
+ if (!existsSync(hnswDir)) {
40
+ mkdirSync(hnswDir, { recursive: true });
41
+ }
42
+ // Write learning system config
43
+ const learningConfigPath = join(dataDir, 'learning-config.json');
44
+ const learningConfig = {
45
+ embeddingModel: config.learning.embeddingModel,
46
+ hnswConfig: config.learning.hnswConfig,
47
+ qualityThreshold: config.learning.qualityThreshold,
48
+ promotionThreshold: config.learning.promotionThreshold,
49
+ databasePath: join(dataDir, 'qe-patterns.db'),
50
+ hnswIndexPath: join(hnswDir, 'index.bin'),
51
+ initialized: new Date().toISOString(),
52
+ };
53
+ writeFileSync(learningConfigPath, JSON.stringify(learningConfig, null, 2), 'utf-8');
54
+ // Load pre-trained patterns if available and not skipped
55
+ let patternsLoaded = 0;
56
+ if (config.learning.pretrainedPatterns && !options.skipPatterns) {
57
+ patternsLoaded = await this.loadPretrainedPatterns(dataDir, context);
58
+ }
59
+ context.services.log(` Data dir: ${dataDir}`);
60
+ context.services.log(` HNSW dir: ${hnswDir}`);
61
+ context.services.log(` Patterns loaded: ${patternsLoaded}`);
62
+ return {
63
+ enabled: true,
64
+ dataDir,
65
+ hnswDir,
66
+ patternsLoaded,
67
+ };
68
+ }
69
+ /**
70
+ * Load pre-trained patterns from bundled library
71
+ */
72
+ async loadPretrainedPatterns(dataDir, context) {
73
+ try {
74
+ // Try to load pre-trained patterns from bundled location
75
+ const patternsDir = join(dataDir, 'patterns');
76
+ if (!existsSync(patternsDir)) {
77
+ mkdirSync(patternsDir, { recursive: true });
78
+ }
79
+ // Write a placeholder for now - actual patterns would come from
80
+ // @agentic-qe/patterns package or bundled assets
81
+ const indexPath = join(patternsDir, 'index.json');
82
+ if (!existsSync(indexPath)) {
83
+ writeFileSync(indexPath, JSON.stringify({
84
+ version: '3.0.0',
85
+ domains: [],
86
+ loadedAt: new Date().toISOString(),
87
+ }, null, 2), 'utf-8');
88
+ }
89
+ return 0; // Return actual count when patterns are bundled
90
+ }
91
+ catch (error) {
92
+ context.services.warn(`Could not load pre-trained patterns: ${error}`);
93
+ return 0;
94
+ }
95
+ }
96
+ }
97
+ // Instance exported from index.ts
98
+ //# sourceMappingURL=05-learning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"05-learning.js","sourceRoot":"","sources":["../../../src/init/phases/05-learning.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Phase 06: Code Intelligence
3
+ * Pre-scans project and builds knowledge graph
4
+ */
5
+ import { BasePhase, type InitContext } from './phase-interface.js';
6
+ export interface CodeIntelligenceResult {
7
+ status: 'indexed' | 'existing' | 'skipped' | 'error';
8
+ entries: number;
9
+ }
10
+ /**
11
+ * Code Intelligence phase - builds knowledge graph
12
+ */
13
+ export declare class CodeIntelligencePhase extends BasePhase<CodeIntelligenceResult> {
14
+ readonly name = "code-intelligence";
15
+ readonly description = "Code intelligence pre-scan";
16
+ readonly order = 60;
17
+ readonly critical = false;
18
+ readonly requiresPhases: readonly ["database"];
19
+ protected run(context: InitContext): Promise<CodeIntelligenceResult>;
20
+ /**
21
+ * Check if code intelligence index exists
22
+ */
23
+ private checkCodeIntelligenceIndex;
24
+ /**
25
+ * Get count of KG entries
26
+ */
27
+ private getKGEntryCount;
28
+ /**
29
+ * Run code intelligence scan
30
+ */
31
+ private runCodeIntelligenceScan;
32
+ }
33
+ //# sourceMappingURL=06-code-intelligence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"06-code-intelligence.d.ts","sourceRoot":"","sources":["../../../src/init/phases/06-code-intelligence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EACL,SAAS,EACT,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IACrD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,SAAS,CAAC,sBAAsB,CAAC;IAC1E,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,WAAW,gCAAgC;IACpD,QAAQ,CAAC,KAAK,MAAM;IACpB,QAAQ,CAAC,QAAQ,SAAS;IAC1B,QAAQ,CAAC,cAAc,wBAAyB;cAEhC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiB1E;;OAEG;YACW,0BAA0B;IAoBxC;;OAEG;YACW,eAAe;IAgB7B;;OAEG;YACW,uBAAuB;CAgDtC"}