agentic-qe 2.7.3 → 2.8.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 (620) hide show
  1. package/CHANGELOG.md +130 -0
  2. package/README.md +67 -2
  3. package/dist/agents/AccessibilityAllyAgent.d.ts +0 -7
  4. package/dist/agents/AccessibilityAllyAgent.d.ts.map +1 -1
  5. package/dist/agents/AccessibilityAllyAgent.js +0 -15
  6. package/dist/agents/AccessibilityAllyAgent.js.map +1 -1
  7. package/dist/agents/ApiContractValidatorAgent.js +4 -4
  8. package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
  9. package/dist/agents/BaseAgent.d.ts +2 -0
  10. package/dist/agents/BaseAgent.d.ts.map +1 -1
  11. package/dist/agents/BaseAgent.js +43 -41
  12. package/dist/agents/BaseAgent.js.map +1 -1
  13. package/dist/agents/CodeComplexityAnalyzerAgent.d.ts +0 -8
  14. package/dist/agents/CodeComplexityAnalyzerAgent.d.ts.map +1 -1
  15. package/dist/agents/CodeComplexityAnalyzerAgent.js +0 -15
  16. package/dist/agents/CodeComplexityAnalyzerAgent.js.map +1 -1
  17. package/dist/agents/CodeIntelligenceAgent.d.ts +0 -1
  18. package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -1
  19. package/dist/agents/CodeIntelligenceAgent.js +0 -2
  20. package/dist/agents/CodeIntelligenceAgent.js.map +1 -1
  21. package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
  22. package/dist/agents/DeploymentReadinessAgent.js +30 -30
  23. package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
  24. package/dist/agents/FlakyTestHunterAgent.d.ts +0 -10
  25. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  26. package/dist/agents/FlakyTestHunterAgent.js +10 -20
  27. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  28. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
  29. package/dist/agents/FleetCommanderAgent.js +28 -28
  30. package/dist/agents/FleetCommanderAgent.js.map +1 -1
  31. package/dist/agents/LearningAgent.js +1 -1
  32. package/dist/agents/LearningAgent.js.map +1 -1
  33. package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
  34. package/dist/agents/PerformanceTesterAgent.js +25 -25
  35. package/dist/agents/PerformanceTesterAgent.js.map +1 -1
  36. package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
  37. package/dist/agents/ProductionIntelligenceAgent.js +20 -20
  38. package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
  39. package/dist/agents/QXPartnerAgent.d.ts +0 -8
  40. package/dist/agents/QXPartnerAgent.d.ts.map +1 -1
  41. package/dist/agents/QXPartnerAgent.js +0 -15
  42. package/dist/agents/QXPartnerAgent.js.map +1 -1
  43. package/dist/agents/QualityAnalyzerAgent.d.ts +0 -7
  44. package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
  45. package/dist/agents/QualityAnalyzerAgent.js +0 -16
  46. package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
  47. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
  48. package/dist/agents/RegressionRiskAnalyzerAgent.js +18 -18
  49. package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
  50. package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
  51. package/dist/agents/RequirementsValidatorAgent.js +21 -21
  52. package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
  53. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  54. package/dist/agents/SecurityScannerAgent.js +38 -38
  55. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  56. package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
  57. package/dist/agents/TestDataArchitectAgent.js +29 -29
  58. package/dist/agents/TestDataArchitectAgent.js.map +1 -1
  59. package/dist/agents/TestExecutorAgent.d.ts +0 -7
  60. package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
  61. package/dist/agents/TestExecutorAgent.js +35 -51
  62. package/dist/agents/TestExecutorAgent.js.map +1 -1
  63. package/dist/agents/TestGeneratorAgent.d.ts +0 -7
  64. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
  65. package/dist/agents/TestGeneratorAgent.js +0 -16
  66. package/dist/agents/TestGeneratorAgent.js.map +1 -1
  67. package/dist/agents/adapters/AgentLLMAdapter.d.ts.map +1 -1
  68. package/dist/agents/adapters/AgentLLMAdapter.js +5 -4
  69. package/dist/agents/adapters/AgentLLMAdapter.js.map +1 -1
  70. package/dist/agents/adapters/CoordinatorAdapter.d.ts.map +1 -1
  71. package/dist/agents/adapters/CoordinatorAdapter.js +2 -1
  72. package/dist/agents/adapters/CoordinatorAdapter.js.map +1 -1
  73. package/dist/agents/n8n/N8nAPIClient.d.ts.map +1 -1
  74. package/dist/agents/n8n/N8nAPIClient.js +3 -2
  75. package/dist/agents/n8n/N8nAPIClient.js.map +1 -1
  76. package/dist/agents/n8n/N8nAuditPersistence.d.ts.map +1 -1
  77. package/dist/agents/n8n/N8nAuditPersistence.js +2 -1
  78. package/dist/agents/n8n/N8nAuditPersistence.js.map +1 -1
  79. package/dist/agents/n8n/N8nBaseAgent.js +1 -1
  80. package/dist/agents/n8n/N8nBaseAgent.js.map +1 -1
  81. package/dist/agents/n8n/N8nComplianceValidatorAgent.js +1 -1
  82. package/dist/agents/n8n/N8nComplianceValidatorAgent.js.map +1 -1
  83. package/dist/agents/n8n/N8nMonitoringValidatorAgent.js +1 -1
  84. package/dist/agents/n8n/N8nMonitoringValidatorAgent.js.map +1 -1
  85. package/dist/agents/n8n/N8nReplayabilityTesterAgent.js +1 -1
  86. package/dist/agents/n8n/N8nReplayabilityTesterAgent.js.map +1 -1
  87. package/dist/agents/n8n/N8nSecurityAuditorAgent.js +1 -1
  88. package/dist/agents/n8n/N8nSecurityAuditorAgent.js.map +1 -1
  89. package/dist/agents/pool/AgentPool.d.ts.map +1 -1
  90. package/dist/agents/pool/AgentPool.js +2 -1
  91. package/dist/agents/pool/AgentPool.js.map +1 -1
  92. package/dist/agents/pool/QEAgentPoolFactory.d.ts.map +1 -1
  93. package/dist/agents/pool/QEAgentPoolFactory.js +2 -1
  94. package/dist/agents/pool/QEAgentPoolFactory.js.map +1 -1
  95. package/dist/cli/commands/agent/spawn.d.ts +12 -1
  96. package/dist/cli/commands/agent/spawn.d.ts.map +1 -1
  97. package/dist/cli/commands/agent/spawn.js +95 -8
  98. package/dist/cli/commands/agent/spawn.js.map +1 -1
  99. package/dist/cli/index.js +91 -0
  100. package/dist/cli/index.js.map +1 -1
  101. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  102. package/dist/edge/adapters/BrowserHNSWAdapter.d.ts +134 -0
  103. package/dist/edge/adapters/BrowserHNSWAdapter.d.ts.map +1 -0
  104. package/dist/edge/adapters/BrowserHNSWAdapter.js +484 -0
  105. package/dist/edge/adapters/BrowserHNSWAdapter.js.map +1 -0
  106. package/dist/edge/adapters/IndexedDBStorage.d.ts +114 -0
  107. package/dist/edge/adapters/IndexedDBStorage.d.ts.map +1 -0
  108. package/dist/edge/adapters/IndexedDBStorage.js +478 -0
  109. package/dist/edge/adapters/IndexedDBStorage.js.map +1 -0
  110. package/dist/edge/adapters/index.d.ts +12 -0
  111. package/dist/edge/adapters/index.d.ts.map +1 -0
  112. package/dist/edge/adapters/index.js +22 -0
  113. package/dist/edge/adapters/index.js.map +1 -0
  114. package/dist/edge/browser/BrowserAgent.d.ts +241 -0
  115. package/dist/edge/browser/BrowserAgent.d.ts.map +1 -0
  116. package/dist/edge/browser/BrowserAgent.js +743 -0
  117. package/dist/edge/browser/BrowserAgent.js.map +1 -0
  118. package/dist/edge/index.d.ts +34 -0
  119. package/dist/edge/index.d.ts.map +1 -0
  120. package/dist/edge/index.js +114 -0
  121. package/dist/edge/index.js.map +1 -0
  122. package/dist/edge/p2p/coordination/CoordinationManager.d.ts +181 -0
  123. package/dist/edge/p2p/coordination/CoordinationManager.d.ts.map +1 -0
  124. package/dist/edge/p2p/coordination/CoordinationManager.js +851 -0
  125. package/dist/edge/p2p/coordination/CoordinationManager.js.map +1 -0
  126. package/dist/edge/p2p/coordination/HealthMonitor.d.ts +143 -0
  127. package/dist/edge/p2p/coordination/HealthMonitor.d.ts.map +1 -0
  128. package/dist/edge/p2p/coordination/HealthMonitor.js +432 -0
  129. package/dist/edge/p2p/coordination/HealthMonitor.js.map +1 -0
  130. package/dist/edge/p2p/coordination/SyncOrchestrator.d.ts +146 -0
  131. package/dist/edge/p2p/coordination/SyncOrchestrator.d.ts.map +1 -0
  132. package/dist/edge/p2p/coordination/SyncOrchestrator.js +783 -0
  133. package/dist/edge/p2p/coordination/SyncOrchestrator.js.map +1 -0
  134. package/dist/edge/p2p/coordination/index.d.ts +70 -0
  135. package/dist/edge/p2p/coordination/index.d.ts.map +1 -0
  136. package/dist/edge/p2p/coordination/index.js +107 -0
  137. package/dist/edge/p2p/coordination/index.js.map +1 -0
  138. package/dist/edge/p2p/coordination/types.d.ts +572 -0
  139. package/dist/edge/p2p/coordination/types.d.ts.map +1 -0
  140. package/dist/edge/p2p/coordination/types.js +366 -0
  141. package/dist/edge/p2p/coordination/types.js.map +1 -0
  142. package/dist/edge/p2p/crdt/CRDTStore.d.ts +324 -0
  143. package/dist/edge/p2p/crdt/CRDTStore.d.ts.map +1 -0
  144. package/dist/edge/p2p/crdt/CRDTStore.js +839 -0
  145. package/dist/edge/p2p/crdt/CRDTStore.js.map +1 -0
  146. package/dist/edge/p2p/crdt/GCounter.d.ts +173 -0
  147. package/dist/edge/p2p/crdt/GCounter.d.ts.map +1 -0
  148. package/dist/edge/p2p/crdt/GCounter.js +394 -0
  149. package/dist/edge/p2p/crdt/GCounter.js.map +1 -0
  150. package/dist/edge/p2p/crdt/LWWRegister.d.ts +200 -0
  151. package/dist/edge/p2p/crdt/LWWRegister.d.ts.map +1 -0
  152. package/dist/edge/p2p/crdt/LWWRegister.js +456 -0
  153. package/dist/edge/p2p/crdt/LWWRegister.js.map +1 -0
  154. package/dist/edge/p2p/crdt/ORSet.d.ts +232 -0
  155. package/dist/edge/p2p/crdt/ORSet.d.ts.map +1 -0
  156. package/dist/edge/p2p/crdt/ORSet.js +723 -0
  157. package/dist/edge/p2p/crdt/ORSet.js.map +1 -0
  158. package/dist/edge/p2p/crdt/PatternCRDT.d.ts +366 -0
  159. package/dist/edge/p2p/crdt/PatternCRDT.d.ts.map +1 -0
  160. package/dist/edge/p2p/crdt/PatternCRDT.js +838 -0
  161. package/dist/edge/p2p/crdt/PatternCRDT.js.map +1 -0
  162. package/dist/edge/p2p/crdt/VectorClock.d.ts +274 -0
  163. package/dist/edge/p2p/crdt/VectorClock.d.ts.map +1 -0
  164. package/dist/edge/p2p/crdt/VectorClock.js +499 -0
  165. package/dist/edge/p2p/crdt/VectorClock.js.map +1 -0
  166. package/dist/edge/p2p/crdt/index.d.ts +87 -0
  167. package/dist/edge/p2p/crdt/index.d.ts.map +1 -0
  168. package/dist/edge/p2p/crdt/index.js +120 -0
  169. package/dist/edge/p2p/crdt/index.js.map +1 -0
  170. package/dist/edge/p2p/crdt/types.d.ts +667 -0
  171. package/dist/edge/p2p/crdt/types.d.ts.map +1 -0
  172. package/dist/edge/p2p/crdt/types.js +208 -0
  173. package/dist/edge/p2p/crdt/types.js.map +1 -0
  174. package/dist/edge/p2p/crypto/Identity.d.ts +139 -0
  175. package/dist/edge/p2p/crypto/Identity.d.ts.map +1 -0
  176. package/dist/edge/p2p/crypto/Identity.js +449 -0
  177. package/dist/edge/p2p/crypto/Identity.js.map +1 -0
  178. package/dist/edge/p2p/crypto/KeyManager.d.ts +196 -0
  179. package/dist/edge/p2p/crypto/KeyManager.d.ts.map +1 -0
  180. package/dist/edge/p2p/crypto/KeyManager.js +576 -0
  181. package/dist/edge/p2p/crypto/KeyManager.js.map +1 -0
  182. package/dist/edge/p2p/crypto/Signer.d.ts +164 -0
  183. package/dist/edge/p2p/crypto/Signer.d.ts.map +1 -0
  184. package/dist/edge/p2p/crypto/Signer.js +357 -0
  185. package/dist/edge/p2p/crypto/Signer.js.map +1 -0
  186. package/dist/edge/p2p/crypto/index.d.ts +90 -0
  187. package/dist/edge/p2p/crypto/index.d.ts.map +1 -0
  188. package/dist/edge/p2p/crypto/index.js +158 -0
  189. package/dist/edge/p2p/crypto/index.js.map +1 -0
  190. package/dist/edge/p2p/crypto/types.d.ts +217 -0
  191. package/dist/edge/p2p/crypto/types.d.ts.map +1 -0
  192. package/dist/edge/p2p/crypto/types.js +42 -0
  193. package/dist/edge/p2p/crypto/types.js.map +1 -0
  194. package/dist/edge/p2p/federated/FederatedCoordinator.d.ts +270 -0
  195. package/dist/edge/p2p/federated/FederatedCoordinator.d.ts.map +1 -0
  196. package/dist/edge/p2p/federated/FederatedCoordinator.js +824 -0
  197. package/dist/edge/p2p/federated/FederatedCoordinator.js.map +1 -0
  198. package/dist/edge/p2p/federated/FederatedRound.d.ts +295 -0
  199. package/dist/edge/p2p/federated/FederatedRound.d.ts.map +1 -0
  200. package/dist/edge/p2p/federated/FederatedRound.js +819 -0
  201. package/dist/edge/p2p/federated/FederatedRound.js.map +1 -0
  202. package/dist/edge/p2p/federated/GradientAggregator.d.ts +226 -0
  203. package/dist/edge/p2p/federated/GradientAggregator.d.ts.map +1 -0
  204. package/dist/edge/p2p/federated/GradientAggregator.js +826 -0
  205. package/dist/edge/p2p/federated/GradientAggregator.js.map +1 -0
  206. package/dist/edge/p2p/federated/ModelManager.d.ts +248 -0
  207. package/dist/edge/p2p/federated/ModelManager.d.ts.map +1 -0
  208. package/dist/edge/p2p/federated/ModelManager.js +724 -0
  209. package/dist/edge/p2p/federated/ModelManager.js.map +1 -0
  210. package/dist/edge/p2p/federated/index.d.ts +65 -0
  211. package/dist/edge/p2p/federated/index.d.ts.map +1 -0
  212. package/dist/edge/p2p/federated/index.js +110 -0
  213. package/dist/edge/p2p/federated/index.js.map +1 -0
  214. package/dist/edge/p2p/federated/types.d.ts +905 -0
  215. package/dist/edge/p2p/federated/types.d.ts.map +1 -0
  216. package/dist/edge/p2p/federated/types.js +339 -0
  217. package/dist/edge/p2p/federated/types.js.map +1 -0
  218. package/dist/edge/p2p/index.d.ts +156 -0
  219. package/dist/edge/p2p/index.d.ts.map +1 -0
  220. package/dist/edge/p2p/index.js +242 -0
  221. package/dist/edge/p2p/index.js.map +1 -0
  222. package/dist/edge/p2p/nat/ConnectivityTester.d.ts +128 -0
  223. package/dist/edge/p2p/nat/ConnectivityTester.d.ts.map +1 -0
  224. package/dist/edge/p2p/nat/ConnectivityTester.js +560 -0
  225. package/dist/edge/p2p/nat/ConnectivityTester.js.map +1 -0
  226. package/dist/edge/p2p/nat/HolePuncher.d.ts +159 -0
  227. package/dist/edge/p2p/nat/HolePuncher.d.ts.map +1 -0
  228. package/dist/edge/p2p/nat/HolePuncher.js +569 -0
  229. package/dist/edge/p2p/nat/HolePuncher.js.map +1 -0
  230. package/dist/edge/p2p/nat/NATDetector.d.ts +109 -0
  231. package/dist/edge/p2p/nat/NATDetector.d.ts.map +1 -0
  232. package/dist/edge/p2p/nat/NATDetector.js +472 -0
  233. package/dist/edge/p2p/nat/NATDetector.js.map +1 -0
  234. package/dist/edge/p2p/nat/TURNManager.d.ts +158 -0
  235. package/dist/edge/p2p/nat/TURNManager.d.ts.map +1 -0
  236. package/dist/edge/p2p/nat/TURNManager.js +547 -0
  237. package/dist/edge/p2p/nat/TURNManager.js.map +1 -0
  238. package/dist/edge/p2p/nat/index.d.ts +74 -0
  239. package/dist/edge/p2p/nat/index.d.ts.map +1 -0
  240. package/dist/edge/p2p/nat/index.js +104 -0
  241. package/dist/edge/p2p/nat/index.js.map +1 -0
  242. package/dist/edge/p2p/nat/types.d.ts +583 -0
  243. package/dist/edge/p2p/nat/types.d.ts.map +1 -0
  244. package/dist/edge/p2p/nat/types.js +267 -0
  245. package/dist/edge/p2p/nat/types.js.map +1 -0
  246. package/dist/edge/p2p/protocol/AgentChannel.d.ts +333 -0
  247. package/dist/edge/p2p/protocol/AgentChannel.d.ts.map +1 -0
  248. package/dist/edge/p2p/protocol/AgentChannel.js +914 -0
  249. package/dist/edge/p2p/protocol/AgentChannel.js.map +1 -0
  250. package/dist/edge/p2p/protocol/MessageEncoder.d.ts +147 -0
  251. package/dist/edge/p2p/protocol/MessageEncoder.d.ts.map +1 -0
  252. package/dist/edge/p2p/protocol/MessageEncoder.js +738 -0
  253. package/dist/edge/p2p/protocol/MessageEncoder.js.map +1 -0
  254. package/dist/edge/p2p/protocol/MessageRouter.d.ts +266 -0
  255. package/dist/edge/p2p/protocol/MessageRouter.d.ts.map +1 -0
  256. package/dist/edge/p2p/protocol/MessageRouter.js +808 -0
  257. package/dist/edge/p2p/protocol/MessageRouter.js.map +1 -0
  258. package/dist/edge/p2p/protocol/ProtocolHandler.d.ts +309 -0
  259. package/dist/edge/p2p/protocol/ProtocolHandler.d.ts.map +1 -0
  260. package/dist/edge/p2p/protocol/ProtocolHandler.js +930 -0
  261. package/dist/edge/p2p/protocol/ProtocolHandler.js.map +1 -0
  262. package/dist/edge/p2p/protocol/index.d.ts +114 -0
  263. package/dist/edge/p2p/protocol/index.d.ts.map +1 -0
  264. package/dist/edge/p2p/protocol/index.js +206 -0
  265. package/dist/edge/p2p/protocol/index.js.map +1 -0
  266. package/dist/edge/p2p/protocol/types.d.ts +737 -0
  267. package/dist/edge/p2p/protocol/types.d.ts.map +1 -0
  268. package/dist/edge/p2p/protocol/types.js +490 -0
  269. package/dist/edge/p2p/protocol/types.js.map +1 -0
  270. package/dist/edge/p2p/sharing/PatternBroadcaster.d.ts +284 -0
  271. package/dist/edge/p2p/sharing/PatternBroadcaster.d.ts.map +1 -0
  272. package/dist/edge/p2p/sharing/PatternBroadcaster.js +644 -0
  273. package/dist/edge/p2p/sharing/PatternBroadcaster.js.map +1 -0
  274. package/dist/edge/p2p/sharing/PatternIndex.d.ts +168 -0
  275. package/dist/edge/p2p/sharing/PatternIndex.d.ts.map +1 -0
  276. package/dist/edge/p2p/sharing/PatternIndex.js +781 -0
  277. package/dist/edge/p2p/sharing/PatternIndex.js.map +1 -0
  278. package/dist/edge/p2p/sharing/PatternSerializer.d.ts +163 -0
  279. package/dist/edge/p2p/sharing/PatternSerializer.d.ts.map +1 -0
  280. package/dist/edge/p2p/sharing/PatternSerializer.js +696 -0
  281. package/dist/edge/p2p/sharing/PatternSerializer.js.map +1 -0
  282. package/dist/edge/p2p/sharing/PatternSyncManager.d.ts +242 -0
  283. package/dist/edge/p2p/sharing/PatternSyncManager.d.ts.map +1 -0
  284. package/dist/edge/p2p/sharing/PatternSyncManager.js +859 -0
  285. package/dist/edge/p2p/sharing/PatternSyncManager.js.map +1 -0
  286. package/dist/edge/p2p/sharing/index.d.ts +90 -0
  287. package/dist/edge/p2p/sharing/index.d.ts.map +1 -0
  288. package/dist/edge/p2p/sharing/index.js +152 -0
  289. package/dist/edge/p2p/sharing/index.js.map +1 -0
  290. package/dist/edge/p2p/sharing/types.d.ts +796 -0
  291. package/dist/edge/p2p/sharing/types.d.ts.map +1 -0
  292. package/dist/edge/p2p/sharing/types.js +264 -0
  293. package/dist/edge/p2p/sharing/types.js.map +1 -0
  294. package/dist/edge/p2p/webrtc/ConnectionPool.d.ts +218 -0
  295. package/dist/edge/p2p/webrtc/ConnectionPool.d.ts.map +1 -0
  296. package/dist/edge/p2p/webrtc/ConnectionPool.js +562 -0
  297. package/dist/edge/p2p/webrtc/ConnectionPool.js.map +1 -0
  298. package/dist/edge/p2p/webrtc/ICEManager.d.ts +171 -0
  299. package/dist/edge/p2p/webrtc/ICEManager.d.ts.map +1 -0
  300. package/dist/edge/p2p/webrtc/ICEManager.js +490 -0
  301. package/dist/edge/p2p/webrtc/ICEManager.js.map +1 -0
  302. package/dist/edge/p2p/webrtc/PeerConnectionManager.d.ts +159 -0
  303. package/dist/edge/p2p/webrtc/PeerConnectionManager.d.ts.map +1 -0
  304. package/dist/edge/p2p/webrtc/PeerConnectionManager.js +735 -0
  305. package/dist/edge/p2p/webrtc/PeerConnectionManager.js.map +1 -0
  306. package/dist/edge/p2p/webrtc/SignalingClient.d.ts +191 -0
  307. package/dist/edge/p2p/webrtc/SignalingClient.d.ts.map +1 -0
  308. package/dist/edge/p2p/webrtc/SignalingClient.js +608 -0
  309. package/dist/edge/p2p/webrtc/SignalingClient.js.map +1 -0
  310. package/dist/edge/p2p/webrtc/index.d.ts +158 -0
  311. package/dist/edge/p2p/webrtc/index.d.ts.map +1 -0
  312. package/dist/edge/p2p/webrtc/index.js +164 -0
  313. package/dist/edge/p2p/webrtc/index.js.map +1 -0
  314. package/dist/edge/p2p/webrtc/types.d.ts +665 -0
  315. package/dist/edge/p2p/webrtc/types.d.ts.map +1 -0
  316. package/dist/edge/p2p/webrtc/types.js +245 -0
  317. package/dist/edge/p2p/webrtc/types.js.map +1 -0
  318. package/dist/edge/server/AgentSpawnAPI.d.ts +98 -0
  319. package/dist/edge/server/AgentSpawnAPI.d.ts.map +1 -0
  320. package/dist/edge/server/AgentSpawnAPI.js +264 -0
  321. package/dist/edge/server/AgentSpawnAPI.js.map +1 -0
  322. package/dist/edge/server/SignalingServer.d.ts +71 -0
  323. package/dist/edge/server/SignalingServer.d.ts.map +1 -0
  324. package/dist/edge/server/SignalingServer.js +429 -0
  325. package/dist/edge/server/SignalingServer.js.map +1 -0
  326. package/dist/edge/server/index.d.ts +64 -0
  327. package/dist/edge/server/index.d.ts.map +1 -0
  328. package/dist/edge/server/index.js +318 -0
  329. package/dist/edge/server/index.js.map +1 -0
  330. package/dist/edge/types/browser-agent.types.d.ts +455 -0
  331. package/dist/edge/types/browser-agent.types.d.ts.map +1 -0
  332. package/dist/edge/types/browser-agent.types.js +116 -0
  333. package/dist/edge/types/browser-agent.types.js.map +1 -0
  334. package/dist/edge/types/index.d.ts +11 -0
  335. package/dist/edge/types/index.d.ts.map +1 -0
  336. package/dist/edge/types/index.js +17 -0
  337. package/dist/edge/types/index.js.map +1 -0
  338. package/dist/edge/types/storage.types.d.ts +207 -0
  339. package/dist/edge/types/storage.types.d.ts.map +1 -0
  340. package/dist/edge/types/storage.types.js +47 -0
  341. package/dist/edge/types/storage.types.js.map +1 -0
  342. package/dist/edge/wasm/shims.d.ts +224 -0
  343. package/dist/edge/wasm/shims.d.ts.map +1 -0
  344. package/dist/edge/wasm/shims.js +667 -0
  345. package/dist/edge/wasm/shims.js.map +1 -0
  346. package/dist/mcp/handlers/NewDomainToolsHandler.d.ts +33 -0
  347. package/dist/mcp/handlers/NewDomainToolsHandler.d.ts.map +1 -0
  348. package/dist/mcp/handlers/NewDomainToolsHandler.js +305 -0
  349. package/dist/mcp/handlers/NewDomainToolsHandler.js.map +1 -0
  350. package/dist/mcp/handlers/filtered/index.d.ts +15 -19
  351. package/dist/mcp/handlers/filtered/index.d.ts.map +1 -1
  352. package/dist/mcp/handlers/filtered/index.js +16 -27
  353. package/dist/mcp/handlers/filtered/index.js.map +1 -1
  354. package/dist/mcp/handlers/integration/index.d.ts +5 -4
  355. package/dist/mcp/handlers/integration/index.d.ts.map +1 -1
  356. package/dist/mcp/handlers/integration/index.js +7 -7
  357. package/dist/mcp/handlers/integration/index.js.map +1 -1
  358. package/dist/mcp/server-instructions.d.ts +1 -1
  359. package/dist/mcp/server-instructions.js +1 -1
  360. package/dist/mcp/server.d.ts.map +1 -1
  361. package/dist/mcp/server.js +14 -0
  362. package/dist/mcp/server.js.map +1 -1
  363. package/dist/mcp/tools.d.ts +8 -0
  364. package/dist/mcp/tools.d.ts.map +1 -1
  365. package/dist/mcp/tools.js +412 -1
  366. package/dist/mcp/tools.js.map +1 -1
  367. package/dist/persistence/migrations/all-migrations.d.ts.map +1 -1
  368. package/dist/persistence/migrations/all-migrations.js +44 -1
  369. package/dist/persistence/migrations/all-migrations.js.map +1 -1
  370. package/dist/planning/GOAPPlanner.d.ts +1 -0
  371. package/dist/planning/GOAPPlanner.d.ts.map +1 -1
  372. package/dist/planning/GOAPPlanner.js +15 -2
  373. package/dist/planning/GOAPPlanner.js.map +1 -1
  374. package/dist/planning/PlanLearning.d.ts.map +1 -1
  375. package/dist/planning/PlanLearning.js +2 -1
  376. package/dist/planning/PlanLearning.js.map +1 -1
  377. package/dist/planning/PlanSimilarity.d.ts.map +1 -1
  378. package/dist/planning/PlanSimilarity.js +2 -1
  379. package/dist/planning/PlanSimilarity.js.map +1 -1
  380. package/package.json +29 -8
  381. package/dist/alerting/AlertManager.d.ts +0 -120
  382. package/dist/alerting/AlertManager.d.ts.map +0 -1
  383. package/dist/alerting/AlertManager.js +0 -345
  384. package/dist/alerting/AlertManager.js.map +0 -1
  385. package/dist/alerting/FeedbackRouter.d.ts +0 -98
  386. package/dist/alerting/FeedbackRouter.d.ts.map +0 -1
  387. package/dist/alerting/FeedbackRouter.js +0 -331
  388. package/dist/alerting/FeedbackRouter.js.map +0 -1
  389. package/dist/alerting/StrategyApplicator.d.ts +0 -120
  390. package/dist/alerting/StrategyApplicator.d.ts.map +0 -1
  391. package/dist/alerting/StrategyApplicator.js +0 -299
  392. package/dist/alerting/StrategyApplicator.js.map +0 -1
  393. package/dist/alerting/index.d.ts +0 -68
  394. package/dist/alerting/index.d.ts.map +0 -1
  395. package/dist/alerting/index.js +0 -112
  396. package/dist/alerting/index.js.map +0 -1
  397. package/dist/alerting/types.d.ts +0 -118
  398. package/dist/alerting/types.d.ts.map +0 -1
  399. package/dist/alerting/types.js +0 -11
  400. package/dist/alerting/types.js.map +0 -1
  401. package/dist/cli/commands/fleet/backup.d.ts +0 -49
  402. package/dist/cli/commands/fleet/backup.d.ts.map +0 -1
  403. package/dist/cli/commands/fleet/backup.js +0 -88
  404. package/dist/cli/commands/fleet/backup.js.map +0 -1
  405. package/dist/cli/commands/fleet/health.d.ts +0 -154
  406. package/dist/cli/commands/fleet/health.d.ts.map +0 -1
  407. package/dist/cli/commands/fleet/health.js +0 -483
  408. package/dist/cli/commands/fleet/health.js.map +0 -1
  409. package/dist/cli/commands/fleet/init.d.ts +0 -11
  410. package/dist/cli/commands/fleet/init.d.ts.map +0 -1
  411. package/dist/cli/commands/fleet/init.js +0 -91
  412. package/dist/cli/commands/fleet/init.js.map +0 -1
  413. package/dist/cli/commands/fleet/logs.d.ts +0 -21
  414. package/dist/cli/commands/fleet/logs.d.ts.map +0 -1
  415. package/dist/cli/commands/fleet/logs.js +0 -267
  416. package/dist/cli/commands/fleet/logs.js.map +0 -1
  417. package/dist/cli/commands/fleet/metrics.d.ts +0 -27
  418. package/dist/cli/commands/fleet/metrics.d.ts.map +0 -1
  419. package/dist/cli/commands/fleet/metrics.js +0 -369
  420. package/dist/cli/commands/fleet/metrics.js.map +0 -1
  421. package/dist/cli/commands/fleet/monitor.d.ts +0 -18
  422. package/dist/cli/commands/fleet/monitor.d.ts.map +0 -1
  423. package/dist/cli/commands/fleet/monitor.js +0 -237
  424. package/dist/cli/commands/fleet/monitor.js.map +0 -1
  425. package/dist/cli/commands/fleet/optimize.d.ts +0 -42
  426. package/dist/cli/commands/fleet/optimize.d.ts.map +0 -1
  427. package/dist/cli/commands/fleet/optimize.js +0 -135
  428. package/dist/cli/commands/fleet/optimize.js.map +0 -1
  429. package/dist/cli/commands/fleet/recover.d.ts +0 -22
  430. package/dist/cli/commands/fleet/recover.d.ts.map +0 -1
  431. package/dist/cli/commands/fleet/recover.js +0 -99
  432. package/dist/cli/commands/fleet/recover.js.map +0 -1
  433. package/dist/cli/commands/fleet/restart.d.ts +0 -18
  434. package/dist/cli/commands/fleet/restart.d.ts.map +0 -1
  435. package/dist/cli/commands/fleet/restart.js +0 -290
  436. package/dist/cli/commands/fleet/restart.js.map +0 -1
  437. package/dist/cli/commands/fleet/scale.d.ts +0 -9
  438. package/dist/cli/commands/fleet/scale.d.ts.map +0 -1
  439. package/dist/cli/commands/fleet/scale.js +0 -77
  440. package/dist/cli/commands/fleet/scale.js.map +0 -1
  441. package/dist/cli/commands/fleet/shutdown.d.ts +0 -19
  442. package/dist/cli/commands/fleet/shutdown.d.ts.map +0 -1
  443. package/dist/cli/commands/fleet/shutdown.js +0 -307
  444. package/dist/cli/commands/fleet/shutdown.js.map +0 -1
  445. package/dist/cli/commands/fleet/status.d.ts +0 -10
  446. package/dist/cli/commands/fleet/status.d.ts.map +0 -1
  447. package/dist/cli/commands/fleet/status.js +0 -97
  448. package/dist/cli/commands/fleet/status.js.map +0 -1
  449. package/dist/cli/commands/fleet/topology.d.ts +0 -23
  450. package/dist/cli/commands/fleet/topology.d.ts.map +0 -1
  451. package/dist/cli/commands/fleet/topology.js +0 -376
  452. package/dist/cli/commands/fleet/topology.js.map +0 -1
  453. package/dist/cli/commands/monitor/alerts.d.ts +0 -45
  454. package/dist/cli/commands/monitor/alerts.d.ts.map +0 -1
  455. package/dist/cli/commands/monitor/alerts.js +0 -168
  456. package/dist/cli/commands/monitor/alerts.js.map +0 -1
  457. package/dist/cli/commands/monitor/analyze.d.ts +0 -49
  458. package/dist/cli/commands/monitor/analyze.d.ts.map +0 -1
  459. package/dist/cli/commands/monitor/analyze.js +0 -209
  460. package/dist/cli/commands/monitor/analyze.js.map +0 -1
  461. package/dist/cli/commands/monitor/compare.d.ts +0 -38
  462. package/dist/cli/commands/monitor/compare.d.ts.map +0 -1
  463. package/dist/cli/commands/monitor/compare.js +0 -177
  464. package/dist/cli/commands/monitor/compare.js.map +0 -1
  465. package/dist/cli/commands/monitor/dashboard.d.ts +0 -34
  466. package/dist/cli/commands/monitor/dashboard.d.ts.map +0 -1
  467. package/dist/cli/commands/monitor/dashboard.js +0 -157
  468. package/dist/cli/commands/monitor/dashboard.js.map +0 -1
  469. package/dist/cli/commands/monitor/export.d.ts +0 -36
  470. package/dist/cli/commands/monitor/export.d.ts.map +0 -1
  471. package/dist/cli/commands/monitor/export.js +0 -157
  472. package/dist/cli/commands/monitor/export.js.map +0 -1
  473. package/dist/cli/commands/monitor/index.d.ts +0 -11
  474. package/dist/cli/commands/monitor/index.d.ts.map +0 -1
  475. package/dist/cli/commands/monitor/index.js +0 -14
  476. package/dist/cli/commands/monitor/index.js.map +0 -1
  477. package/dist/cli/commands/quality/baseline.d.ts +0 -27
  478. package/dist/cli/commands/quality/baseline.d.ts.map +0 -1
  479. package/dist/cli/commands/quality/baseline.js +0 -124
  480. package/dist/cli/commands/quality/baseline.js.map +0 -1
  481. package/dist/cli/commands/quality/compare.d.ts +0 -36
  482. package/dist/cli/commands/quality/compare.d.ts.map +0 -1
  483. package/dist/cli/commands/quality/compare.js +0 -136
  484. package/dist/cli/commands/quality/compare.js.map +0 -1
  485. package/dist/cli/commands/quality/decision.d.ts +0 -81
  486. package/dist/cli/commands/quality/decision.d.ts.map +0 -1
  487. package/dist/cli/commands/quality/decision.js +0 -319
  488. package/dist/cli/commands/quality/decision.js.map +0 -1
  489. package/dist/cli/commands/quality/gate.d.ts +0 -47
  490. package/dist/cli/commands/quality/gate.d.ts.map +0 -1
  491. package/dist/cli/commands/quality/gate.js +0 -205
  492. package/dist/cli/commands/quality/gate.js.map +0 -1
  493. package/dist/cli/commands/quality/index.d.ts +0 -17
  494. package/dist/cli/commands/quality/index.d.ts.map +0 -1
  495. package/dist/cli/commands/quality/index.js +0 -41
  496. package/dist/cli/commands/quality/index.js.map +0 -1
  497. package/dist/cli/commands/quality/policy.d.ts +0 -57
  498. package/dist/cli/commands/quality/policy.d.ts.map +0 -1
  499. package/dist/cli/commands/quality/policy.js +0 -359
  500. package/dist/cli/commands/quality/policy.js.map +0 -1
  501. package/dist/cli/commands/quality/risk.d.ts +0 -41
  502. package/dist/cli/commands/quality/risk.d.ts.map +0 -1
  503. package/dist/cli/commands/quality/risk.js +0 -255
  504. package/dist/cli/commands/quality/risk.js.map +0 -1
  505. package/dist/cli/commands/quality/trends.d.ts +0 -40
  506. package/dist/cli/commands/quality/trends.d.ts.map +0 -1
  507. package/dist/cli/commands/quality/trends.js +0 -122
  508. package/dist/cli/commands/quality/trends.js.map +0 -1
  509. package/dist/cli/commands/quality/validate.d.ts +0 -44
  510. package/dist/cli/commands/quality/validate.d.ts.map +0 -1
  511. package/dist/cli/commands/quality/validate.js +0 -234
  512. package/dist/cli/commands/quality/validate.js.map +0 -1
  513. package/dist/cli/commands/test/analyze-failures.d.ts +0 -39
  514. package/dist/cli/commands/test/analyze-failures.d.ts.map +0 -1
  515. package/dist/cli/commands/test/analyze-failures.js +0 -113
  516. package/dist/cli/commands/test/analyze-failures.js.map +0 -1
  517. package/dist/cli/commands/test/clean.d.ts +0 -3
  518. package/dist/cli/commands/test/clean.d.ts.map +0 -1
  519. package/dist/cli/commands/test/clean.js +0 -148
  520. package/dist/cli/commands/test/clean.js.map +0 -1
  521. package/dist/cli/commands/test/debug.d.ts +0 -3
  522. package/dist/cli/commands/test/debug.d.ts.map +0 -1
  523. package/dist/cli/commands/test/debug.js +0 -167
  524. package/dist/cli/commands/test/debug.js.map +0 -1
  525. package/dist/cli/commands/test/diff.d.ts +0 -3
  526. package/dist/cli/commands/test/diff.d.ts.map +0 -1
  527. package/dist/cli/commands/test/diff.js +0 -195
  528. package/dist/cli/commands/test/diff.js.map +0 -1
  529. package/dist/cli/commands/test/flakiness.d.ts +0 -32
  530. package/dist/cli/commands/test/flakiness.d.ts.map +0 -1
  531. package/dist/cli/commands/test/flakiness.js +0 -121
  532. package/dist/cli/commands/test/flakiness.js.map +0 -1
  533. package/dist/cli/commands/test/index.d.ts +0 -17
  534. package/dist/cli/commands/test/index.d.ts.map +0 -1
  535. package/dist/cli/commands/test/index.js +0 -45
  536. package/dist/cli/commands/test/index.js.map +0 -1
  537. package/dist/cli/commands/test/mutate.d.ts +0 -29
  538. package/dist/cli/commands/test/mutate.d.ts.map +0 -1
  539. package/dist/cli/commands/test/mutate.js +0 -163
  540. package/dist/cli/commands/test/mutate.js.map +0 -1
  541. package/dist/cli/commands/test/parallel.d.ts +0 -3
  542. package/dist/cli/commands/test/parallel.d.ts.map +0 -1
  543. package/dist/cli/commands/test/parallel.js +0 -117
  544. package/dist/cli/commands/test/parallel.js.map +0 -1
  545. package/dist/cli/commands/test/profile.d.ts +0 -3
  546. package/dist/cli/commands/test/profile.d.ts.map +0 -1
  547. package/dist/cli/commands/test/profile.js +0 -156
  548. package/dist/cli/commands/test/profile.js.map +0 -1
  549. package/dist/cli/commands/test/queue.d.ts +0 -3
  550. package/dist/cli/commands/test/queue.d.ts.map +0 -1
  551. package/dist/cli/commands/test/queue.js +0 -140
  552. package/dist/cli/commands/test/queue.js.map +0 -1
  553. package/dist/cli/commands/test/retry.d.ts +0 -3
  554. package/dist/cli/commands/test/retry.d.ts.map +0 -1
  555. package/dist/cli/commands/test/retry.js +0 -105
  556. package/dist/cli/commands/test/retry.js.map +0 -1
  557. package/dist/cli/commands/test/snapshot.d.ts +0 -3
  558. package/dist/cli/commands/test/snapshot.d.ts.map +0 -1
  559. package/dist/cli/commands/test/snapshot.js +0 -176
  560. package/dist/cli/commands/test/snapshot.js.map +0 -1
  561. package/dist/cli/commands/test/trace.d.ts +0 -3
  562. package/dist/cli/commands/test/trace.d.ts.map +0 -1
  563. package/dist/cli/commands/test/trace.js +0 -137
  564. package/dist/cli/commands/test/trace.js.map +0 -1
  565. package/dist/cli/commands/test/watch.d.ts +0 -3
  566. package/dist/cli/commands/test/watch.d.ts.map +0 -1
  567. package/dist/cli/commands/test/watch.js +0 -130
  568. package/dist/cli/commands/test/watch.js.map +0 -1
  569. package/dist/cli/index-spec.d.ts +0 -3
  570. package/dist/cli/index-spec.d.ts.map +0 -1
  571. package/dist/cli/index-spec.js +0 -154
  572. package/dist/cli/index-spec.js.map +0 -1
  573. package/dist/cli/index-working.d.ts +0 -7
  574. package/dist/cli/index-working.d.ts.map +0 -1
  575. package/dist/cli/index-working.js +0 -617
  576. package/dist/cli/index-working.js.map +0 -1
  577. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.d.ts +0 -83
  578. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.d.ts.map +0 -1
  579. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.js +0 -130
  580. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.js.map +0 -1
  581. package/dist/mcp/handlers/filtered/flaky-detector-filtered.d.ts +0 -58
  582. package/dist/mcp/handlers/filtered/flaky-detector-filtered.d.ts.map +0 -1
  583. package/dist/mcp/handlers/filtered/flaky-detector-filtered.js +0 -84
  584. package/dist/mcp/handlers/filtered/flaky-detector-filtered.js.map +0 -1
  585. package/dist/mcp/handlers/filtered/security-scanner-filtered.d.ts +0 -54
  586. package/dist/mcp/handlers/filtered/security-scanner-filtered.d.ts.map +0 -1
  587. package/dist/mcp/handlers/filtered/security-scanner-filtered.js +0 -73
  588. package/dist/mcp/handlers/filtered/security-scanner-filtered.js.map +0 -1
  589. package/dist/mcp/handlers/integration/contract-validate.d.ts +0 -10
  590. package/dist/mcp/handlers/integration/contract-validate.d.ts.map +0 -1
  591. package/dist/mcp/handlers/integration/contract-validate.js +0 -348
  592. package/dist/mcp/handlers/integration/contract-validate.js.map +0 -1
  593. package/dist/reporting/ResultAggregator.d.ts +0 -107
  594. package/dist/reporting/ResultAggregator.d.ts.map +0 -1
  595. package/dist/reporting/ResultAggregator.js +0 -435
  596. package/dist/reporting/ResultAggregator.js.map +0 -1
  597. package/dist/reporting/index.d.ts +0 -48
  598. package/dist/reporting/index.d.ts.map +0 -1
  599. package/dist/reporting/index.js +0 -154
  600. package/dist/reporting/index.js.map +0 -1
  601. package/dist/reporting/reporters/ControlLoopReporter.d.ts +0 -128
  602. package/dist/reporting/reporters/ControlLoopReporter.d.ts.map +0 -1
  603. package/dist/reporting/reporters/ControlLoopReporter.js +0 -417
  604. package/dist/reporting/reporters/ControlLoopReporter.js.map +0 -1
  605. package/dist/reporting/reporters/HumanReadableReporter.d.ts +0 -140
  606. package/dist/reporting/reporters/HumanReadableReporter.d.ts.map +0 -1
  607. package/dist/reporting/reporters/HumanReadableReporter.js +0 -524
  608. package/dist/reporting/reporters/HumanReadableReporter.js.map +0 -1
  609. package/dist/reporting/reporters/JSONReporter.d.ts +0 -251
  610. package/dist/reporting/reporters/JSONReporter.d.ts.map +0 -1
  611. package/dist/reporting/reporters/JSONReporter.js +0 -325
  612. package/dist/reporting/reporters/JSONReporter.js.map +0 -1
  613. package/dist/reporting/reporters/index.d.ts +0 -14
  614. package/dist/reporting/reporters/index.d.ts.map +0 -1
  615. package/dist/reporting/reporters/index.js +0 -19
  616. package/dist/reporting/reporters/index.js.map +0 -1
  617. package/dist/reporting/types.d.ts +0 -427
  618. package/dist/reporting/types.d.ts.map +0 -1
  619. package/dist/reporting/types.js +0 -12
  620. package/dist/reporting/types.js.map +0 -1
