erosolar-cli 2.1.248 → 2.1.252

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 (470) hide show
  1. package/agents/general.rules.json +10 -133
  2. package/agents/general.rules.json.bak +278 -0
  3. package/agents/general.rules.json.bak2 +306 -0
  4. package/dist/bin/erosolar.js +9 -5
  5. package/dist/bin/erosolar.js.map +1 -1
  6. package/dist/capabilities/bidirectionalAuditCapability.d.ts +26 -0
  7. package/dist/capabilities/bidirectionalAuditCapability.d.ts.map +1 -0
  8. package/dist/capabilities/bidirectionalAuditCapability.js +44 -0
  9. package/dist/capabilities/bidirectionalAuditCapability.js.map +1 -0
  10. package/dist/capabilities/globCapability.d.ts +3 -6
  11. package/dist/capabilities/globCapability.d.ts.map +1 -1
  12. package/dist/capabilities/globCapability.js +6 -10
  13. package/dist/capabilities/globCapability.js.map +1 -1
  14. package/dist/capabilities/index.d.ts +1 -18
  15. package/dist/capabilities/index.d.ts.map +1 -1
  16. package/dist/capabilities/index.js +1 -18
  17. package/dist/capabilities/index.js.map +1 -1
  18. package/dist/capabilities/orchestrationCapability.d.ts +177 -3
  19. package/dist/capabilities/orchestrationCapability.d.ts.map +1 -1
  20. package/dist/capabilities/orchestrationCapability.js +1592 -85
  21. package/dist/capabilities/orchestrationCapability.js.map +1 -1
  22. package/dist/capabilities/searchCapability.d.ts +8 -2
  23. package/dist/capabilities/searchCapability.d.ts.map +1 -1
  24. package/dist/capabilities/searchCapability.js +11 -6
  25. package/dist/capabilities/searchCapability.js.map +1 -1
  26. package/dist/contracts/tools.schema.json +9 -133
  27. package/dist/core/agentOrchestrator.d.ts.map +1 -1
  28. package/dist/core/agentOrchestrator.js +18 -1
  29. package/dist/core/agentOrchestrator.js.map +1 -1
  30. package/dist/core/aiErrorFixer.d.ts +1 -14
  31. package/dist/core/aiErrorFixer.d.ts.map +1 -1
  32. package/dist/core/aiErrorFixer.js +51 -239
  33. package/dist/core/aiErrorFixer.js.map +1 -1
  34. package/dist/core/alphaZeroEngine.d.ts +16 -256
  35. package/dist/core/alphaZeroEngine.d.ts.map +1 -1
  36. package/dist/core/alphaZeroEngine.js +22 -513
  37. package/dist/core/alphaZeroEngine.js.map +1 -1
  38. package/dist/core/completeAttackOrchestrator.d.ts +102 -0
  39. package/dist/core/completeAttackOrchestrator.d.ts.map +1 -0
  40. package/dist/core/completeAttackOrchestrator.js +293 -0
  41. package/dist/core/completeAttackOrchestrator.js.map +1 -0
  42. package/dist/core/defensiveSecurityToolkit.d.ts +373 -0
  43. package/dist/core/defensiveSecurityToolkit.d.ts.map +1 -0
  44. package/dist/core/defensiveSecurityToolkit.js +1304 -0
  45. package/dist/core/defensiveSecurityToolkit.js.map +1 -0
  46. package/dist/core/errors/errorTypes.d.ts +30 -57
  47. package/dist/core/errors/errorTypes.d.ts.map +1 -1
  48. package/dist/core/errors/errorTypes.js +51 -228
  49. package/dist/core/errors/errorTypes.js.map +1 -1
  50. package/dist/core/errors/safetyValidator.d.ts +19 -3
  51. package/dist/core/errors/safetyValidator.d.ts.map +1 -1
  52. package/dist/core/errors/safetyValidator.js +33 -71
  53. package/dist/core/errors/safetyValidator.js.map +1 -1
  54. package/dist/core/failureRecovery.d.ts +4 -100
  55. package/dist/core/failureRecovery.d.ts.map +1 -1
  56. package/dist/core/failureRecovery.js +16 -440
  57. package/dist/core/failureRecovery.js.map +1 -1
  58. package/dist/core/intelligentTargetResearcher.d.ts +142 -0
  59. package/dist/core/intelligentTargetResearcher.d.ts.map +1 -0
  60. package/dist/core/intelligentTargetResearcher.js +367 -0
  61. package/dist/core/intelligentTargetResearcher.js.map +1 -0
  62. package/dist/core/intelligentTestFlows.d.ts +26 -107
  63. package/dist/core/intelligentTestFlows.d.ts.map +1 -1
  64. package/dist/core/intelligentTestFlows.js +15 -659
  65. package/dist/core/intelligentTestFlows.js.map +1 -1
  66. package/dist/core/learningPersistence.d.ts +45 -132
  67. package/dist/core/learningPersistence.d.ts.map +1 -1
  68. package/dist/core/learningPersistence.js +32 -463
  69. package/dist/core/learningPersistence.js.map +1 -1
  70. package/dist/core/metricsTracker.d.ts +22 -139
  71. package/dist/core/metricsTracker.d.ts.map +1 -1
  72. package/dist/core/metricsTracker.js +51 -241
  73. package/dist/core/metricsTracker.js.map +1 -1
  74. package/dist/core/performanceMonitor.d.ts +15 -109
  75. package/dist/core/performanceMonitor.d.ts.map +1 -1
  76. package/dist/core/performanceMonitor.js +27 -184
  77. package/dist/core/performanceMonitor.js.map +1 -1
  78. package/dist/core/resultVerification.d.ts +6 -100
  79. package/dist/core/resultVerification.d.ts.map +1 -1
  80. package/dist/core/resultVerification.js +31 -400
  81. package/dist/core/resultVerification.js.map +1 -1
  82. package/dist/core/selfEvolution.d.ts +32 -126
  83. package/dist/core/selfEvolution.d.ts.map +1 -1
  84. package/dist/core/selfEvolution.js +24 -967
  85. package/dist/core/selfEvolution.js.map +1 -1
  86. package/dist/core/selfImprovement.d.ts +50 -109
  87. package/dist/core/selfImprovement.d.ts.map +1 -1
  88. package/dist/core/selfImprovement.js +14 -689
  89. package/dist/core/selfImprovement.js.map +1 -1
  90. package/dist/core/sourceCodeManager.d.ts +89 -0
  91. package/dist/core/sourceCodeManager.d.ts.map +1 -0
  92. package/dist/core/sourceCodeManager.js +332 -0
  93. package/dist/core/sourceCodeManager.js.map +1 -0
  94. package/dist/core/unifiedOrchestrator.d.ts +88 -0
  95. package/dist/core/unifiedOrchestrator.d.ts.map +1 -0
  96. package/dist/core/unifiedOrchestrator.js +284 -0
  97. package/dist/core/unifiedOrchestrator.js.map +1 -0
  98. package/dist/core/userDefenseOrchestrator.d.ts +202 -0
  99. package/dist/core/userDefenseOrchestrator.d.ts.map +1 -0
  100. package/dist/core/userDefenseOrchestrator.js +1006 -0
  101. package/dist/core/userDefenseOrchestrator.js.map +1 -0
  102. package/dist/plugins/index.d.ts +1 -1
  103. package/dist/plugins/index.d.ts.map +1 -1
  104. package/dist/plugins/index.js +36 -26
  105. package/dist/plugins/index.js.map +1 -1
  106. package/dist/plugins/tools/bidirectionalAudit/bidirectionalAuditPlugin.d.ts +8 -0
  107. package/dist/plugins/tools/bidirectionalAudit/bidirectionalAuditPlugin.d.ts.map +1 -0
  108. package/dist/plugins/tools/bidirectionalAudit/bidirectionalAuditPlugin.js +17 -0
  109. package/dist/plugins/tools/bidirectionalAudit/bidirectionalAuditPlugin.js.map +1 -0
  110. package/dist/plugins/tools/nodeDefaults.d.ts +14 -0
  111. package/dist/plugins/tools/nodeDefaults.d.ts.map +1 -1
  112. package/dist/plugins/tools/nodeDefaults.js +17 -54
  113. package/dist/plugins/tools/nodeDefaults.js.map +1 -1
  114. package/dist/plugins/tools/orchestration/orchestrationPlugin.d.ts +9 -0
  115. package/dist/plugins/tools/orchestration/orchestrationPlugin.d.ts.map +1 -0
  116. package/dist/plugins/tools/orchestration/orchestrationPlugin.js +18 -0
  117. package/dist/plugins/tools/orchestration/orchestrationPlugin.js.map +1 -0
  118. package/dist/shell/interactiveShell.d.ts +101 -2
  119. package/dist/shell/interactiveShell.d.ts.map +1 -1
  120. package/dist/shell/interactiveShell.js +1041 -25
  121. package/dist/shell/interactiveShell.js.map +1 -1
  122. package/dist/tools/appleExposureTools.d.ts +108 -0
  123. package/dist/tools/appleExposureTools.d.ts.map +1 -0
  124. package/dist/tools/appleExposureTools.js +850 -0
  125. package/dist/tools/appleExposureTools.js.map +1 -0
  126. package/dist/tools/bidirectionalAuditTools.d.ts +104 -0
  127. package/dist/tools/bidirectionalAuditTools.d.ts.map +1 -0
  128. package/dist/tools/bidirectionalAuditTools.js +1280 -0
  129. package/dist/tools/bidirectionalAuditTools.js.map +1 -0
  130. package/dist/tools/defensiveSecurityTools.d.ts +152 -0
  131. package/dist/tools/defensiveSecurityTools.d.ts.map +1 -0
  132. package/dist/tools/defensiveSecurityTools.js +576 -0
  133. package/dist/tools/defensiveSecurityTools.js.map +1 -0
  134. package/dist/tools/forwardAttackChainTracer.d.ts +73 -0
  135. package/dist/tools/forwardAttackChainTracer.d.ts.map +1 -0
  136. package/dist/tools/forwardAttackChainTracer.js +604 -0
  137. package/dist/tools/forwardAttackChainTracer.js.map +1 -0
  138. package/dist/tools/localExplore.d.ts +12 -199
  139. package/dist/tools/localExplore.d.ts.map +1 -1
  140. package/dist/tools/localExplore.js +18 -1352
  141. package/dist/tools/localExplore.js.map +1 -1
  142. package/dist/tools/offensiveTransparencyTools.d.ts +188 -0
  143. package/dist/tools/offensiveTransparencyTools.d.ts.map +1 -0
  144. package/dist/tools/offensiveTransparencyTools.js +890 -0
  145. package/dist/tools/offensiveTransparencyTools.js.map +1 -0
  146. package/dist/tools/planningTools.d.ts +8 -17
  147. package/dist/tools/planningTools.d.ts.map +1 -1
  148. package/dist/tools/planningTools.js +31 -141
  149. package/dist/tools/planningTools.js.map +1 -1
  150. package/dist/tools/searchTools.d.ts +9 -0
  151. package/dist/tools/searchTools.d.ts.map +1 -1
  152. package/dist/tools/searchTools.js +305 -189
  153. package/dist/tools/searchTools.js.map +1 -1
  154. package/dist/tools/skillTools.d.ts +7 -5
  155. package/dist/tools/skillTools.d.ts.map +1 -1
  156. package/dist/tools/skillTools.js +13 -155
  157. package/dist/tools/skillTools.js.map +1 -1
  158. package/dist/tools/threatIntelligenceTools.d.ts +128 -0
  159. package/dist/tools/threatIntelligenceTools.d.ts.map +1 -0
  160. package/dist/tools/threatIntelligenceTools.js +712 -0
  161. package/dist/tools/threatIntelligenceTools.js.map +1 -0
  162. package/dist/ui/PromptController.d.ts +4 -0
  163. package/dist/ui/PromptController.d.ts.map +1 -1
  164. package/dist/ui/PromptController.js +32 -11
  165. package/dist/ui/PromptController.js.map +1 -1
  166. package/dist/ui/UnifiedUIRenderer.d.ts +36 -0
  167. package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -1
  168. package/dist/ui/UnifiedUIRenderer.js +308 -43
  169. package/dist/ui/UnifiedUIRenderer.js.map +1 -1
  170. package/dist/ui/animatedStatus.d.ts +2 -0
  171. package/dist/ui/animatedStatus.d.ts.map +1 -1
  172. package/dist/ui/animatedStatus.js +36 -2
  173. package/dist/ui/animatedStatus.js.map +1 -1
  174. package/dist/ui/orchestration/StatusOrchestrator.d.ts +10 -0
  175. package/dist/ui/orchestration/StatusOrchestrator.d.ts.map +1 -1
  176. package/dist/ui/orchestration/StatusOrchestrator.js +36 -4
  177. package/dist/ui/orchestration/StatusOrchestrator.js.map +1 -1
  178. package/package.json +2 -2
  179. package/dist/capabilities/advancedTestGenerationCapability.d.ts +0 -17
  180. package/dist/capabilities/advancedTestGenerationCapability.d.ts.map +0 -1
  181. package/dist/capabilities/advancedTestGenerationCapability.js +0 -28
  182. package/dist/capabilities/advancedTestGenerationCapability.js.map +0 -1
  183. package/dist/capabilities/browserAutomationCapability.d.ts +0 -37
  184. package/dist/capabilities/browserAutomationCapability.d.ts.map +0 -1
  185. package/dist/capabilities/browserAutomationCapability.js +0 -49
  186. package/dist/capabilities/browserAutomationCapability.js.map +0 -1
  187. package/dist/capabilities/buildCapability.d.ts +0 -24
  188. package/dist/capabilities/buildCapability.d.ts.map +0 -1
  189. package/dist/capabilities/buildCapability.js +0 -25
  190. package/dist/capabilities/buildCapability.js.map +0 -1
  191. package/dist/capabilities/cloudCapability.d.ts +0 -13
  192. package/dist/capabilities/cloudCapability.d.ts.map +0 -1
  193. package/dist/capabilities/cloudCapability.js +0 -38
  194. package/dist/capabilities/cloudCapability.js.map +0 -1
  195. package/dist/capabilities/codeAnalysisCapability.d.ts +0 -13
  196. package/dist/capabilities/codeAnalysisCapability.d.ts.map +0 -1
  197. package/dist/capabilities/codeAnalysisCapability.js +0 -24
  198. package/dist/capabilities/codeAnalysisCapability.js.map +0 -1
  199. package/dist/capabilities/codeQualityCapability.d.ts +0 -13
  200. package/dist/capabilities/codeQualityCapability.d.ts.map +0 -1
  201. package/dist/capabilities/codeQualityCapability.js +0 -25
  202. package/dist/capabilities/codeQualityCapability.js.map +0 -1
  203. package/dist/capabilities/dependencySecurityCapability.d.ts +0 -13
  204. package/dist/capabilities/dependencySecurityCapability.d.ts.map +0 -1
  205. package/dist/capabilities/dependencySecurityCapability.js +0 -24
  206. package/dist/capabilities/dependencySecurityCapability.js.map +0 -1
  207. package/dist/capabilities/devCapability.d.ts +0 -13
  208. package/dist/capabilities/devCapability.d.ts.map +0 -1
  209. package/dist/capabilities/devCapability.js +0 -24
  210. package/dist/capabilities/devCapability.js.map +0 -1
  211. package/dist/capabilities/emailCapability.d.ts +0 -12
  212. package/dist/capabilities/emailCapability.d.ts.map +0 -1
  213. package/dist/capabilities/emailCapability.js +0 -22
  214. package/dist/capabilities/emailCapability.js.map +0 -1
  215. package/dist/capabilities/enhancedAnalysisCapability.d.ts +0 -13
  216. package/dist/capabilities/enhancedAnalysisCapability.d.ts.map +0 -1
  217. package/dist/capabilities/enhancedAnalysisCapability.js +0 -20
  218. package/dist/capabilities/enhancedAnalysisCapability.js.map +0 -1
  219. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts +0 -17
  220. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts.map +0 -1
  221. package/dist/capabilities/enhancedCodeIntelligenceCapability.js +0 -28
  222. package/dist/capabilities/enhancedCodeIntelligenceCapability.js.map +0 -1
  223. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts +0 -17
  224. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts.map +0 -1
  225. package/dist/capabilities/enhancedDevWorkflowCapability.js +0 -28
  226. package/dist/capabilities/enhancedDevWorkflowCapability.js.map +0 -1
  227. package/dist/capabilities/frontendTestingCapability.d.ts +0 -13
  228. package/dist/capabilities/frontendTestingCapability.d.ts.map +0 -1
  229. package/dist/capabilities/frontendTestingCapability.js +0 -28
  230. package/dist/capabilities/frontendTestingCapability.js.map +0 -1
  231. package/dist/capabilities/interactionCapability.d.ts +0 -12
  232. package/dist/capabilities/interactionCapability.d.ts.map +0 -1
  233. package/dist/capabilities/interactionCapability.js +0 -22
  234. package/dist/capabilities/interactionCapability.js.map +0 -1
  235. package/dist/capabilities/learnCapability.d.ts +0 -22
  236. package/dist/capabilities/learnCapability.d.ts.map +0 -1
  237. package/dist/capabilities/learnCapability.js +0 -37
  238. package/dist/capabilities/learnCapability.js.map +0 -1
  239. package/dist/capabilities/notebookCapability.d.ts +0 -17
  240. package/dist/capabilities/notebookCapability.d.ts.map +0 -1
  241. package/dist/capabilities/notebookCapability.js +0 -27
  242. package/dist/capabilities/notebookCapability.js.map +0 -1
  243. package/dist/capabilities/planningCapability.d.ts +0 -16
  244. package/dist/capabilities/planningCapability.d.ts.map +0 -1
  245. package/dist/capabilities/planningCapability.js +0 -26
  246. package/dist/capabilities/planningCapability.js.map +0 -1
  247. package/dist/capabilities/refactoringCapability.d.ts +0 -13
  248. package/dist/capabilities/refactoringCapability.d.ts.map +0 -1
  249. package/dist/capabilities/refactoringCapability.js +0 -25
  250. package/dist/capabilities/refactoringCapability.js.map +0 -1
  251. package/dist/capabilities/repoChecksCapability.d.ts +0 -10
  252. package/dist/capabilities/repoChecksCapability.d.ts.map +0 -1
  253. package/dist/capabilities/repoChecksCapability.js +0 -24
  254. package/dist/capabilities/repoChecksCapability.js.map +0 -1
  255. package/dist/capabilities/taskManagementCapability.d.ts +0 -12
  256. package/dist/capabilities/taskManagementCapability.d.ts.map +0 -1
  257. package/dist/capabilities/taskManagementCapability.js +0 -22
  258. package/dist/capabilities/taskManagementCapability.js.map +0 -1
  259. package/dist/capabilities/testingCapability.d.ts +0 -13
  260. package/dist/capabilities/testingCapability.d.ts.map +0 -1
  261. package/dist/capabilities/testingCapability.js +0 -25
  262. package/dist/capabilities/testingCapability.js.map +0 -1
  263. package/dist/capabilities/validationCapability.d.ts +0 -13
  264. package/dist/capabilities/validationCapability.d.ts.map +0 -1
  265. package/dist/capabilities/validationCapability.js +0 -24
  266. package/dist/capabilities/validationCapability.js.map +0 -1
  267. package/dist/capabilities/webCapability.d.ts +0 -12
  268. package/dist/capabilities/webCapability.d.ts.map +0 -1
  269. package/dist/capabilities/webCapability.js +0 -22
  270. package/dist/capabilities/webCapability.js.map +0 -1
  271. package/dist/core/deepBugAnalyzer.d.ts +0 -128
  272. package/dist/core/deepBugAnalyzer.d.ts.map +0 -1
  273. package/dist/core/deepBugAnalyzer.js +0 -406
  274. package/dist/core/deepBugAnalyzer.js.map +0 -1
  275. package/dist/core/hypothesisEngine.d.ts +0 -113
  276. package/dist/core/hypothesisEngine.d.ts.map +0 -1
  277. package/dist/core/hypothesisEngine.js +0 -264
  278. package/dist/core/hypothesisEngine.js.map +0 -1
  279. package/dist/core/productTestHarness.d.ts +0 -113
  280. package/dist/core/productTestHarness.d.ts.map +0 -1
  281. package/dist/core/productTestHarness.js +0 -351
  282. package/dist/core/productTestHarness.js.map +0 -1
  283. package/dist/core/validationRunner.d.ts +0 -106
  284. package/dist/core/validationRunner.d.ts.map +0 -1
  285. package/dist/core/validationRunner.js +0 -892
  286. package/dist/core/validationRunner.js.map +0 -1
  287. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts +0 -14
  288. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts.map +0 -1
  289. package/dist/plugins/tools/browser/browserAutomationPlugin.js +0 -26
  290. package/dist/plugins/tools/browser/browserAutomationPlugin.js.map +0 -1
  291. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts +0 -3
  292. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts.map +0 -1
  293. package/dist/plugins/tools/checks/localRepoChecksPlugin.js +0 -14
  294. package/dist/plugins/tools/checks/localRepoChecksPlugin.js.map +0 -1
  295. package/dist/plugins/tools/cloud/cloudPlugin.d.ts +0 -3
  296. package/dist/plugins/tools/cloud/cloudPlugin.d.ts.map +0 -1
  297. package/dist/plugins/tools/cloud/cloudPlugin.js +0 -14
  298. package/dist/plugins/tools/cloud/cloudPlugin.js.map +0 -1
  299. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts +0 -3
  300. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts.map +0 -1
  301. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js +0 -14
  302. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js.map +0 -1
  303. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts +0 -3
  304. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts.map +0 -1
  305. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js +0 -14
  306. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js.map +0 -1
  307. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts +0 -3
  308. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts.map +0 -1
  309. package/dist/plugins/tools/dependency/dependencyPlugin.js +0 -12
  310. package/dist/plugins/tools/dependency/dependencyPlugin.js.map +0 -1
  311. package/dist/plugins/tools/development/devPlugin.d.ts +0 -3
  312. package/dist/plugins/tools/development/devPlugin.d.ts.map +0 -1
  313. package/dist/plugins/tools/development/devPlugin.js +0 -14
  314. package/dist/plugins/tools/development/devPlugin.js.map +0 -1
  315. package/dist/plugins/tools/email/emailPlugin.d.ts +0 -3
  316. package/dist/plugins/tools/email/emailPlugin.d.ts.map +0 -1
  317. package/dist/plugins/tools/email/emailPlugin.js +0 -12
  318. package/dist/plugins/tools/email/emailPlugin.js.map +0 -1
  319. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts +0 -3
  320. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.d.ts.map +0 -1
  321. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js +0 -14
  322. package/dist/plugins/tools/enhancedAnalysis/enhancedAnalysisPlugin.js.map +0 -1
  323. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts +0 -3
  324. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.d.ts.map +0 -1
  325. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js +0 -12
  326. package/dist/plugins/tools/enhancedCodeIntelligence/enhancedCodeIntelligencePlugin.js.map +0 -1
  327. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts +0 -3
  328. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.d.ts.map +0 -1
  329. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js +0 -12
  330. package/dist/plugins/tools/enhancedDevWorkflow/enhancedDevWorkflowPlugin.js.map +0 -1
  331. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts +0 -3
  332. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts.map +0 -1
  333. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js +0 -14
  334. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js.map +0 -1
  335. package/dist/plugins/tools/interaction/interactionPlugin.d.ts +0 -3
  336. package/dist/plugins/tools/interaction/interactionPlugin.d.ts.map +0 -1
  337. package/dist/plugins/tools/interaction/interactionPlugin.js +0 -12
  338. package/dist/plugins/tools/interaction/interactionPlugin.js.map +0 -1
  339. package/dist/plugins/tools/learn/learnPlugin.d.ts +0 -3
  340. package/dist/plugins/tools/learn/learnPlugin.d.ts.map +0 -1
  341. package/dist/plugins/tools/learn/learnPlugin.js +0 -14
  342. package/dist/plugins/tools/learn/learnPlugin.js.map +0 -1
  343. package/dist/plugins/tools/notebook/notebookPlugin.d.ts +0 -9
  344. package/dist/plugins/tools/notebook/notebookPlugin.d.ts.map +0 -1
  345. package/dist/plugins/tools/notebook/notebookPlugin.js +0 -15
  346. package/dist/plugins/tools/notebook/notebookPlugin.js.map +0 -1
  347. package/dist/plugins/tools/planning/planningPlugin.d.ts +0 -9
  348. package/dist/plugins/tools/planning/planningPlugin.d.ts.map +0 -1
  349. package/dist/plugins/tools/planning/planningPlugin.js +0 -15
  350. package/dist/plugins/tools/planning/planningPlugin.js.map +0 -1
  351. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts +0 -3
  352. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts.map +0 -1
  353. package/dist/plugins/tools/refactoring/refactoringPlugin.js +0 -12
  354. package/dist/plugins/tools/refactoring/refactoringPlugin.js.map +0 -1
  355. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts +0 -3
  356. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts.map +0 -1
  357. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js +0 -12
  358. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js.map +0 -1
  359. package/dist/plugins/tools/testing/testingPlugin.d.ts +0 -3
  360. package/dist/plugins/tools/testing/testingPlugin.d.ts.map +0 -1
  361. package/dist/plugins/tools/testing/testingPlugin.js +0 -12
  362. package/dist/plugins/tools/testing/testingPlugin.js.map +0 -1
  363. package/dist/plugins/tools/validation/validationPlugin.d.ts +0 -3
  364. package/dist/plugins/tools/validation/validationPlugin.d.ts.map +0 -1
  365. package/dist/plugins/tools/validation/validationPlugin.js +0 -14
  366. package/dist/plugins/tools/validation/validationPlugin.js.map +0 -1
  367. package/dist/plugins/tools/web/webPlugin.d.ts +0 -3
  368. package/dist/plugins/tools/web/webPlugin.d.ts.map +0 -1
  369. package/dist/plugins/tools/web/webPlugin.js +0 -12
  370. package/dist/plugins/tools/web/webPlugin.js.map +0 -1
  371. package/dist/tools/advancedTestGenerationTools.d.ts +0 -21
  372. package/dist/tools/advancedTestGenerationTools.d.ts.map +0 -1
  373. package/dist/tools/advancedTestGenerationTools.js +0 -304
  374. package/dist/tools/advancedTestGenerationTools.js.map +0 -1
  375. package/dist/tools/browserAutomationTools.d.ts +0 -23
  376. package/dist/tools/browserAutomationTools.d.ts.map +0 -1
  377. package/dist/tools/browserAutomationTools.js +0 -916
  378. package/dist/tools/browserAutomationTools.js.map +0 -1
  379. package/dist/tools/buildTools.d.ts +0 -9
  380. package/dist/tools/buildTools.d.ts.map +0 -1
  381. package/dist/tools/buildTools.js +0 -346
  382. package/dist/tools/buildTools.js.map +0 -1
  383. package/dist/tools/cloudTools.d.ts +0 -49
  384. package/dist/tools/cloudTools.d.ts.map +0 -1
  385. package/dist/tools/cloudTools.js +0 -1258
  386. package/dist/tools/cloudTools.js.map +0 -1
  387. package/dist/tools/codeAnalysisTools.d.ts +0 -74
  388. package/dist/tools/codeAnalysisTools.d.ts.map +0 -1
  389. package/dist/tools/codeAnalysisTools.js +0 -664
  390. package/dist/tools/codeAnalysisTools.js.map +0 -1
  391. package/dist/tools/codeGenerationTools.d.ts +0 -3
  392. package/dist/tools/codeGenerationTools.d.ts.map +0 -1
  393. package/dist/tools/codeGenerationTools.js +0 -439
  394. package/dist/tools/codeGenerationTools.js.map +0 -1
  395. package/dist/tools/codeQualityTools.d.ts +0 -3
  396. package/dist/tools/codeQualityTools.d.ts.map +0 -1
  397. package/dist/tools/codeQualityTools.js +0 -297
  398. package/dist/tools/codeQualityTools.js.map +0 -1
  399. package/dist/tools/dependencyTools.d.ts +0 -3
  400. package/dist/tools/dependencyTools.d.ts.map +0 -1
  401. package/dist/tools/dependencyTools.js +0 -284
  402. package/dist/tools/dependencyTools.js.map +0 -1
  403. package/dist/tools/devTools.d.ts +0 -10
  404. package/dist/tools/devTools.d.ts.map +0 -1
  405. package/dist/tools/devTools.js +0 -2126
  406. package/dist/tools/devTools.js.map +0 -1
  407. package/dist/tools/emailTools.d.ts +0 -21
  408. package/dist/tools/emailTools.d.ts.map +0 -1
  409. package/dist/tools/emailTools.js +0 -449
  410. package/dist/tools/emailTools.js.map +0 -1
  411. package/dist/tools/enhancedAnalysisTools.d.ts +0 -9
  412. package/dist/tools/enhancedAnalysisTools.d.ts.map +0 -1
  413. package/dist/tools/enhancedAnalysisTools.js +0 -370
  414. package/dist/tools/enhancedAnalysisTools.js.map +0 -1
  415. package/dist/tools/enhancedCodeIntelligenceTools.d.ts +0 -7
  416. package/dist/tools/enhancedCodeIntelligenceTools.d.ts.map +0 -1
  417. package/dist/tools/enhancedCodeIntelligenceTools.js +0 -540
  418. package/dist/tools/enhancedCodeIntelligenceTools.js.map +0 -1
  419. package/dist/tools/enhancedDevWorkflowTools.d.ts +0 -7
  420. package/dist/tools/enhancedDevWorkflowTools.d.ts.map +0 -1
  421. package/dist/tools/enhancedDevWorkflowTools.js +0 -432
  422. package/dist/tools/enhancedDevWorkflowTools.js.map +0 -1
  423. package/dist/tools/frontendTestingTools.d.ts +0 -35
  424. package/dist/tools/frontendTestingTools.d.ts.map +0 -1
  425. package/dist/tools/frontendTestingTools.js +0 -1258
  426. package/dist/tools/frontendTestingTools.js.map +0 -1
  427. package/dist/tools/globTools.d.ts +0 -15
  428. package/dist/tools/globTools.d.ts.map +0 -1
  429. package/dist/tools/globTools.js +0 -174
  430. package/dist/tools/globTools.js.map +0 -1
  431. package/dist/tools/grepTools.d.ts +0 -19
  432. package/dist/tools/grepTools.d.ts.map +0 -1
  433. package/dist/tools/grepTools.js +0 -411
  434. package/dist/tools/grepTools.js.map +0 -1
  435. package/dist/tools/interactionTools.d.ts +0 -6
  436. package/dist/tools/interactionTools.d.ts.map +0 -1
  437. package/dist/tools/interactionTools.js +0 -209
  438. package/dist/tools/interactionTools.js.map +0 -1
  439. package/dist/tools/learnTools.d.ts +0 -164
  440. package/dist/tools/learnTools.d.ts.map +0 -1
  441. package/dist/tools/learnTools.js +0 -2098
  442. package/dist/tools/learnTools.js.map +0 -1
  443. package/dist/tools/notebookEditTools.d.ts +0 -15
  444. package/dist/tools/notebookEditTools.d.ts.map +0 -1
  445. package/dist/tools/notebookEditTools.js +0 -197
  446. package/dist/tools/notebookEditTools.js.map +0 -1
  447. package/dist/tools/refactoringTools.d.ts +0 -3
  448. package/dist/tools/refactoringTools.d.ts.map +0 -1
  449. package/dist/tools/refactoringTools.js +0 -294
  450. package/dist/tools/refactoringTools.js.map +0 -1
  451. package/dist/tools/repoChecksTools.d.ts +0 -3
  452. package/dist/tools/repoChecksTools.d.ts.map +0 -1
  453. package/dist/tools/repoChecksTools.js +0 -276
  454. package/dist/tools/repoChecksTools.js.map +0 -1
  455. package/dist/tools/taskManagementTools.d.ts +0 -10
  456. package/dist/tools/taskManagementTools.d.ts.map +0 -1
  457. package/dist/tools/taskManagementTools.js +0 -133
  458. package/dist/tools/taskManagementTools.js.map +0 -1
  459. package/dist/tools/testingTools.d.ts +0 -3
  460. package/dist/tools/testingTools.d.ts.map +0 -1
  461. package/dist/tools/testingTools.js +0 -237
  462. package/dist/tools/testingTools.js.map +0 -1
  463. package/dist/tools/validationTools.d.ts +0 -7
  464. package/dist/tools/validationTools.d.ts.map +0 -1
  465. package/dist/tools/validationTools.js +0 -344
  466. package/dist/tools/validationTools.js.map +0 -1
  467. package/dist/tools/webTools.d.ts +0 -3
  468. package/dist/tools/webTools.d.ts.map +0 -1
  469. package/dist/tools/webTools.js +0 -502
  470. package/dist/tools/webTools.js.map +0 -1
