agentic-qe 2.3.2 → 2.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. package/CHANGELOG.md +140 -0
  2. package/README.md +1 -1
  3. package/dist/agents/BaseAgent.d.ts +10 -0
  4. package/dist/agents/BaseAgent.d.ts.map +1 -1
  5. package/dist/agents/BaseAgent.js +113 -0
  6. package/dist/agents/BaseAgent.js.map +1 -1
  7. package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
  8. package/dist/agents/CoverageAnalyzerAgent.js +53 -27
  9. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
  10. package/dist/agents/FlakyTestHunterAgent.d.ts +5 -0
  11. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  12. package/dist/agents/FlakyTestHunterAgent.js +20 -5
  13. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  14. package/dist/agents/QualityGateAgent.js +44 -6
  15. package/dist/agents/QualityGateAgent.js.map +1 -1
  16. package/dist/cli/commands/dream/index.d.ts +50 -0
  17. package/dist/cli/commands/dream/index.d.ts.map +1 -0
  18. package/dist/cli/commands/dream/index.js +282 -0
  19. package/dist/cli/commands/dream/index.js.map +1 -0
  20. package/dist/cli/commands/learn/index.d.ts +31 -5
  21. package/dist/cli/commands/learn/index.d.ts.map +1 -1
  22. package/dist/cli/commands/learn/index.js +183 -50
  23. package/dist/cli/commands/learn/index.js.map +1 -1
  24. package/dist/cli/commands/transfer/index.d.ts +55 -0
  25. package/dist/cli/commands/transfer/index.d.ts.map +1 -0
  26. package/dist/cli/commands/transfer/index.js +317 -0
  27. package/dist/cli/commands/transfer/index.js.map +1 -0
  28. package/dist/cli/index.js +156 -3
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/cli/init/database-init.js +5 -0
  31. package/dist/cli/init/database-init.js.map +1 -1
  32. package/dist/cli/init/index.d.ts.map +1 -1
  33. package/dist/cli/init/index.js +12 -4
  34. package/dist/cli/init/index.js.map +1 -1
  35. package/dist/cli/init/learning-init.d.ts +39 -0
  36. package/dist/cli/init/learning-init.d.ts.map +1 -0
  37. package/dist/cli/init/learning-init.js +239 -0
  38. package/dist/cli/init/learning-init.js.map +1 -0
  39. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  40. package/dist/learning/PerformanceTracker.d.ts +9 -0
  41. package/dist/learning/PerformanceTracker.d.ts.map +1 -1
  42. package/dist/learning/PerformanceTracker.js +26 -2
  43. package/dist/learning/PerformanceTracker.js.map +1 -1
  44. package/dist/learning/baselines/BaselineCollector.d.ts +178 -0
  45. package/dist/learning/baselines/BaselineCollector.d.ts.map +1 -0
  46. package/dist/learning/baselines/BaselineCollector.js +398 -0
  47. package/dist/learning/baselines/BaselineCollector.js.map +1 -0
  48. package/dist/learning/baselines/StandardTaskSuite.d.ts +88 -0
  49. package/dist/learning/baselines/StandardTaskSuite.d.ts.map +1 -0
  50. package/dist/learning/baselines/StandardTaskSuite.js +801 -0
  51. package/dist/learning/baselines/StandardTaskSuite.js.map +1 -0
  52. package/dist/learning/baselines/index.d.ts +10 -0
  53. package/dist/learning/baselines/index.d.ts.map +1 -0
  54. package/dist/learning/baselines/index.js +15 -0
  55. package/dist/learning/baselines/index.js.map +1 -0
  56. package/dist/learning/capture/ExecutionRecorder.d.ts +97 -0
  57. package/dist/learning/capture/ExecutionRecorder.d.ts.map +1 -0
  58. package/dist/learning/capture/ExecutionRecorder.js +195 -0
  59. package/dist/learning/capture/ExecutionRecorder.js.map +1 -0
  60. package/dist/learning/capture/ExperienceCapture.d.ts +177 -0
  61. package/dist/learning/capture/ExperienceCapture.d.ts.map +1 -0
  62. package/dist/learning/capture/ExperienceCapture.js +432 -0
  63. package/dist/learning/capture/ExperienceCapture.js.map +1 -0
  64. package/dist/learning/capture/index.d.ts +12 -0
  65. package/dist/learning/capture/index.d.ts.map +1 -0
  66. package/dist/learning/capture/index.js +17 -0
  67. package/dist/learning/capture/index.js.map +1 -0
  68. package/dist/learning/dashboard/MetricsDashboard.d.ts +63 -0
  69. package/dist/learning/dashboard/MetricsDashboard.d.ts.map +1 -0
  70. package/dist/learning/dashboard/MetricsDashboard.js +230 -0
  71. package/dist/learning/dashboard/MetricsDashboard.js.map +1 -0
  72. package/dist/learning/dashboard/index.d.ts +7 -0
  73. package/dist/learning/dashboard/index.d.ts.map +1 -0
  74. package/dist/learning/dashboard/index.js +23 -0
  75. package/dist/learning/dashboard/index.js.map +1 -0
  76. package/dist/learning/dream/ConceptGraph.d.ts +160 -0
  77. package/dist/learning/dream/ConceptGraph.d.ts.map +1 -0
  78. package/dist/learning/dream/ConceptGraph.js +445 -0
  79. package/dist/learning/dream/ConceptGraph.js.map +1 -0
  80. package/dist/learning/dream/DreamEngine.d.ts +150 -0
  81. package/dist/learning/dream/DreamEngine.d.ts.map +1 -0
  82. package/dist/learning/dream/DreamEngine.js +551 -0
  83. package/dist/learning/dream/DreamEngine.js.map +1 -0
  84. package/dist/learning/dream/InsightGenerator.d.ts +152 -0
  85. package/dist/learning/dream/InsightGenerator.d.ts.map +1 -0
  86. package/dist/learning/dream/InsightGenerator.js +463 -0
  87. package/dist/learning/dream/InsightGenerator.js.map +1 -0
  88. package/dist/learning/dream/SpreadingActivation.d.ts +138 -0
  89. package/dist/learning/dream/SpreadingActivation.d.ts.map +1 -0
  90. package/dist/learning/dream/SpreadingActivation.js +320 -0
  91. package/dist/learning/dream/SpreadingActivation.js.map +1 -0
  92. package/dist/learning/dream/index.d.ts +14 -0
  93. package/dist/learning/dream/index.d.ts.map +1 -0
  94. package/dist/learning/dream/index.js +22 -0
  95. package/dist/learning/dream/index.js.map +1 -0
  96. package/dist/learning/metrics/AlertManager.d.ts +107 -0
  97. package/dist/learning/metrics/AlertManager.d.ts.map +1 -0
  98. package/dist/learning/metrics/AlertManager.js +246 -0
  99. package/dist/learning/metrics/AlertManager.js.map +1 -0
  100. package/dist/learning/metrics/LearningMetrics.d.ts +184 -0
  101. package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -0
  102. package/dist/learning/metrics/LearningMetrics.js +754 -0
  103. package/dist/learning/metrics/LearningMetrics.js.map +1 -0
  104. package/dist/learning/metrics/MetricsCollector.d.ts +108 -0
  105. package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -0
  106. package/dist/learning/metrics/MetricsCollector.js +240 -0
  107. package/dist/learning/metrics/MetricsCollector.js.map +1 -0
  108. package/dist/learning/metrics/MetricsStore.d.ts +149 -0
  109. package/dist/learning/metrics/MetricsStore.d.ts.map +1 -0
  110. package/dist/learning/metrics/MetricsStore.js +502 -0
  111. package/dist/learning/metrics/MetricsStore.js.map +1 -0
  112. package/dist/learning/metrics/TrendAnalyzer.d.ts +85 -0
  113. package/dist/learning/metrics/TrendAnalyzer.d.ts.map +1 -0
  114. package/dist/learning/metrics/TrendAnalyzer.js +210 -0
  115. package/dist/learning/metrics/TrendAnalyzer.js.map +1 -0
  116. package/dist/learning/metrics/index.d.ts +13 -0
  117. package/dist/learning/metrics/index.d.ts.map +1 -0
  118. package/dist/learning/metrics/index.js +39 -0
  119. package/dist/learning/metrics/index.js.map +1 -0
  120. package/dist/learning/scheduler/IdleDetector.d.ts +126 -0
  121. package/dist/learning/scheduler/IdleDetector.d.ts.map +1 -0
  122. package/dist/learning/scheduler/IdleDetector.js +281 -0
  123. package/dist/learning/scheduler/IdleDetector.js.map +1 -0
  124. package/dist/learning/scheduler/SleepCycle.d.ts +150 -0
  125. package/dist/learning/scheduler/SleepCycle.d.ts.map +1 -0
  126. package/dist/learning/scheduler/SleepCycle.js +506 -0
  127. package/dist/learning/scheduler/SleepCycle.js.map +1 -0
  128. package/dist/learning/scheduler/SleepScheduler.d.ts +131 -0
  129. package/dist/learning/scheduler/SleepScheduler.d.ts.map +1 -0
  130. package/dist/learning/scheduler/SleepScheduler.js +299 -0
  131. package/dist/learning/scheduler/SleepScheduler.js.map +1 -0
  132. package/dist/learning/scheduler/TimeBasedTrigger.d.ts +108 -0
  133. package/dist/learning/scheduler/TimeBasedTrigger.d.ts.map +1 -0
  134. package/dist/learning/scheduler/TimeBasedTrigger.js +222 -0
  135. package/dist/learning/scheduler/TimeBasedTrigger.js.map +1 -0
  136. package/dist/learning/scheduler/index.d.ts +16 -0
  137. package/dist/learning/scheduler/index.d.ts.map +1 -0
  138. package/dist/learning/scheduler/index.js +23 -0
  139. package/dist/learning/scheduler/index.js.map +1 -0
  140. package/dist/learning/synthesis/PatternSynthesis.d.ts +162 -0
  141. package/dist/learning/synthesis/PatternSynthesis.d.ts.map +1 -0
  142. package/dist/learning/synthesis/PatternSynthesis.js +479 -0
  143. package/dist/learning/synthesis/PatternSynthesis.js.map +1 -0
  144. package/dist/learning/synthesis/index.d.ts +10 -0
  145. package/dist/learning/synthesis/index.d.ts.map +1 -0
  146. package/dist/learning/synthesis/index.js +14 -0
  147. package/dist/learning/synthesis/index.js.map +1 -0
  148. package/dist/learning/transfer/CompatibilityScorer.d.ts +115 -0
  149. package/dist/learning/transfer/CompatibilityScorer.d.ts.map +1 -0
  150. package/dist/learning/transfer/CompatibilityScorer.js +319 -0
  151. package/dist/learning/transfer/CompatibilityScorer.js.map +1 -0
  152. package/dist/learning/transfer/TransferProtocol.d.ts +172 -0
  153. package/dist/learning/transfer/TransferProtocol.d.ts.map +1 -0
  154. package/dist/learning/transfer/TransferProtocol.js +611 -0
  155. package/dist/learning/transfer/TransferProtocol.js.map +1 -0
  156. package/dist/learning/transfer/TransferPrototype.d.ts +93 -0
  157. package/dist/learning/transfer/TransferPrototype.d.ts.map +1 -0
  158. package/dist/learning/transfer/TransferPrototype.js +433 -0
  159. package/dist/learning/transfer/TransferPrototype.js.map +1 -0
  160. package/dist/learning/transfer/TransferValidator.d.ts +140 -0
  161. package/dist/learning/transfer/TransferValidator.d.ts.map +1 -0
  162. package/dist/learning/transfer/TransferValidator.js +413 -0
  163. package/dist/learning/transfer/TransferValidator.js.map +1 -0
  164. package/dist/learning/transfer/index.d.ts +14 -0
  165. package/dist/learning/transfer/index.d.ts.map +1 -0
  166. package/dist/learning/transfer/index.js +22 -0
  167. package/dist/learning/transfer/index.js.map +1 -0
  168. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts +26 -2
  169. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
  170. package/dist/mcp/handlers/test/test-generate-enhanced.js +159 -27
  171. package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
  172. package/dist/mcp/server-instructions.d.ts +1 -1
  173. package/dist/mcp/server-instructions.js +1 -1
  174. package/dist/mcp/server.d.ts.map +1 -1
  175. package/dist/mcp/server.js +2 -1
  176. package/dist/mcp/server.js.map +1 -1
  177. package/package.json +7 -2
  178. package/scripts/README.md +352 -0
  179. package/scripts/hooks/capture-task-learning.js +191 -0
  180. package/scripts/hooks/emit-task-complete.sh +35 -0
  181. package/scripts/hooks/emit-task-spawn.sh +27 -0
  182. package/.claude/agents/failing-agent.json +0 -9
  183. package/.claude/agents/test-agent.json +0 -9
  184. package/dist/App.d.ts +0 -5
  185. package/dist/App.d.ts.map +0 -1
  186. package/dist/App.js +0 -15
  187. package/dist/App.js.map +0 -1
  188. package/dist/cli/init/utils.d.ts +0 -183
  189. package/dist/cli/init/utils.d.ts.map +0 -1
  190. package/dist/cli/init/utils.js +0 -354
  191. package/dist/cli/init/utils.js.map +0 -1
  192. package/dist/components/Dashboard/Dashboard.d.ts +0 -4
  193. package/dist/components/Dashboard/Dashboard.d.ts.map +0 -1
  194. package/dist/components/Dashboard/Dashboard.js +0 -148
  195. package/dist/components/Dashboard/Dashboard.js.map +0 -1
  196. package/dist/components/Dashboard/DashboardHeader.d.ts +0 -4
  197. package/dist/components/Dashboard/DashboardHeader.d.ts.map +0 -1
  198. package/dist/components/Dashboard/DashboardHeader.js +0 -138
  199. package/dist/components/Dashboard/DashboardHeader.js.map +0 -1
  200. package/dist/contexts/DashboardContext.d.ts +0 -41
  201. package/dist/contexts/DashboardContext.d.ts.map +0 -1
  202. package/dist/contexts/DashboardContext.js +0 -187
  203. package/dist/contexts/DashboardContext.js.map +0 -1
  204. package/dist/core/transport/QUICTransport.d.ts +0 -320
  205. package/dist/core/transport/QUICTransport.d.ts.map +0 -1
  206. package/dist/core/transport/QUICTransport.js +0 -711
  207. package/dist/core/transport/QUICTransport.js.map +0 -1
  208. package/dist/learning/LearningPersistenceAdapter.d.ts +0 -84
  209. package/dist/learning/LearningPersistenceAdapter.d.ts.map +0 -1
  210. package/dist/learning/LearningPersistenceAdapter.js +0 -202
  211. package/dist/learning/LearningPersistenceAdapter.js.map +0 -1
  212. package/dist/learning/algorithms/QLearning.d.ts +0 -68
  213. package/dist/learning/algorithms/QLearning.d.ts.map +0 -1
  214. package/dist/learning/algorithms/QLearning.js +0 -116
  215. package/dist/learning/algorithms/QLearning.js.map +0 -1
  216. package/dist/mcp/handlers/advanced/requirements-generate-bdd.d.ts +0 -7
  217. package/dist/mcp/handlers/advanced/requirements-generate-bdd.d.ts.map +0 -1
  218. package/dist/mcp/handlers/advanced/requirements-generate-bdd.js +0 -267
  219. package/dist/mcp/handlers/advanced/requirements-generate-bdd.js.map +0 -1
  220. package/dist/mcp/handlers/advanced/requirements-validate.d.ts +0 -7
  221. package/dist/mcp/handlers/advanced/requirements-validate.d.ts.map +0 -1
  222. package/dist/mcp/handlers/advanced/requirements-validate.js +0 -175
  223. package/dist/mcp/handlers/advanced/requirements-validate.js.map +0 -1
  224. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.d.ts +0 -15
  225. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.d.ts.map +0 -1
  226. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js +0 -43
  227. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js.map +0 -1
  228. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.d.ts +0 -58
  229. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.d.ts.map +0 -1
  230. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js +0 -188
  231. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js.map +0 -1
  232. package/dist/mcp/handlers/optimize-tests.d.ts +0 -219
  233. package/dist/mcp/handlers/optimize-tests.d.ts.map +0 -1
  234. package/dist/mcp/handlers/optimize-tests.js +0 -533
  235. package/dist/mcp/handlers/optimize-tests.js.map +0 -1
  236. package/dist/mcp/handlers/predict-defects.d.ts +0 -194
  237. package/dist/mcp/handlers/predict-defects.d.ts.map +0 -1
  238. package/dist/mcp/handlers/predict-defects.js +0 -722
  239. package/dist/mcp/handlers/predict-defects.js.map +0 -1
  240. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts +0 -199
  241. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts.map +0 -1
  242. package/dist/mcp/handlers/prediction/regression-risk-analyze.js +0 -471
  243. package/dist/mcp/handlers/prediction/regression-risk-analyze.js.map +0 -1
  244. package/dist/mcp/handlers/quality/quality-decision-make.d.ts +0 -104
  245. package/dist/mcp/handlers/quality/quality-decision-make.d.ts.map +0 -1
  246. package/dist/mcp/handlers/quality/quality-decision-make.js +0 -408
  247. package/dist/mcp/handlers/quality/quality-decision-make.js.map +0 -1
  248. package/dist/mcp/handlers/quality/quality-gate-execute.d.ts +0 -160
  249. package/dist/mcp/handlers/quality/quality-gate-execute.d.ts.map +0 -1
  250. package/dist/mcp/handlers/quality/quality-gate-execute.js +0 -412
  251. package/dist/mcp/handlers/quality/quality-gate-execute.js.map +0 -1
  252. package/dist/mcp/handlers/quality/quality-policy-check.d.ts +0 -163
  253. package/dist/mcp/handlers/quality/quality-policy-check.d.ts.map +0 -1
  254. package/dist/mcp/handlers/quality/quality-policy-check.js +0 -455
  255. package/dist/mcp/handlers/quality/quality-policy-check.js.map +0 -1
  256. package/dist/mcp/handlers/quality/quality-risk-assess.d.ts +0 -123
  257. package/dist/mcp/handlers/quality/quality-risk-assess.d.ts.map +0 -1
  258. package/dist/mcp/handlers/quality/quality-risk-assess.js +0 -522
  259. package/dist/mcp/handlers/quality/quality-risk-assess.js.map +0 -1
  260. package/dist/mcp/handlers/quality/quality-validate-metrics.d.ts +0 -117
  261. package/dist/mcp/handlers/quality/quality-validate-metrics.d.ts.map +0 -1
  262. package/dist/mcp/handlers/quality/quality-validate-metrics.js +0 -288
  263. package/dist/mcp/handlers/quality/quality-validate-metrics.js.map +0 -1
  264. package/dist/mcp/handlers/quality-analyze.d.ts +0 -279
  265. package/dist/mcp/handlers/quality-analyze.d.ts.map +0 -1
  266. package/dist/mcp/handlers/quality-analyze.js +0 -720
  267. package/dist/mcp/handlers/quality-analyze.js.map +0 -1
  268. package/dist/mcp/handlers/security/check-authz.d.ts +0 -152
  269. package/dist/mcp/handlers/security/check-authz.d.ts.map +0 -1
  270. package/dist/mcp/handlers/security/check-authz.js +0 -434
  271. package/dist/mcp/handlers/security/check-authz.js.map +0 -1
  272. package/dist/mcp/handlers/security/scan-dependencies.d.ts +0 -148
  273. package/dist/mcp/handlers/security/scan-dependencies.d.ts.map +0 -1
  274. package/dist/mcp/handlers/security/scan-dependencies.js +0 -354
  275. package/dist/mcp/handlers/security/scan-dependencies.js.map +0 -1
  276. package/dist/mcp/handlers/security/validate-auth.d.ts +0 -128
  277. package/dist/mcp/handlers/security/validate-auth.d.ts.map +0 -1
  278. package/dist/mcp/handlers/security/validate-auth.js +0 -294
  279. package/dist/mcp/handlers/security/validate-auth.js.map +0 -1
  280. package/dist/mcp/handlers/test-generate.d.ts +0 -107
  281. package/dist/mcp/handlers/test-generate.d.ts.map +0 -1
  282. package/dist/mcp/handlers/test-generate.js +0 -454
  283. package/dist/mcp/handlers/test-generate.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PatternSynthesis.js","sourceRoot":"","sources":["../../../src/learning/synthesis/PatternSynthesis.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Pattern Synthesis Module