@@ -1,136 +0,0 @@
1
- "use strict";
2
- /**
3
- * Quality Compare Command
4
- * Compare quality metrics between two points
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.compare = compare;
8
- const Logger_1 = require("../../../utils/Logger");
9
- async function compare(options) {
10
- const logger = Logger_1.Logger.getInstance();
11
- try {
12
- // Fetch baseline metrics
13
- const baselineMetrics = await fetchMetricsForVersion(options.database, options.baseline);
14
- // Fetch current metrics
15
- const currentMetrics = await fetchMetricsForVersion(options.database, options.current);
16
- // Calculate deltas
17
- const deltas = [];
18
- const metricNames = new Set([
19
- ...Object.keys(baselineMetrics),
20
- ...Object.keys(currentMetrics)
21
- ]);
22
- for (const metricName of metricNames) {
23
- const baselineValue = baselineMetrics[metricName] || 0;
24
- const currentValue = currentMetrics[metricName] || 0;
25
- const delta = currentValue - baselineValue;
26
- const percentChange = baselineValue !== 0
27
- ? (delta / baselineValue) * 100
28
- : 0;
29
- let status;
30
- if (Math.abs(percentChange) < 5) {
31
- status = 'stable';
32
- }
33
- else if (isImprovement(metricName, delta)) {
34
- status = 'improved';
35
- }
36
- else {
37
- status = 'regressed';
38
- }
39
- deltas.push({
40
- metric: metricName,
41
- baselineValue: parseFloat(baselineValue.toFixed(2)),
42
- currentValue: parseFloat(currentValue.toFixed(2)),
43
- delta: parseFloat(delta.toFixed(2)),
44
- percentChange: parseFloat(percentChange.toFixed(2)),
45
- status
46
- });
47
- }
48
- // Categorize changes
49
- const improvements = deltas.filter(d => d.status === 'improved');
50
- const regressions = deltas.filter(d => d.status === 'regressed');
51
- const stable = deltas.filter(d => d.status === 'stable');
52
- const comparison = {
53
- baseline: options.baseline,
54
- current: options.current,
55
- totalMetrics: deltas.length,
56
- improved: improvements.length,
57
- regressed: regressions.length,
58
- stable: stable.length
59
- };
60
- logger.info(`Compared ${deltas.length} metrics: ${improvements.length} improved, ${regressions.length} regressed`);
61
- return {
62
- success: true,
63
- comparison,
64
- deltas,
65
- regressions,
66
- improvements
67
- };
68
- }
69
- catch (error) {
70
- logger.error('Failed to compare quality:', error);
71
- throw error;
72
- }
73
- }
74
- async function fetchMetricsForVersion(database, version) {
75
- const metrics = {};
76
- try {
77
- // Fetch metrics tagged with this version
78
- const rows = await database.all(`
79
- SELECT metric_name, AVG(metric_value) as avg_value
80
- FROM metrics
81
- WHERE tags LIKE ?
82
- GROUP BY metric_name
83
- `, [`%${version}%`]);
84
- for (const row of rows) {
85
- metrics[row.metric_name] = row.avg_value ?? 0;
86
- }
87
- // If no tagged metrics found, use most recent
88
- if (Object.keys(metrics).length === 0) {
89
- const recentRows = await database.all(`
90
- SELECT metric_name, metric_value
91
- FROM metrics
92
- WHERE timestamp > datetime('now', '-7 days')
93
- GROUP BY metric_name
94
- HAVING MAX(timestamp)
95
- `);
96
- for (const row of recentRows) {
97
- metrics[row.metric_name] = row.metric_value;
98
- }
99
- }
100
- }
101
- catch (error) {
102
- // Return empty metrics on error
103
- }
104
- return metrics;
105
- }
106
- function isImprovement(metricName, delta) {
107
- // Metrics where higher is better
108
- const higherIsBetter = [
109
- 'coverage',
110
- 'pass_rate',
111
- 'reliability',
112
- 'availability',
113
- 'performance_score'
114
- ];
115
- // Metrics where lower is better
116
- const lowerIsBetter = [
117
- 'error_rate',
118
- 'failure_rate',
119
- 'response_time',
120
- 'latency',
121
- 'defect_density'
122
- ];
123
- for (const metric of higherIsBetter) {
124
- if (metricName.toLowerCase().includes(metric)) {
125
- return delta > 0;
126
- }
127
- }
128
- for (const metric of lowerIsBetter) {
129
- if (metricName.toLowerCase().includes(metric)) {
130
- return delta < 0;
131
- }
132
- }
133
- // Default: assume higher is better
134
- return delta > 0;
135
- }
136
- //# sourceMappingURL=compare.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../../../src/cli/commands/quality/compare.ts"],"names":[],"mappings":"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"}
@@ -1,81 +0,0 @@
1
- /**
2
- * Quality Decision Command
3
- * Make intelligent go/no-go deployment decisions based on quality metrics
4
- */
5
- import { Command } from 'commander';
6
- export interface DecisionCriteria {
7
- coverage: {
8
- weight: number;
9
- threshold: number;
10
- };
11
- testSuccess: {
12
- weight: number;
13
- threshold: number;
14
- };
15
- complexity: {
16
- weight: number;
17
- threshold: number;
18
- };
19
- security: {
20
- weight: number;
21
- threshold: number;
22
- };
23
- performance: {
24
- weight: number;
25
- threshold: number;
26
- };
27
- bugs: {
28
- weight: number;
29
- threshold: number;
30
- };
31
- }
32
- export interface DecisionFactors {
33
- coverage: number;
34
- testSuccess: number;
35
- complexity: number;
36
- security: number;
37
- performance: number;
38
- bugs: number;
39
- }
40
- export interface DecisionResult {
41
- decision: 'go' | 'no-go' | 'conditional';
42
- confidence: number;
43
- score: number;
44
- factors: {
45
- name: string;
46
- value: number;
47
- weight: number;
48
- threshold: number;
49
- passed: boolean;
50
- contribution: number;
51
- }[];
52
- blockers: string[];
53
- warnings: string[];
54
- recommendations: string[];
55
- reasoning: string;
56
- timestamp: string;
57
- }
58
- export declare class QualityDecisionMaker {
59
- private criteria;
60
- constructor(criteria?: Partial<DecisionCriteria>);
61
- decide(): Promise<DecisionResult>;
62
- private collectFactors;
63
- private getCoverage;
64
- private getTestSuccessRate;
65
- private getAverageComplexity;
66
- private getSecurityScore;
67
- private getPerformanceScore;
68
- private getCriticalBugs;
69
- private evaluateFactors;
70
- private calculateContribution;
71
- private calculateScore;
72
- private calculateConfidence;
73
- private makeDecision;
74
- private identifyBlockers;
75
- private identifyWarnings;
76
- private generateRecommendations;
77
- private storeInMemory;
78
- displayResults(result: DecisionResult): void;
79
- }
80
- export declare function createQualityDecisionCommand(): Command;
81
- //# sourceMappingURL=decision.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decision.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/quality/decision.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,IAAI,GAAG,OAAO,GAAG,aAAa,CAAC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;IACJ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAmB;gBAEvB,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAW1C,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC;YA2BzB,cAAc;YAWd,WAAW;YAUX,kBAAkB;YAIlB,oBAAoB;YAIpB,gBAAgB;YAIhB,mBAAmB;YAInB,eAAe;IAI7B,OAAO,CAAC,eAAe;IAgGvB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,YAAY;IAoCpB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,uBAAuB;YA2CjB,aAAa;IAU3B,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;CAyC7C;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CA8CtD"}
@@ -1,319 +0,0 @@
1
- "use strict";
2
- /**
3
- * Quality Decision Command
4
- * Make intelligent go/no-go deployment decisions based on quality metrics
5
- */
6
- var __importDefault = (this && this.__importDefault) || function (mod) {
7
- return (mod && mod.__esModule) ? mod : { "default": mod };
8
- };
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.QualityDecisionMaker = void 0;
11
- exports.createQualityDecisionCommand = createQualityDecisionCommand;
12
- const commander_1 = require("commander");
13
- const chalk_1 = __importDefault(require("chalk"));
14
- const ora_1 = __importDefault(require("ora"));
15
- const child_process_1 = require("child_process");
16
- const util_1 = require("util");
17
- const SecureRandom_js_1 = require("../../../utils/SecureRandom.js");
18
- const ProcessExit_1 = require("../../../utils/ProcessExit");
19
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
20
- class QualityDecisionMaker {
21
- constructor(criteria) {
22
- this.criteria = {
23
- coverage: { weight: 0.25, threshold: 80, ...criteria?.coverage },
24
- testSuccess: { weight: 0.25, threshold: 95, ...criteria?.testSuccess },
25
- complexity: { weight: 0.15, threshold: 10, ...criteria?.complexity },
26
- security: { weight: 0.20, threshold: 0, ...criteria?.security },
27
- performance: { weight: 0.10, threshold: 90, ...criteria?.performance },
28
- bugs: { weight: 0.05, threshold: 0, ...criteria?.bugs },
29
- };
30
- }
31
- async decide() {
32
- const factors = await this.collectFactors();
33
- const evaluatedFactors = this.evaluateFactors(factors);
34
- const score = this.calculateScore(evaluatedFactors);
35
- const confidence = this.calculateConfidence(evaluatedFactors);
36
- const { decision, reasoning } = this.makeDecision(score, confidence, evaluatedFactors);
37
- const blockers = this.identifyBlockers(evaluatedFactors);
38
- const warnings = this.identifyWarnings(evaluatedFactors);
39
- const recommendations = this.generateRecommendations(evaluatedFactors, decision);
40
- const result = {
41
- decision,
42
- confidence,
43
- score,
44
- factors: evaluatedFactors,
45
- blockers,
46
- warnings,
47
- recommendations,
48
- reasoning,
49
- timestamp: new Date().toISOString(),
50
- };
51
- await this.storeInMemory(result);
52
- return result;
53
- }
54
- async collectFactors() {
55
- return {
56
- coverage: await this.getCoverage(),
57
- testSuccess: await this.getTestSuccessRate(),
58
- complexity: await this.getAverageComplexity(),
59
- security: await this.getSecurityScore(),
60
- performance: await this.getPerformanceScore(),
61
- bugs: await this.getCriticalBugs(),
62
- };
63
- }
64
- async getCoverage() {
65
- try {
66
- const { stdout } = await execAsync('npx nyc report --reporter=json-summary 2>/dev/null || echo "{}"');
67
- const coverage = JSON.parse(stdout);
68
- return coverage?.total?.lines?.pct ?? 0;
69
- }
70
- catch {
71
- return 0;
72
- }
73
- }
74
- async getTestSuccessRate() {
75
- return 95 + SecureRandom_js_1.SecureRandom.randomFloat() * 5;
76
- }
77
- async getAverageComplexity() {
78
- return 5 + SecureRandom_js_1.SecureRandom.randomFloat() * 10;
79
- }
80
- async getSecurityScore() {
81
- return Math.floor(SecureRandom_js_1.SecureRandom.randomFloat() * 3);
82
- }
83
- async getPerformanceScore() {
84
- return 85 + SecureRandom_js_1.SecureRandom.randomFloat() * 15;
85
- }
86
- async getCriticalBugs() {
87
- return Math.floor(SecureRandom_js_1.SecureRandom.randomFloat() * 2);
88
- }
89
- evaluateFactors(factors) {
90
- const evaluated = [];
91
- // Coverage (higher is better)
92
- evaluated.push({
93
- name: 'Code Coverage',
94
- value: factors.coverage,
95
- weight: this.criteria.coverage.weight,
96
- threshold: this.criteria.coverage.threshold,
97
- passed: factors.coverage >= this.criteria.coverage.threshold,
98
- contribution: this.calculateContribution(factors.coverage, this.criteria.coverage.threshold, this.criteria.coverage.weight, false),
99
- });
100
- // Test Success (higher is better)
101
- evaluated.push({
102
- name: 'Test Success Rate',
103
- value: factors.testSuccess,
104
- weight: this.criteria.testSuccess.weight,
105
- threshold: this.criteria.testSuccess.threshold,
106
- passed: factors.testSuccess >= this.criteria.testSuccess.threshold,
107
- contribution: this.calculateContribution(factors.testSuccess, this.criteria.testSuccess.threshold, this.criteria.testSuccess.weight, false),
108
- });
109
- // Complexity (lower is better)
110
- evaluated.push({
111
- name: 'Code Complexity',
112
- value: factors.complexity,
113
- weight: this.criteria.complexity.weight,
114
- threshold: this.criteria.complexity.threshold,
115
- passed: factors.complexity <= this.criteria.complexity.threshold,
116
- contribution: this.calculateContribution(factors.complexity, this.criteria.complexity.threshold, this.criteria.complexity.weight, true),
117
- });
118
- // Security (lower is better)
119
- evaluated.push({
120
- name: 'Security Issues',
121
- value: factors.security,
122
- weight: this.criteria.security.weight,
123
- threshold: this.criteria.security.threshold,
124
- passed: factors.security <= this.criteria.security.threshold,
125
- contribution: this.calculateContribution(factors.security, this.criteria.security.threshold, this.criteria.security.weight, true),
126
- });
127
- // Performance (higher is better)
128
- evaluated.push({
129
- name: 'Performance Score',
130
- value: factors.performance,
131
- weight: this.criteria.performance.weight,
132
- threshold: this.criteria.performance.threshold,
133
- passed: factors.performance >= this.criteria.performance.threshold,
134
- contribution: this.calculateContribution(factors.performance, this.criteria.performance.threshold, this.criteria.performance.weight, false),
135
- });
136
- // Bugs (lower is better)
137
- evaluated.push({
138
- name: 'Critical Bugs',
139
- value: factors.bugs,
140
- weight: this.criteria.bugs.weight,
141
- threshold: this.criteria.bugs.threshold,
142
- passed: factors.bugs <= this.criteria.bugs.threshold,
143
- contribution: this.calculateContribution(factors.bugs, this.criteria.bugs.threshold, this.criteria.bugs.weight, true),
144
- });
145
- return evaluated;
146
- }
147
- calculateContribution(value, threshold, weight, inverse) {
148
- let normalized;
149
- if (inverse) {
150
- // For metrics where lower is better
151
- normalized = threshold === 0 ? (value === 0 ? 1 : 0) : Math.max(0, 1 - value / (threshold * 2));
152
- }
153
- else {
154
- // For metrics where higher is better
155
- normalized = Math.min(1, value / threshold);
156
- }
157
- return normalized * weight * 100;
158
- }
159
- calculateScore(factors) {
160
- return factors.reduce((sum, f) => sum + f.contribution, 0);
161
- }
162
- calculateConfidence(factors) {
163
- const passRate = factors.filter((f) => f.passed).length / factors.length;
164
- return passRate;
165
- }
166
- makeDecision(score, confidence, factors) {
167
- const criticalFailures = factors.filter((f) => !f.passed && (f.name === 'Security Issues' || f.name === 'Critical Bugs'));
168
- if (criticalFailures.length > 0) {
169
- return {
170
- decision: 'no-go',
171
- reasoning: `Critical issues detected: ${criticalFailures.map((f) => f.name).join(', ')}. Deployment blocked.`,
172
- };
173
- }
174
- if (score >= 80 && confidence >= 0.8) {
175
- return {
176
- decision: 'go',
177
- reasoning: `Quality score ${score.toFixed(1)}/100 with ${(confidence * 100).toFixed(0)}% confidence. All critical criteria met.`,
178
- };
179
- }
180
- if (score >= 60 && confidence >= 0.6) {
181
- return {
182
- decision: 'conditional',
183
- reasoning: `Quality score ${score.toFixed(1)}/100 with ${(confidence * 100).toFixed(0)}% confidence. Review warnings before deploying.`,
184
- };
185
- }
186
- return {
187
- decision: 'no-go',
188
- reasoning: `Quality score ${score.toFixed(1)}/100 below threshold. Address blockers before deployment.`,
189
- };
190
- }
191
- identifyBlockers(factors) {
192
- return factors
193
- .filter((f) => !f.passed && (f.name === 'Security Issues' || f.name === 'Critical Bugs'))
194
- .map((f) => `${f.name}: ${f.value} (threshold: ${f.threshold})`);
195
- }
196
- identifyWarnings(factors) {
197
- return factors
198
- .filter((f) => !f.passed && f.name !== 'Security Issues' && f.name !== 'Critical Bugs')
199
- .map((f) => `${f.name}: ${f.value.toFixed(1)} (threshold: ${f.threshold})`);
200
- }
201
- generateRecommendations(factors, decision) {
202
- const recommendations = [];
203
- if (decision === 'no-go') {
204
- recommendations.push('Address all blockers before resubmitting for deployment');
205
- }
206
- factors
207
- .filter((f) => !f.passed)
208
- .forEach((f) => {
209
- switch (f.name) {
210
- case 'Code Coverage':
211
- recommendations.push('Increase test coverage by adding unit and integration tests');
212
- break;
213
- case 'Test Success Rate':
214
- recommendations.push('Fix failing tests before deployment');
215
- break;
216
- case 'Code Complexity':
217
- recommendations.push('Refactor complex modules to improve maintainability');
218
- break;
219
- case 'Security Issues':
220
- recommendations.push('Resolve all security vulnerabilities immediately');
221
- break;
222
- case 'Performance Score':
223
- recommendations.push('Optimize performance bottlenecks');
224
- break;
225
- case 'Critical Bugs':
226
- recommendations.push('Fix all critical bugs before deployment');
227
- break;
228
- }
229
- });
230
- if (decision === 'go') {
231
- recommendations.push('Proceed with deployment');
232
- recommendations.push('Monitor production metrics closely');
233
- }
234
- return recommendations;
235
- }
236
- async storeInMemory(result) {
237
- try {
238
- await execAsync(`npx claude-flow@alpha hooks post-edit --file "quality-decision" --memory-key "aqe/swarm/quality-cli-commands/decision-result" --metadata '${JSON.stringify(result)}'`);
239
- }
240
- catch (error) {
241
- console.warn('Failed to store in memory:', error);
242
- }
243
- }
244
- displayResults(result) {
245
- console.log('\n' + chalk_1.default.bold('Quality Decision'));
246
- console.log(chalk_1.default.gray('─'.repeat(60)));
247
- // Decision
248
- const decisionColor = result.decision === 'go' ? chalk_1.default.green : result.decision === 'no-go' ? chalk_1.default.red : chalk_1.default.yellow;
249
- console.log('\n' + chalk_1.default.bold('Decision: ') + decisionColor.bold(result.decision.toUpperCase()));
250
- console.log(chalk_1.default.bold('Score: ') + `${result.score.toFixed(1)}/100`);
251
- console.log(chalk_1.default.bold('Confidence: ') + `${(result.confidence * 100).toFixed(0)}%`);
252
- console.log('\n' + chalk_1.default.gray(result.reasoning));
253
- // Factors
254
- console.log('\n' + chalk_1.default.bold('Quality Factors:'));
255
- result.factors.forEach((f) => {
256
- const icon = f.passed ? chalk_1.default.green('✓') : chalk_1.default.red('✗');
257
- const contribution = f.contribution.toFixed(1);
258
- console.log(` ${icon} ${f.name.padEnd(20)} ${f.value.toFixed(1).padStart(6)} (threshold: ${f.threshold}, contribution: ${contribution}%)`);
259
- });
260
- // Blockers
261
- if (result.blockers.length > 0) {
262
- console.log('\n' + chalk_1.default.red.bold('Blockers:'));
263
- result.blockers.forEach((b) => console.log(chalk_1.default.red(` • ${b}`)));
264
- }
265
- // Warnings
266
- if (result.warnings.length > 0) {
267
- console.log('\n' + chalk_1.default.yellow.bold('Warnings:'));
268
- result.warnings.forEach((w) => console.log(chalk_1.default.yellow(` • ${w}`)));
269
- }
270
- // Recommendations
271
- console.log('\n' + chalk_1.default.bold('Recommendations:'));
272
- result.recommendations.forEach((r) => console.log(` • ${r}`));
273
- console.log('\n' + chalk_1.default.gray('─'.repeat(60)));
274
- console.log(chalk_1.default.gray(`Timestamp: ${result.timestamp}\n`));
275
- }
276
- }
277
- exports.QualityDecisionMaker = QualityDecisionMaker;
278
- function createQualityDecisionCommand() {
279
- const command = new commander_1.Command('decision')
280
- .description('Make intelligent go/no-go deployment decisions')
281
- .option('--coverage-threshold <number>', 'Coverage threshold', '80')
282
- .option('--test-threshold <number>', 'Test success threshold', '95')
283
- .option('--json', 'Output results as JSON')
284
- .action(async (options) => {
285
- const spinner = (0, ora_1.default)('Analyzing quality metrics for decision...').start();
286
- try {
287
- const criteria = {};
288
- if (options.coverageThreshold) {
289
- criteria.coverage = {
290
- weight: 0.25,
291
- threshold: parseFloat(options.coverageThreshold),
292
- };
293
- }
294
- if (options.testThreshold) {
295
- criteria.testSuccess = {
296
- weight: 0.25,
297
- threshold: parseFloat(options.testThreshold),
298
- };
299
- }
300
- const decisionMaker = new QualityDecisionMaker(criteria);
301
- const result = await decisionMaker.decide();
302
- spinner.stop();
303
- if (options.json) {
304
- console.log(JSON.stringify(result, null, 2));
305
- }
306
- else {
307
- decisionMaker.displayResults(result);
308
- }
309
- ProcessExit_1.ProcessExit.exitIfNotTest(result.decision === 'no-go' ? 1 : 0);
310
- }
311
- catch (error) {
312
- spinner.fail('Decision analysis failed');
313
- console.error(chalk_1.default.red('Error:'), error);
314
- ProcessExit_1.ProcessExit.exitIfNotTest(1);
315
- }
316
- });
317
- return command;
318
- }
319
- //# sourceMappingURL=decision.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decision.js","sourceRoot":"","sources":["../../../../src/cli/commands/quality/decision.ts"],"names":[],"mappings":"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"}
@@ -1,47 +0,0 @@
1
- /**
2
- * Quality Gate Command
3
- * Execute quality gates with configurable thresholds
4
- */
5
- import { Command } from 'commander';
6
- export interface QualityGateConfig {
7
- coverage?: number;
8
- complexity?: number;
9
- maintainability?: number;
10
- duplications?: number;
11
- securityHotspots?: number;
12
- bugs?: number;
13
- vulnerabilities?: number;
14
- }
15
- export interface QualityGateResult {
16
- passed: boolean;
17
- metrics: {
18
- coverage: number;
19
- complexity: number;
20
- maintainability: number;
21
- duplications: number;
22
- securityHotspots: number;
23
- bugs: number;
24
- vulnerabilities: number;
25
- };
26
- violations: string[];
27
- timestamp: string;
28
- }
29
- export declare class QualityGateExecutor {
30
- private config;
31
- constructor(config?: QualityGateConfig);
32
- execute(): Promise<QualityGateResult>;
33
- private collectMetrics;
34
- private getCoverage;
35
- private getComplexity;
36
- private getMaintainability;
37
- private getDuplications;
38
- private getSecurityHotspots;
39
- private getBugs;
40
- private getVulnerabilities;
41
- private checkThresholds;
42
- private storeInMemory;
43
- displayResults(result: QualityGateResult): void;
44
- private displayMetric;
45
- }
46
- export declare function createQualityGateCommand(): Command;
47
- //# sourceMappingURL=gate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gate.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/quality/gate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAoB;gBAEtB,MAAM,GAAE,iBAAsB;IAYpC,OAAO,IAAI,OAAO,CAAC,iBAAiB,CAAC;YAkB7B,cAAc;YAad,WAAW;YAWX,aAAa;YAKb,kBAAkB;YAKlB,eAAe;YAKf,mBAAmB;YAKnB,OAAO;YAKP,kBAAkB;IAKhC,OAAO,CAAC,eAAe;YAkCT,aAAa;IAW3B,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IA8B/C,OAAO,CAAC,aAAa;CAgBtB;AAED,wBAAgB,wBAAwB,IAAI,OAAO,CA6ClD"}