@@ -1,700 +1,25 @@
1
1
  /**
2
- * Self-Improvement Orchestrator
3
- *
4
- * Applies AlphaZero-style learning to complex debugging, refactoring, and
5
- * precision tasks to continuously improve erosolar-cli source code.
6
- *
7
- * Features:
8
- * 1. Identifies improvement opportunities from learning data
9
- * 2. Applies quality-driven code changes
10
- * 3. Uses git for safe versioning and rollback
11
- * 4. Validates changes before committing
12
- *
13
- * Principal Investigator: Bo Shang
2
+ * Self Improvement - Minimal stub for backward compatibility
14
3
  */
15
- import { execSync, exec } from 'node:child_process';
16
- import { existsSync, readFileSync, writeFileSync } from 'node:fs';
17
- import { join } from 'node:path';
18
- import { promisify } from 'node:util';
19
- import { getLearningSummary, loadFailurePatterns, loadToolPatterns, } from './learningPersistence.js';
20
- import { getSourceCodeFixes, } from './failureRecovery.js';
21
- const execAsync = promisify(exec);
22
- // ============================================================================
23
- // IMPROVEMENT DETECTION
24
- // ============================================================================
25
- /**
26
- * Analyze learning data to identify improvement opportunities
27
- */
28
- export function analyzeImprovementOpportunities(_workingDir = process.cwd()) {
29
- const opportunities = [];
30
- // 1. Analyze failure patterns for bug fixes
31
- const failurePatterns = loadFailurePatterns();
32
- for (const pattern of failurePatterns.patterns) {
33
- if (pattern.occurrences >= 2) {
34
- // This failure has occurred multiple times - worth fixing
35
- opportunities.push({
36
- type: 'bug-fix',
37
- priority: pattern.occurrences >= 5 ? 'high' : 'medium',
38
- description: `Fix recurring issue: ${pattern.description.slice(0, 100)}`,
39
- sourceFile: 'src/core',
40
- suggestedChange: pattern.avoidanceHint || 'Apply learned fix',
41
- confidence: Math.min(0.95, pattern.occurrences / 10 + 0.5),
42
- evidence: [`Occurred ${pattern.occurrences} times`, `Last seen: ${pattern.lastSeen}`],
43
- });
44
- }
45
- }
46
- // 2. Analyze source code fixes from recovery system
47
- const sourceFixes = getSourceCodeFixes();
48
- for (const fix of sourceFixes) {
49
- if (fix.validatedCount >= 2 && !fix.appliedToSource) {
50
- opportunities.push({
51
- type: 'bug-fix',
52
- priority: fix.failureType === 'build' ? 'critical' : 'high',
53
- description: fix.description,
54
- sourceFile: fix.filePath,
55
- suggestedChange: `Replace:\n${fix.originalCode.slice(0, 200)}...\nWith:\n${fix.fixedCode.slice(0, 200)}...`,
56
- confidence: Math.min(0.95, fix.validatedCount / 5 + 0.6),
57
- evidence: [`Validated ${fix.validatedCount} times`, `Failure type: ${fix.failureType}`],
58
- });
59
- }
60
- }
61
- // 3. Analyze tool patterns for optimization opportunities
62
- const toolPatterns = loadToolPatterns();
63
- for (const [taskType, patterns] of Object.entries(toolPatterns.patterns)) {
64
- const inefficient = patterns.filter(p => p.successRate < 0.7 && p.occurrences >= 3);
65
- if (inefficient.length > 0) {
66
- opportunities.push({
67
- type: 'performance',
68
- priority: 'medium',
69
- description: `Optimize tool handling for ${taskType} tasks`,
70
- sourceFile: 'src/core/toolRuntime.ts',
71
- suggestedChange: 'Add caching or improve tool selection logic',
72
- confidence: 0.6,
73
- evidence: inefficient.map(p => `Pattern ${p.toolSequence.join('→')} has ${Math.round(p.successRate * 100)}% success`),
74
- });
75
- }
76
- }
77
- // Sort by priority and confidence
78
- const priorityOrder = { critical: 0, high: 1, medium: 2, low: 3 };
79
- opportunities.sort((a, b) => {
80
- const priorityDiff = priorityOrder[a.priority] - priorityOrder[b.priority];
81
- if (priorityDiff !== 0)
82
- return priorityDiff;
83
- return b.confidence - a.confidence;
84
- });
85
- return opportunities;
4
+ export function analyzeImprovementOpportunities(_workingDir) {
5
+ return [];
86
6
  }
87
- // ============================================================================
88
- // GIT OPERATIONS
89
- // ============================================================================
90
- /**
91
- * Check if working directory is clean
92
- */
93
- function isGitClean(workingDir) {
94
- try {
95
- const result = execSync('git status --porcelain', { cwd: workingDir, encoding: 'utf-8' });
96
- return result.trim() === '';
97
- }
98
- catch {
99
- return false;
100
- }
7
+ export async function runSelfImprovementCycle(_workingDir, _options) {
8
+ return { summary: 'No improvements available (feature deprecated)', applied: 0, results: [] };
101
9
  }
102
- /**
103
- * Create a new branch for self-improvement changes
104
- */
105
- function createImprovementBranch(workingDir, description) {
106
- const timestamp = Date.now();
107
- const safeName = description.toLowerCase().replace(/[^a-z0-9]+/g, '-').slice(0, 30);
108
- const branchName = `self-improve/${safeName}-${timestamp}`;
109
- execSync(`git checkout -b ${branchName}`, { cwd: workingDir, encoding: 'utf-8' });
110
- return branchName;
10
+ export function getImprovementSummary(_workingDir) {
11
+ return 'No improvement data available (feature deprecated)';
111
12
  }
112
- /**
113
- * Commit changes with descriptive message
114
- */
115
- function commitChanges(workingDir, files, message) {
116
- for (const file of files) {
117
- execSync(`git add "${file}"`, { cwd: workingDir, encoding: 'utf-8' });
118
- }
119
- const fullMessage = `[self-improvement] ${message}
120
-
121
- Applied by AlphaZero self-improvement system.
122
- Run \`git revert HEAD\` to rollback.
123
-
124
- 🤖 Generated with erosolar-cli self-improvement`;
125
- execSync(`git commit -m "${fullMessage.replace(/"/g, '\\"')}"`, { cwd: workingDir, encoding: 'utf-8' });
126
- const hash = execSync('git rev-parse HEAD', { cwd: workingDir, encoding: 'utf-8' }).trim();
127
- return hash;
128
- }
129
- /**
130
- * Run validation (build and optional tests)
131
- */
132
- async function validateChanges(workingDir, runTests) {
133
- let buildPassed = false;
134
- let testsPassed = false;
135
- try {
136
- await execAsync('npm run build', { cwd: workingDir });
137
- buildPassed = true;
138
- }
139
- catch {
140
- buildPassed = false;
141
- return { buildPassed, testsPassed };
142
- }
143
- if (runTests) {
144
- try {
145
- await execAsync('npm test', { cwd: workingDir, timeout: 120000 });
146
- testsPassed = true;
147
- }
148
- catch {
149
- testsPassed = false;
150
- }
151
- }
152
- else {
153
- testsPassed = true; // Skip tests, consider passed
154
- }
155
- return { buildPassed, testsPassed };
13
+ export async function runAutonomousImprovement(_options) {
14
+ return { iterations: 0, totalApplied: 0, totalFailed: 0, totalRollbacks: 0, stoppedReason: 'Feature deprecated' };
156
15
  }
157
- /**
158
- * Rollback changes
159
- */
160
- function rollbackChanges(workingDir, originalBranch) {
161
- execSync('git checkout .', { cwd: workingDir });
162
- execSync(`git checkout ${originalBranch}`, { cwd: workingDir });
163
- }
164
- // ============================================================================
165
- // IMPROVEMENT APPLICATION
166
- // ============================================================================
167
- /**
168
- * Apply a source code fix
169
- */
170
- function applySourceFix(fix, workingDir) {
171
- const fullPath = join(workingDir, fix.filePath);
172
- if (!existsSync(fullPath)) {
173
- return false;
174
- }
175
- const content = readFileSync(fullPath, 'utf-8');
176
- if (!content.includes(fix.originalCode)) {
177
- // Code has changed, can't apply fix
178
- return false;
179
- }
180
- const newContent = content.replace(fix.originalCode, fix.fixedCode);
181
- writeFileSync(fullPath, newContent);
182
- return true;
183
- }
184
- /**
185
- * Execute a self-improvement plan
186
- */
187
- export async function executeImprovementPlan(plan, workingDir = process.cwd(), options = {}) {
188
- const { runTests = true, autoCommit = true, dryRun = false } = options;
189
- const result = {
190
- success: false,
191
- filesChanged: [],
192
- testsRun: runTests,
193
- testsPassed: false,
194
- buildPassed: false,
195
- };
196
- if (dryRun) {
197
- // Just report what would be done
198
- return {
199
- ...result,
200
- success: true,
201
- filesChanged: plan.opportunities.map(o => o.sourceFile),
202
- };
203
- }
204
- // Check git status
205
- if (!isGitClean(workingDir)) {
206
- result.error = 'Working directory has uncommitted changes. Please commit or stash them first.';
207
- return result;
208
- }
209
- // Get current branch
210
- const originalBranch = execSync('git rev-parse --abbrev-ref HEAD', { cwd: workingDir, encoding: 'utf-8' }).trim();
211
- try {
212
- // Create improvement branch
213
- const branchName = createImprovementBranch(workingDir, `improve-${plan.id}`);
214
- // Apply source code fixes
215
- const sourceFixes = getSourceCodeFixes();
216
- for (const opportunity of plan.opportunities) {
217
- if (opportunity.type === 'bug-fix') {
218
- const matchingFix = sourceFixes.find(f => f.filePath === opportunity.sourceFile ||
219
- f.description === opportunity.description);
220
- if (matchingFix) {
221
- const applied = applySourceFix(matchingFix, workingDir);
222
- if (applied) {
223
- result.filesChanged.push(opportunity.sourceFile);
224
- }
225
- }
226
- }
227
- }
228
- if (result.filesChanged.length === 0) {
229
- // Nothing to apply
230
- rollbackChanges(workingDir, originalBranch);
231
- result.error = 'No applicable changes found';
232
- return result;
233
- }
234
- // Validate changes
235
- const validation = await validateChanges(workingDir, runTests);
236
- result.buildPassed = validation.buildPassed;
237
- result.testsPassed = validation.testsPassed;
238
- if (!validation.buildPassed) {
239
- rollbackChanges(workingDir, originalBranch);
240
- result.error = 'Build failed after applying changes';
241
- return result;
242
- }
243
- if (runTests && !validation.testsPassed) {
244
- rollbackChanges(workingDir, originalBranch);
245
- result.error = 'Tests failed after applying changes';
246
- return result;
247
- }
248
- // Commit changes
249
- if (autoCommit) {
250
- const description = plan.opportunities.map(o => o.description).join('; ').slice(0, 100);
251
- result.commitHash = commitChanges(workingDir, result.filesChanged, description);
252
- result.rollbackCommand = `git revert ${result.commitHash}`;
253
- }
254
- result.success = true;
255
- // Merge back to original branch if successful
256
- execSync(`git checkout ${originalBranch}`, { cwd: workingDir });
257
- execSync(`git merge ${branchName}`, { cwd: workingDir });
258
- return result;
259
- }
260
- catch (error) {
261
- // Rollback on any error
262
- try {
263
- rollbackChanges(workingDir, originalBranch);
264
- }
265
- catch {
266
- // Ignore rollback errors
267
- }
268
- result.error = error instanceof Error ? error.message : String(error);
269
- return result;
270
- }
271
- }
272
- // ============================================================================
273
- // SELF-IMPROVEMENT TRIGGERS
274
- // ============================================================================
275
- /**
276
- * Trigger self-improvement for complex debugging task
277
- */
278
- export async function triggerDebugImprovement(errorPattern, workingDir = process.cwd()) {
279
- const opportunities = analyzeImprovementOpportunities(workingDir);
280
- // Filter for relevant opportunities
281
- const relevant = opportunities.filter(o => o.type === 'bug-fix' &&
282
- (o.description.toLowerCase().includes(errorPattern.toLowerCase()) ||
283
- o.evidence.some(e => e.toLowerCase().includes(errorPattern.toLowerCase()))));
284
- if (relevant.length === 0) {
285
- return null;
286
- }
287
- const plan = {
288
- id: `debug-${Date.now()}`,
289
- opportunities: relevant,
290
- totalConfidence: relevant.reduce((sum, o) => sum + o.confidence, 0) / relevant.length,
291
- estimatedImpact: 'Fix recurring debugging issues',
292
- createdAt: new Date().toISOString(),
293
- };
294
- return executeImprovementPlan(plan, workingDir);
295
- }
296
- /**
297
- * Trigger self-improvement for refactoring task
298
- */
299
- export async function triggerRefactorImprovement(targetArea, workingDir = process.cwd()) {
300
- const opportunities = analyzeImprovementOpportunities(workingDir);
301
- const relevant = opportunities.filter(o => o.type === 'refactor' || o.type === 'performance');
302
- if (relevant.length === 0) {
303
- return null;
304
- }
305
- const plan = {
306
- id: `refactor-${Date.now()}`,
307
- opportunities: relevant.slice(0, 5), // Limit to top 5
308
- totalConfidence: relevant.reduce((sum, o) => sum + o.confidence, 0) / relevant.length,
309
- estimatedImpact: 'Improve code quality and performance',
310
- createdAt: new Date().toISOString(),
311
- };
312
- return executeImprovementPlan(plan, workingDir);
313
- }
314
- /**
315
- * Run comprehensive self-improvement analysis
316
- */
317
- export async function runSelfImprovementCycle(workingDir = process.cwd(), options = {}) {
318
- const { maxChanges = 3, minConfidence = 0.7, runTests = true, autoCommit = true } = options;
319
- const opportunities = analyzeImprovementOpportunities(workingDir);
320
- const filtered = opportunities.filter(o => o.confidence >= minConfidence);
321
- const toApply = filtered.slice(0, maxChanges);
322
- const results = [];
323
- for (const opportunity of toApply) {
324
- const plan = {
325
- id: `single-${Date.now()}`,
326
- opportunities: [opportunity],
327
- totalConfidence: opportunity.confidence,
328
- estimatedImpact: opportunity.description,
329
- createdAt: new Date().toISOString(),
330
- };
331
- const result = await executeImprovementPlan(plan, workingDir, { runTests, autoCommit });
332
- results.push(result);
333
- // Stop if any improvement fails
334
- if (!result.success) {
335
- break;
336
- }
337
- }
338
- const applied = results.filter(r => r.success).length;
339
- return {
340
- analyzed: opportunities.length,
341
- applied,
342
- results,
343
- summary: `Analyzed ${opportunities.length} opportunities, filtered to ${filtered.length} (confidence >= ${minConfidence}), applied ${applied}/${toApply.length}`,
344
- };
345
- }
346
- // ============================================================================
347
- // CLI INTEGRATION
348
- // ============================================================================
349
- /**
350
- * Get a summary of improvement opportunities for display
351
- */
352
- export function getImprovementSummary(workingDir = process.cwd()) {
353
- const opportunities = analyzeImprovementOpportunities(workingDir);
354
- const learning = getLearningSummary();
355
- const lines = [];
356
- lines.push('🧠 Self-Improvement Analysis');
357
- lines.push('');
358
- lines.push(`Learning Data:`);
359
- lines.push(` - Tool patterns: ${learning.toolPatterns.totalPatterns}`);
360
- lines.push(` - Failure patterns: ${learning.failurePatterns.totalPatterns}`);
361
- lines.push(` - Prompt improvements: ${learning.promptImprovements.totalImprovements}`);
362
- lines.push('');
363
- lines.push(`Improvement Opportunities: ${opportunities.length}`);
364
- if (opportunities.length > 0) {
365
- lines.push('');
366
- const top = opportunities.slice(0, 5);
367
- for (const opp of top) {
368
- const icon = opp.type === 'bug-fix' ? '🐛' : opp.type === 'refactor' ? '🔧' : '⚡';
369
- lines.push(` ${icon} [${opp.priority}] ${opp.description.slice(0, 60)}...`);
370
- lines.push(` Confidence: ${Math.round(opp.confidence * 100)}% | File: ${opp.sourceFile}`);
371
- }
372
- if (opportunities.length > 5) {
373
- lines.push(` ... and ${opportunities.length - 5} more`);
374
- }
375
- }
376
- lines.push('');
377
- lines.push('Commands:');
378
- lines.push(' /improve analyze - Analyze improvement opportunities');
379
- lines.push(' /improve apply - Apply high-confidence improvements');
380
- lines.push(' /improve dry-run - Preview changes without applying');
381
- lines.push(' /improve auto - Run autonomous infinite improvement (Ctrl+C to stop)');
382
- return lines.join('\n');
383
- }
384
- // Global state for autonomous improvement
385
- let autoImprovementState = {
386
- isRunning: false,
387
- startTime: null,
388
- iteration: 0,
389
- applied: 0,
390
- failed: 0,
391
- rollbacks: 0,
392
- lastError: null,
393
- safetyBranchBase: null,
394
- };
395
- /**
396
- * Get current auto-improvement state
397
- */
398
- export function getAutoImprovementState() {
399
- return { ...autoImprovementState };
400
- }
401
- /**
402
- * Request stop of autonomous improvement
403
- */
404
16
  export function requestAutoImprovementStop() {
405
- autoImprovementState.isRunning = false;
406
- }
407
- /**
408
- * Create a safety checkpoint before autonomous improvement
409
- */
410
- function createSafetyCheckpoint(workingDir) {
411
- try {
412
- // Ensure clean working directory
413
- const status = execSync('git status --porcelain', { cwd: workingDir, encoding: 'utf-8' }).trim();
414
- if (status) {
415
- // Stash any uncommitted changes
416
- execSync('git stash push -m "auto-improve-safety-stash"', { cwd: workingDir, encoding: 'utf-8' });
417
- }
418
- // Get current branch
419
- const currentBranch = execSync('git rev-parse --abbrev-ref HEAD', { cwd: workingDir, encoding: 'utf-8' }).trim();
420
- // Create safety tag
421
- const timestamp = Date.now();
422
- const safetyTag = `auto-improve-checkpoint-${timestamp}`;
423
- execSync(`git tag ${safetyTag}`, { cwd: workingDir, encoding: 'utf-8' });
424
- return { success: true, branch: currentBranch };
425
- }
426
- catch (error) {
427
- return { success: false, branch: '', error: error instanceof Error ? error.message : String(error) };
428
- }
429
- }
430
- /**
431
- * Rollback to safety checkpoint
432
- */
433
- function rollbackToCheckpoint(workingDir, _originalBranch) {
434
- try {
435
- // Find the most recent safety tag
436
- const tags = execSync('git tag -l "auto-improve-checkpoint-*" --sort=-version:refname', {
437
- cwd: workingDir,
438
- encoding: 'utf-8',
439
- }).trim().split('\n');
440
- if (tags.length > 0 && tags[0]) {
441
- // Hard reset to the checkpoint
442
- execSync(`git reset --hard ${tags[0]}`, { cwd: workingDir, encoding: 'utf-8' });
443
- // Try to restore stashed changes
444
- try {
445
- execSync('git stash pop', { cwd: workingDir, encoding: 'utf-8' });
446
- }
447
- catch {
448
- // No stash to pop, that's fine
449
- }
450
- return { success: true };
451
- }
452
- return { success: false, error: 'No checkpoint found' };
453
- }
454
- catch (error) {
455
- return { success: false, error: error instanceof Error ? error.message : String(error) };
456
- }
17
+ // No-op stub
457
18
  }
458
- /**
459
- * Run autonomous infinite improvement
460
- *
461
- * This function runs in a loop, continuously:
462
- * 1. Analyzing improvement opportunities
463
- * 2. Applying the highest-confidence improvement
464
- * 3. Validating with build/tests
465
- * 4. Rolling back if validation fails
466
- * 5. Continuing until no more improvements or stopped
467
- */
468
- export async function runAutonomousImprovement(config) {
469
- const { workingDir, minConfidence = 0.75, maxIterations = 100, delayBetweenMs = 2000, runTests = true, onProgress, shouldStop, } = config;
470
- // Reset state
471
- autoImprovementState = {
472
- isRunning: true,
473
- startTime: new Date().toISOString(),
474
- iteration: 0,
475
- applied: 0,
476
- failed: 0,
477
- rollbacks: 0,
478
- lastError: null,
479
- safetyBranchBase: null,
480
- };
481
- // Create safety checkpoint
482
- const checkpoint = createSafetyCheckpoint(workingDir);
483
- if (!checkpoint.success) {
484
- onProgress?.({
485
- type: 'failed',
486
- message: `Failed to create safety checkpoint: ${checkpoint.error}`,
487
- });
488
- autoImprovementState.isRunning = false;
489
- return {
490
- success: false,
491
- totalApplied: 0,
492
- totalFailed: 0,
493
- totalRollbacks: 0,
494
- iterations: 0,
495
- stoppedReason: 'error',
496
- error: checkpoint.error,
497
- };
498
- }
499
- autoImprovementState.safetyBranchBase = checkpoint.branch;
500
- onProgress?.({
501
- type: 'start',
502
- message: `Starting autonomous improvement. Safety checkpoint created. Press Ctrl+C to stop.`,
503
- });
504
- let consecutiveFailures = 0;
505
- const MAX_CONSECUTIVE_FAILURES = 3;
506
- try {
507
- while (autoImprovementState.isRunning && autoImprovementState.iteration < maxIterations) {
508
- // Check for stop request
509
- if (shouldStop?.() || !autoImprovementState.isRunning) {
510
- onProgress?.({
511
- type: 'complete',
512
- message: 'Stopped by user request',
513
- totalApplied: autoImprovementState.applied,
514
- totalFailed: autoImprovementState.failed,
515
- });
516
- return {
517
- success: true,
518
- totalApplied: autoImprovementState.applied,
519
- totalFailed: autoImprovementState.failed,
520
- totalRollbacks: autoImprovementState.rollbacks,
521
- iterations: autoImprovementState.iteration,
522
- stoppedReason: 'user-stopped',
523
- };
524
- }
525
- autoImprovementState.iteration++;
526
- onProgress?.({
527
- type: 'iteration',
528
- iteration: autoImprovementState.iteration,
529
- message: `Iteration ${autoImprovementState.iteration}: Analyzing opportunities...`,
530
- });
531
- // Analyze opportunities
532
- const opportunities = analyzeImprovementOpportunities(workingDir);
533
- const filtered = opportunities.filter(o => o.confidence >= minConfidence);
534
- if (filtered.length === 0) {
535
- onProgress?.({
536
- type: 'no-opportunities',
537
- message: `No improvements found with confidence >= ${Math.round(minConfidence * 100)}%. Stopping.`,
538
- totalApplied: autoImprovementState.applied,
539
- });
540
- return {
541
- success: true,
542
- totalApplied: autoImprovementState.applied,
543
- totalFailed: autoImprovementState.failed,
544
- totalRollbacks: autoImprovementState.rollbacks,
545
- iterations: autoImprovementState.iteration,
546
- stoppedReason: 'no-opportunities',
547
- };
548
- }
549
- // Take the highest-confidence opportunity
550
- const opportunity = filtered[0];
551
- onProgress?.({
552
- type: 'iteration',
553
- iteration: autoImprovementState.iteration,
554
- message: `Found ${filtered.length} opportunities. Applying: ${opportunity.description.slice(0, 50)}...`,
555
- opportunity,
556
- });
557
- // Create improvement plan for single opportunity
558
- const plan = {
559
- id: `auto-${autoImprovementState.iteration}-${Date.now()}`,
560
- opportunities: [opportunity],
561
- totalConfidence: opportunity.confidence,
562
- estimatedImpact: opportunity.description,
563
- createdAt: new Date().toISOString(),
564
- };
565
- // Execute the improvement
566
- const result = await executeImprovementPlan(plan, workingDir, {
567
- runTests,
568
- autoCommit: true,
569
- dryRun: false,
570
- });
571
- if (result.success) {
572
- autoImprovementState.applied++;
573
- consecutiveFailures = 0;
574
- onProgress?.({
575
- type: 'applied',
576
- iteration: autoImprovementState.iteration,
577
- message: `✅ Applied: ${opportunity.description.slice(0, 50)}`,
578
- opportunity,
579
- result,
580
- totalApplied: autoImprovementState.applied,
581
- });
582
- }
583
- else {
584
- autoImprovementState.failed++;
585
- consecutiveFailures++;
586
- autoImprovementState.lastError = result.error ?? 'Unknown error';
587
- onProgress?.({
588
- type: 'failed',
589
- iteration: autoImprovementState.iteration,
590
- message: `❌ Failed: ${result.error}`,
591
- opportunity,
592
- result,
593
- totalFailed: autoImprovementState.failed,
594
- });
595
- // If too many consecutive failures, stop
596
- if (consecutiveFailures >= MAX_CONSECUTIVE_FAILURES) {
597
- onProgress?.({
598
- type: 'complete',
599
- message: `Stopping after ${MAX_CONSECUTIVE_FAILURES} consecutive failures.`,
600
- totalApplied: autoImprovementState.applied,
601
- totalFailed: autoImprovementState.failed,
602
- });
603
- return {
604
- success: false,
605
- totalApplied: autoImprovementState.applied,
606
- totalFailed: autoImprovementState.failed,
607
- totalRollbacks: autoImprovementState.rollbacks,
608
- iterations: autoImprovementState.iteration,
609
- stoppedReason: 'error',
610
- error: `Stopped after ${MAX_CONSECUTIVE_FAILURES} consecutive failures`,
611
- };
612
- }
613
- }
614
- // Delay between iterations to avoid overwhelming the system
615
- await new Promise(resolve => setTimeout(resolve, delayBetweenMs));
616
- }
617
- // Reached max iterations
618
- onProgress?.({
619
- type: 'complete',
620
- message: `Reached maximum iterations (${maxIterations})`,
621
- totalApplied: autoImprovementState.applied,
622
- totalFailed: autoImprovementState.failed,
623
- });
624
- return {
625
- success: true,
626
- totalApplied: autoImprovementState.applied,
627
- totalFailed: autoImprovementState.failed,
628
- totalRollbacks: autoImprovementState.rollbacks,
629
- iterations: autoImprovementState.iteration,
630
- stoppedReason: 'max-iterations',
631
- };
632
- }
633
- catch (error) {
634
- const errorMessage = error instanceof Error ? error.message : String(error);
635
- autoImprovementState.lastError = errorMessage;
636
- onProgress?.({
637
- type: 'failed',
638
- message: `Fatal error: ${errorMessage}. Rolling back to checkpoint...`,
639
- });
640
- // Rollback on fatal error
641
- const rollbackResult = rollbackToCheckpoint(workingDir, checkpoint.branch);
642
- if (rollbackResult.success) {
643
- autoImprovementState.rollbacks++;
644
- onProgress?.({
645
- type: 'rollback',
646
- message: 'Successfully rolled back to safety checkpoint',
647
- });
648
- }
649
- return {
650
- success: false,
651
- totalApplied: autoImprovementState.applied,
652
- totalFailed: autoImprovementState.failed,
653
- totalRollbacks: autoImprovementState.rollbacks,
654
- iterations: autoImprovementState.iteration,
655
- stoppedReason: 'error',
656
- error: errorMessage,
657
- };
658
- }
659
- finally {
660
- autoImprovementState.isRunning = false;
661
- }
19
+ export function getAutoImprovementState() {
20
+ return { running: false, isRunning: false, iteration: 0 };
662
21
  }
663
- /**
664
- * Emergency rollback - use if something goes wrong
665
- */
666
- export function emergencyRollback(workingDir) {
667
- try {
668
- // Find the most recent safety checkpoint
669
- const tags = execSync('git tag -l "auto-improve-checkpoint-*" --sort=-version:refname', {
670
- cwd: workingDir,
671
- encoding: 'utf-8',
672
- }).trim().split('\n');
673
- if (tags.length === 0 || !tags[0]) {
674
- return { success: false, message: 'No safety checkpoint found' };
675
- }
676
- const checkpoint = tags[0];
677
- // Hard reset to checkpoint
678
- execSync(`git reset --hard ${checkpoint}`, { cwd: workingDir, encoding: 'utf-8' });
679
- // Clean up the tag
680
- execSync(`git tag -d ${checkpoint}`, { cwd: workingDir, encoding: 'utf-8' });
681
- // Rebuild
682
- try {
683
- execSync('npm run build', { cwd: workingDir, encoding: 'utf-8' });
684
- }
685
- catch {
686
- // Build might fail, that's okay for emergency rollback
687
- }
688
- return {
689
- success: true,
690
- message: `Rolled back to checkpoint ${checkpoint}. Run 'npm run build' to rebuild.`,
691
- };
692
- }
693
- catch (error) {
694
- return {
695
- success: false,
696
- message: `Rollback failed: ${error instanceof Error ? error.message : String(error)}`,
697
- };
698
- }
22
+ export function emergencyRollback(_workingDir) {
23
+ return { success: true, message: 'No rollback needed (feature deprecated)' };
699
24
  }
700
25
  //# sourceMappingURL=selfImprovement.js.map