3
+ *
4
+ * Provides pattern synthesis infrastructure for the Nightly-Learner system:
5
+ * - PatternSynthesis: Discover patterns from agent experiences
6
+ *
7
+ * @module src/learning/synthesis
8
+ */
9
+ export { PatternSynthesis, PatternSynthesisConfig, PatternType, SynthesizedPattern, Cluster, SynthesisOptions, SynthesisResult, } from './PatternSynthesis';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/learning/synthesis/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,OAAO,EACP,gBAAgB,EAChB,eAAe,GAChB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ /**
3
+ * Pattern Synthesis Module
4
+ *
5
+ * Provides pattern synthesis infrastructure for the Nightly-Learner system:
6
+ * - PatternSynthesis: Discover patterns from agent experiences
7
+ *
8
+ * @module src/learning/synthesis
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.PatternSynthesis = void 0;
12
+ var PatternSynthesis_1 = require("./PatternSynthesis");
13
+ Object.defineProperty(exports, "PatternSynthesis", { enumerable: true, get: function () { return PatternSynthesis_1.PatternSynthesis; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/learning/synthesis/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,uDAQ4B;AAP1B,oHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * CompatibilityScorer - Score pattern compatibility between agents
3
+ *
4
+ * Provides detailed compatibility analysis for cross-agent pattern transfer.
5
+ *
6
+ * Part of the Nightly-Learner Phase 2 implementation.
7
+ *
8
+ * @version 1.0.0
9
+ * @module src/learning/transfer/CompatibilityScorer
10
+ */
11
+ import { EventEmitter } from 'events';
12
+ export interface CompatibilityReport {
13
+ sourceAgent: string;
14
+ targetAgent: string;
15
+ overallScore: number;
16
+ breakdown: CompatibilityBreakdown;
17
+ recommendation: 'transfer' | 'adapt' | 'reject';
18
+ adaptations?: string[];
19
+ warnings?: string[];
20
+ }
21
+ export interface CompatibilityBreakdown {
22
+ capabilityScore: number;
23
+ frameworkScore: number;
24
+ taskTypeScore: number;
25
+ domainScore: number;
26
+ qualityScore: number;
27
+ }
28
+ export interface AgentProfile {
29
+ type: string;
30
+ capabilities: string[];
31
+ frameworks: string[];
32
+ taskTypes: string[];
33
+ domain: string;
34
+ specializations?: string[];
35
+ }
36
+ export interface PatternProfile {
37
+ id: string;
38
+ type: string;
39
+ requiredCapabilities: string[];
40
+ requiredFrameworks: string[];
41
+ applicableTaskTypes: string[];
42
+ domain: string;
43
+ complexity: 'low' | 'medium' | 'high';
44
+ confidence: number;
45
+ }
46
+ /**
47
+ * CompatibilityScorer provides detailed compatibility analysis
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * const scorer = new CompatibilityScorer();
52
+ *
53
+ * const report = await scorer.scoreCompatibility(
54
+ * patternProfile,
55
+ * sourceProfile,
56
+ * targetProfile
57
+ * );
58
+ *
59
+ * if (report.recommendation === 'transfer') {
60
+ * // Proceed with transfer
61
+ * }
62
+ * ```
63
+ */
64
+ export declare class CompatibilityScorer extends EventEmitter {
65
+ private logger;
66
+ private conceptSimilarities;
67
+ private domainRelationships;
68
+ constructor();
69
+ /**
70
+ * Score compatibility between pattern and target agent
71
+ */
72
+ scoreCompatibility(pattern: PatternProfile, sourceAgent: AgentProfile, targetAgent: AgentProfile): Promise<CompatibilityReport>;
73
+ /**
74
+ * Score capability overlap
75
+ */
76
+ private scoreCapabilityOverlap;
77
+ /**
78
+ * Score framework compatibility
79
+ */
80
+ private scoreFrameworkCompatibility;
81
+ /**
82
+ * Score task type relevance
83
+ */
84
+ private scoreTaskTypeRelevance;
85
+ /**
86
+ * Score domain relationship
87
+ */
88
+ private scoreDomainRelationship;
89
+ /**
90
+ * Calculate overall weighted score
91
+ */
92
+ private calculateOverallScore;
93
+ /**
94
+ * Determine recommendation based on scores
95
+ */
96
+ private determineRecommendation;
97
+ /**
98
+ * Suggest adaptations for pattern transfer
99
+ */
100
+ private suggestAdaptations;
101
+ /**
102
+ * Generate warnings for low scores
103
+ */
104
+ private generateWarnings;
105
+ /**
106
+ * Calculate Levenshtein similarity between two strings
107
+ */
108
+ private levenshteinSimilarity;
109
+ /**
110
+ * Batch score multiple patterns
111
+ */
112
+ batchScore(patterns: PatternProfile[], sourceAgent: AgentProfile, targetAgent: AgentProfile): Promise<Map<string, CompatibilityReport>>;
113
+ }
114
+ export default CompatibilityScorer;
115
+ //# sourceMappingURL=CompatibilityScorer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompatibilityScorer.d.ts","sourceRoot":"","sources":["../../../src/learning/transfer/CompatibilityScorer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,sBAAsB,CAAC;IAClC,cAAc,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,mBAAmB,CAOxB;IAGH,OAAO,CAAC,mBAAmB,CAOxB;;IAOH;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,YAAY,GACxB,OAAO,CAAC,mBAAmB,CAAC;IA4E/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAiC9B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgCnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA0B9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAoB/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAe/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA6B7B;;OAEG;IACG,UAAU,CACd,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,YAAY,GACxB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAU7C;AAED,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,319 @@
1
+ "use strict";
2
+ /**
3
+ * CompatibilityScorer - Score pattern compatibility between agents
4
+ *
5
+ * Provides detailed compatibility analysis for cross-agent pattern transfer.
6
+ *
7
+ * Part of the Nightly-Learner Phase 2 implementation.
8
+ *
9
+ * @version 1.0.0
10
+ * @module src/learning/transfer/CompatibilityScorer
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CompatibilityScorer = void 0;
14
+ const events_1 = require("events");
15
+ const Logger_1 = require("../../utils/Logger");
16
+ /**
17
+ * CompatibilityScorer provides detailed compatibility analysis
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const scorer = new CompatibilityScorer();
22
+ *
23
+ * const report = await scorer.scoreCompatibility(
24
+ * patternProfile,
25
+ * sourceProfile,
26
+ * targetProfile
27
+ * );
28
+ *
29
+ * if (report.recommendation === 'transfer') {
30
+ * // Proceed with transfer
31
+ * }
32
+ * ```
33
+ */
34
+ class CompatibilityScorer extends events_1.EventEmitter {
35
+ constructor() {
36
+ super();
37
+ // Semantic concept mappings
38
+ this.conceptSimilarities = new Map([
39
+ ['test-generation', ['code-analysis', 'pattern-matching', 'assertion-generation']],
40
+ ['coverage-analysis', ['gap-detection', 'branch-analysis', 'code-analysis']],
41
+ ['security-scan', ['vulnerability-scan', 'dependency-audit', 'compliance']],
42
+ ['performance-test', ['load-testing', 'benchmark', 'profiling']],
43
+ ['quality-check', ['threshold-validation', 'gate-evaluation', 'metric-aggregation']],
44
+ ['flaky-detection', ['test-analysis', 'stability-scoring', 'retry-optimization']],
45
+ ]);
46
+ // Domain relationships
47
+ this.domainRelationships = new Map([
48
+ ['testing', ['quality', 'coverage', 'stability']],
49
+ ['quality', ['testing', 'security', 'performance']],
50
+ ['security', ['quality', 'compliance']],
51
+ ['performance', ['quality', 'testing']],
52
+ ['coverage', ['testing', 'quality']],
53
+ ['stability', ['testing', 'quality']],
54
+ ]);
55
+ this.logger = Logger_1.Logger.getInstance();
56
+ }
57
+ /**
58
+ * Score compatibility between pattern and target agent
59
+ */
60
+ async scoreCompatibility(pattern, sourceAgent, targetAgent) {
61
+ // Calculate individual scores
62
+ const capabilityScore = this.scoreCapabilityOverlap(pattern.requiredCapabilities, targetAgent.capabilities);
63
+ const frameworkScore = this.scoreFrameworkCompatibility(pattern.requiredFrameworks, targetAgent.frameworks);
64
+ const taskTypeScore = this.scoreTaskTypeRelevance(pattern.applicableTaskTypes, targetAgent.taskTypes);
65
+ const domainScore = this.scoreDomainRelationship(pattern.domain, targetAgent.domain);
66
+ const qualityScore = pattern.confidence;
67
+ // Calculate weighted overall score
68
+ const overallScore = this.calculateOverallScore({
69
+ capabilityScore,
70
+ frameworkScore,
71
+ taskTypeScore,
72
+ domainScore,
73
+ qualityScore,
74
+ });
75
+ // Determine recommendation
76
+ const recommendation = this.determineRecommendation(overallScore, {
77
+ capabilityScore,
78
+ frameworkScore,
79
+ taskTypeScore,
80
+ domainScore,
81
+ qualityScore,
82
+ });
83
+ // Generate adaptations if needed
84
+ const adaptations = recommendation === 'adapt'
85
+ ? this.suggestAdaptations(pattern, targetAgent)
86
+ : undefined;
87
+ // Generate warnings
88
+ const warnings = this.generateWarnings({
89
+ capabilityScore,
90
+ frameworkScore,
91
+ taskTypeScore,
92
+ domainScore,
93
+ qualityScore,
94
+ });
95
+ const report = {
96
+ sourceAgent: sourceAgent.type,
97
+ targetAgent: targetAgent.type,
98
+ overallScore,
99
+ breakdown: {
100
+ capabilityScore,
101
+ frameworkScore,
102
+ taskTypeScore,
103
+ domainScore,
104
+ qualityScore,
105
+ },
106
+ recommendation,
107
+ adaptations,
108
+ warnings: warnings.length > 0 ? warnings : undefined,
109
+ };
110
+ this.emit('score:calculated', report);
111
+ return report;
112
+ }
113
+ /**
114
+ * Score capability overlap
115
+ */
116
+ scoreCapabilityOverlap(required, available) {
117
+ if (required.length === 0)
118
+ return 1.0;
119
+ let matched = 0;
120
+ for (const req of required) {
121
+ // Direct match
122
+ if (available.includes(req)) {
123
+ matched += 1.0;
124
+ continue;
125
+ }
126
+ // Semantic match
127
+ const similar = this.conceptSimilarities.get(req) || [];
128
+ const semanticMatch = similar.some(s => available.includes(s));
129
+ if (semanticMatch) {
130
+ matched += 0.7; // Partial credit for semantic match
131
+ continue;
132
+ }
133
+ // Partial string match
134
+ const partialMatch = available.some(a => a.includes(req) || req.includes(a) ||
135
+ this.levenshteinSimilarity(a, req) > 0.7);
136
+ if (partialMatch) {
137
+ matched += 0.5;
138
+ }
139
+ }
140
+ return Math.min(1, matched / required.length);
141
+ }
142
+ /**
143
+ * Score framework compatibility
144
+ */
145
+ scoreFrameworkCompatibility(required, available) {
146
+ if (required.length === 0)
147
+ return 1.0;
148
+ // Framework families
149
+ const families = {
150
+ 'js-testing': ['jest', 'mocha', 'vitest', 'ava', 'jasmine'],
151
+ 'e2e': ['playwright', 'cypress', 'puppeteer', 'selenium'],
152
+ 'coverage': ['istanbul', 'c8', 'nyc', 'jest-coverage'],
153
+ 'security': ['snyk', 'owasp', 'trivy', 'eslint-security'],
154
+ 'performance': ['k6', 'artillery', 'autocannon', 'lighthouse'],
155
+ };
156
+ let matched = 0;
157
+ for (const req of required) {
158
+ if (available.includes(req)) {
159
+ matched += 1.0;
160
+ continue;
161
+ }
162
+ // Family match
163
+ for (const family of Object.values(families)) {
164
+ if (family.includes(req) && family.some(f => available.includes(f))) {
165
+ matched += 0.8;
166
+ break;
167
+ }
168
+ }
169
+ }
170
+ return Math.min(1, matched / required.length);
171
+ }
172
+ /**
173
+ * Score task type relevance
174
+ */
175
+ scoreTaskTypeRelevance(applicable, supported) {
176
+ if (applicable.length === 0)
177
+ return 1.0;
178
+ const overlap = applicable.filter(t => supported.includes(t)).length;
179
+ const directScore = overlap / applicable.length;
180
+ // Bonus for related task types
181
+ const taskGroups = {
182
+ 'testing': ['unit-test', 'integration-test', 'e2e-test', 'component-test'],
183
+ 'analysis': ['coverage-analysis', 'gap-detection', 'security-scan', 'code-review'],
184
+ 'validation': ['quality-gate', 'deployment-check', 'release-validation'],
185
+ 'detection': ['flaky-detection', 'vulnerability-scan', 'bottleneck-detection'],
186
+ };
187
+ let groupBonus = 0;
188
+ for (const group of Object.values(taskGroups)) {
189
+ const hasApplicable = applicable.some(t => group.includes(t));
190
+ const hasSupported = supported.some(t => group.includes(t));
191
+ if (hasApplicable && hasSupported) {
192
+ groupBonus += 0.1;
193
+ }
194
+ }
195
+ return Math.min(1, directScore + groupBonus);
196
+ }
197
+ /**
198
+ * Score domain relationship
199
+ */
200
+ scoreDomainRelationship(patternDomain, agentDomain) {
201
+ if (patternDomain === agentDomain)
202
+ return 1.0;
203
+ const related = this.domainRelationships.get(patternDomain) || [];
204
+ if (related.includes(agentDomain))
205
+ return 0.8;
206
+ // Check reverse relationship
207
+ const reverseRelated = this.domainRelationships.get(agentDomain) || [];
208
+ if (reverseRelated.includes(patternDomain))
209
+ return 0.7;
210
+ // Check for any shared relationships
211
+ const patternRelated = new Set(this.domainRelationships.get(patternDomain) || []);
212
+ const agentRelated = new Set(this.domainRelationships.get(agentDomain) || []);
213
+ const sharedRelations = [...patternRelated].filter(r => agentRelated.has(r));
214
+ if (sharedRelations.length > 0)
215
+ return 0.5;
216
+ return 0.3; // Base compatibility
217
+ }
218
+ /**
219
+ * Calculate overall weighted score
220
+ */
221
+ calculateOverallScore(breakdown) {
222
+ return (breakdown.capabilityScore * 0.30 +
223
+ breakdown.frameworkScore * 0.20 +
224
+ breakdown.taskTypeScore * 0.25 +
225
+ breakdown.domainScore * 0.15 +
226
+ breakdown.qualityScore * 0.10);
227
+ }
228
+ /**
229
+ * Determine recommendation based on scores
230
+ */
231
+ determineRecommendation(overall, breakdown) {
232
+ if (overall >= 0.7 && breakdown.capabilityScore >= 0.5) {
233
+ return 'transfer';
234
+ }
235
+ if (overall >= 0.5 && breakdown.domainScore >= 0.5) {
236
+ return 'adapt';
237
+ }
238
+ return 'reject';
239
+ }
240
+ /**
241
+ * Suggest adaptations for pattern transfer
242
+ */
243
+ suggestAdaptations(pattern, target) {
244
+ const adaptations = [];
245
+ // Check for missing capabilities
246
+ const missingCaps = pattern.requiredCapabilities.filter(c => !target.capabilities.includes(c));
247
+ if (missingCaps.length > 0) {
248
+ adaptations.push(`Adapt pattern to work without: ${missingCaps.join(', ')}`);
249
+ }
250
+ // Check for framework differences
251
+ const missingFrameworks = pattern.requiredFrameworks.filter(f => !target.frameworks.includes(f));
252
+ if (missingFrameworks.length > 0) {
253
+ const alternatives = target.frameworks.slice(0, 2).join(' or ');
254
+ adaptations.push(`Consider using ${alternatives} instead of ${missingFrameworks[0]}`);
255
+ }
256
+ // Complexity adaptation
257
+ if (pattern.complexity === 'high' && target.specializations?.length === 0) {
258
+ adaptations.push('Simplify pattern for target agent without specializations');
259
+ }
260
+ return adaptations;
261
+ }
262
+ /**
263
+ * Generate warnings for low scores
264
+ */
265
+ generateWarnings(breakdown) {
266
+ const warnings = [];
267
+ if (breakdown.capabilityScore < 0.4) {
268
+ warnings.push('Low capability overlap - pattern may not function correctly');
269
+ }
270
+ if (breakdown.frameworkScore < 0.3) {
271
+ warnings.push('Framework mismatch - may require significant adaptation');
272
+ }
273
+ if (breakdown.taskTypeScore < 0.3) {
274
+ warnings.push('Task types not aligned - pattern may not be applicable');
275
+ }
276
+ if (breakdown.qualityScore < 0.5) {
277
+ warnings.push('Low pattern confidence - results may be unreliable');
278
+ }
279
+ return warnings;
280
+ }
281
+ /**
282
+ * Calculate Levenshtein similarity between two strings
283
+ */
284
+ levenshteinSimilarity(a, b) {
285
+ if (a === b)
286
+ return 1;
287
+ if (a.length === 0 || b.length === 0)
288
+ return 0;
289
+ const matrix = [];
290
+ for (let i = 0; i <= b.length; i++) {
291
+ matrix[i] = [i];
292
+ }
293
+ for (let j = 0; j <= a.length; j++) {
294
+ matrix[0][j] = j;
295
+ }
296
+ for (let i = 1; i <= b.length; i++) {
297
+ for (let j = 1; j <= a.length; j++) {
298
+ const cost = a[j - 1] === b[i - 1] ? 0 : 1;
299
+ matrix[i][j] = Math.min(matrix[i - 1][j] + 1, matrix[i][j - 1] + 1, matrix[i - 1][j - 1] + cost);
300
+ }
301
+ }
302
+ const maxLength = Math.max(a.length, b.length);
303
+ return 1 - matrix[b.length][a.length] / maxLength;
304
+ }
305
+ /**
306
+ * Batch score multiple patterns
307
+ */
308
+ async batchScore(patterns, sourceAgent, targetAgent) {
309
+ const results = new Map();
310
+ for (const pattern of patterns) {
311
+ const report = await this.scoreCompatibility(pattern, sourceAgent, targetAgent);
312
+ results.set(pattern.id, report);
313
+ }
314
+ return results;
315
+ }
316
+ }
317
+ exports.CompatibilityScorer = CompatibilityScorer;
318
+ exports.default = CompatibilityScorer;
319
+ //# sourceMappingURL=CompatibilityScorer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompatibilityScorer.js","sourceRoot":"","sources":["../../../src/learning/transfer/CompatibilityScorer.ts"],"names":[],"mappings":"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"}