codereview-aia 0.1.2 → 0.1.3

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 (427) hide show
  1. package/dist/index.js +0 -2
  2. package/docs/opt-in-full-context.md +27 -0
  3. package/package.json +11 -11
  4. package/reports/cr-cr-aia-17-11-2025-20-13.md +354 -0
  5. package/src/clients/implementations/openRouterClient.ts +2 -0
  6. package/src/clients/openRouterClient.ts +8 -1
  7. package/src/clients/utils/promptFormatter.ts +97 -20
  8. package/src/core/handlers/FileProcessingHandler.ts +6 -0
  9. package/src/index.ts +0 -3
  10. package/src/runtime/cliEntry.ts +21 -3
  11. package/src/runtime/fileCollector.ts +278 -5
  12. package/src/runtime/reviewPipeline.ts +46 -7
  13. package/src/runtime/runAiCodeReview.ts +161 -6
  14. package/src/runtime/ui/RuntimeApp.tsx +34 -5
  15. package/src/runtime/ui/screens/ProgressScreen.tsx +49 -1
  16. package/src/runtime/ui/screens/ResultsScreen.tsx +29 -9
  17. package/src/types/review.ts +18 -0
  18. package/dist/analysis/FindingsExtractor.d.ts +0 -105
  19. package/dist/analysis/FindingsExtractor.js +0 -363
  20. package/dist/analysis/FindingsExtractor.js.map +0 -1
  21. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.d.ts +0 -111
  22. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js +0 -215
  23. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js.map +0 -1
  24. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.d.ts +0 -142
  25. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js +0 -503
  26. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js.map +0 -1
  27. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.d.ts +0 -88
  28. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js +0 -343
  29. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js.map +0 -1
  30. package/dist/analysis/ai-detection/core/AIDetectionEngine.d.ts +0 -104
  31. package/dist/analysis/ai-detection/core/AIDetectionEngine.js +0 -369
  32. package/dist/analysis/ai-detection/core/AIDetectionEngine.js.map +0 -1
  33. package/dist/analysis/ai-detection/types/DetectionTypes.d.ts +0 -364
  34. package/dist/analysis/ai-detection/types/DetectionTypes.js +0 -32
  35. package/dist/analysis/ai-detection/types/DetectionTypes.js.map +0 -1
  36. package/dist/analysis/ai-detection/utils/SubmissionConverter.d.ts +0 -97
  37. package/dist/analysis/ai-detection/utils/SubmissionConverter.js +0 -339
  38. package/dist/analysis/ai-detection/utils/SubmissionConverter.js.map +0 -1
  39. package/dist/analysis/context/ReviewContext.d.ts +0 -184
  40. package/dist/analysis/context/ReviewContext.js +0 -294
  41. package/dist/analysis/context/ReviewContext.js.map +0 -1
  42. package/dist/analysis/context/index.d.ts +0 -6
  43. package/dist/analysis/context/index.js +0 -23
  44. package/dist/analysis/context/index.js.map +0 -1
  45. package/dist/analysis/index.d.ts +0 -7
  46. package/dist/analysis/index.js +0 -24
  47. package/dist/analysis/index.js.map +0 -1
  48. package/dist/analysis/tokens/TokenAnalysisFormatter.d.ts +0 -27
  49. package/dist/analysis/tokens/TokenAnalysisFormatter.js +0 -143
  50. package/dist/analysis/tokens/TokenAnalysisFormatter.js.map +0 -1
  51. package/dist/analysis/tokens/TokenAnalyzer.d.ts +0 -155
  52. package/dist/analysis/tokens/TokenAnalyzer.js +0 -502
  53. package/dist/analysis/tokens/TokenAnalyzer.js.map +0 -1
  54. package/dist/analysis/tokens/index.d.ts +0 -7
  55. package/dist/analysis/tokens/index.js +0 -24
  56. package/dist/analysis/tokens/index.js.map +0 -1
  57. package/dist/clients/base/abstractClient.d.ts +0 -99
  58. package/dist/clients/base/abstractClient.js +0 -98
  59. package/dist/clients/base/abstractClient.js.map +0 -1
  60. package/dist/clients/base/httpClient.d.ts +0 -24
  61. package/dist/clients/base/httpClient.js +0 -147
  62. package/dist/clients/base/httpClient.js.map +0 -1
  63. package/dist/clients/base/index.d.ts +0 -11
  64. package/dist/clients/base/index.js +0 -28
  65. package/dist/clients/base/index.js.map +0 -1
  66. package/dist/clients/base/modelDetection.d.ts +0 -41
  67. package/dist/clients/base/modelDetection.js +0 -88
  68. package/dist/clients/base/modelDetection.js.map +0 -1
  69. package/dist/clients/base/responseProcessor.d.ts +0 -45
  70. package/dist/clients/base/responseProcessor.js +0 -495
  71. package/dist/clients/base/responseProcessor.js.map +0 -1
  72. package/dist/clients/factory/clientFactory.d.ts +0 -23
  73. package/dist/clients/factory/clientFactory.js +0 -50
  74. package/dist/clients/factory/clientFactory.js.map +0 -1
  75. package/dist/clients/factory/index.d.ts +0 -7
  76. package/dist/clients/factory/index.js +0 -24
  77. package/dist/clients/factory/index.js.map +0 -1
  78. package/dist/clients/implementations/index.d.ts +0 -7
  79. package/dist/clients/implementations/index.js +0 -24
  80. package/dist/clients/implementations/index.js.map +0 -1
  81. package/dist/clients/implementations/openRouterClient.d.ts +0 -69
  82. package/dist/clients/implementations/openRouterClient.js +0 -294
  83. package/dist/clients/implementations/openRouterClient.js.map +0 -1
  84. package/dist/clients/openRouterClient.d.ts +0 -42
  85. package/dist/clients/openRouterClient.js +0 -738
  86. package/dist/clients/openRouterClient.js.map +0 -1
  87. package/dist/clients/openRouterClientWrapper.d.ts +0 -22
  88. package/dist/clients/openRouterClientWrapper.js +0 -64
  89. package/dist/clients/openRouterClientWrapper.js.map +0 -1
  90. package/dist/clients/utils/directoryStructure.d.ts +0 -14
  91. package/dist/clients/utils/directoryStructure.js +0 -48
  92. package/dist/clients/utils/directoryStructure.js.map +0 -1
  93. package/dist/clients/utils/index.d.ts +0 -10
  94. package/dist/clients/utils/index.js +0 -31
  95. package/dist/clients/utils/index.js.map +0 -1
  96. package/dist/clients/utils/languageDetection.d.ts +0 -13
  97. package/dist/clients/utils/languageDetection.js +0 -46
  98. package/dist/clients/utils/languageDetection.js.map +0 -1
  99. package/dist/clients/utils/promptFormatter.d.ts +0 -36
  100. package/dist/clients/utils/promptFormatter.js +0 -92
  101. package/dist/clients/utils/promptFormatter.js.map +0 -1
  102. package/dist/clients/utils/promptLoader.d.ts +0 -27
  103. package/dist/clients/utils/promptLoader.js +0 -49
  104. package/dist/clients/utils/promptLoader.js.map +0 -1
  105. package/dist/clients/utils/tokenCounter.d.ts +0 -81
  106. package/dist/clients/utils/tokenCounter.js +0 -209
  107. package/dist/clients/utils/tokenCounter.js.map +0 -1
  108. package/dist/core/ApiClientSelector.d.ts +0 -8
  109. package/dist/core/ApiClientSelector.js +0 -29
  110. package/dist/core/ApiClientSelector.js.map +0 -1
  111. package/dist/core/ConfigurationService.d.ts +0 -286
  112. package/dist/core/ConfigurationService.js +0 -477
  113. package/dist/core/ConfigurationService.js.map +0 -1
  114. package/dist/core/ConsolidationService.d.ts +0 -99
  115. package/dist/core/ConsolidationService.js +0 -341
  116. package/dist/core/ConsolidationService.js.map +0 -1
  117. package/dist/core/InteractiveDisplayManager.d.ts +0 -22
  118. package/dist/core/InteractiveDisplayManager.js +0 -70
  119. package/dist/core/InteractiveDisplayManager.js.map +0 -1
  120. package/dist/core/OutputManager.d.ts +0 -26
  121. package/dist/core/OutputManager.js +0 -217
  122. package/dist/core/OutputManager.js.map +0 -1
  123. package/dist/core/ReviewGenerator.d.ts +0 -13
  124. package/dist/core/ReviewGenerator.js +0 -102
  125. package/dist/core/ReviewGenerator.js.map +0 -1
  126. package/dist/core/fileDiscovery.d.ts +0 -35
  127. package/dist/core/fileDiscovery.js +0 -202
  128. package/dist/core/fileDiscovery.js.map +0 -1
  129. package/dist/core/handlers/EstimationHandler.d.ts +0 -18
  130. package/dist/core/handlers/EstimationHandler.js +0 -110
  131. package/dist/core/handlers/EstimationHandler.js.map +0 -1
  132. package/dist/core/handlers/FileProcessingHandler.d.ts +0 -31
  133. package/dist/core/handlers/FileProcessingHandler.js +0 -159
  134. package/dist/core/handlers/FileProcessingHandler.js.map +0 -1
  135. package/dist/core/handlers/OutputHandler.d.ts +0 -27
  136. package/dist/core/handlers/OutputHandler.js +0 -127
  137. package/dist/core/handlers/OutputHandler.js.map +0 -1
  138. package/dist/core/handlers/ReviewExecutor.d.ts +0 -32
  139. package/dist/core/handlers/ReviewExecutor.js +0 -111
  140. package/dist/core/handlers/ReviewExecutor.js.map +0 -1
  141. package/dist/core/reviewOrchestrator.d.ts +0 -24
  142. package/dist/core/reviewOrchestrator.js +0 -294
  143. package/dist/core/reviewOrchestrator.js.map +0 -1
  144. package/dist/core/utils/ModelInfoUtils.d.ts +0 -16
  145. package/dist/core/utils/ModelInfoUtils.js +0 -54
  146. package/dist/core/utils/ModelInfoUtils.js.map +0 -1
  147. package/dist/formatters/outputFormatter.d.ts +0 -31
  148. package/dist/formatters/outputFormatter.js +0 -65
  149. package/dist/formatters/outputFormatter.js.map +0 -1
  150. package/dist/formatters/utils/IssueFormatters.d.ts +0 -20
  151. package/dist/formatters/utils/IssueFormatters.js +0 -67
  152. package/dist/formatters/utils/IssueFormatters.js.map +0 -1
  153. package/dist/formatters/utils/JsonFormatter.d.ts +0 -13
  154. package/dist/formatters/utils/JsonFormatter.js +0 -57
  155. package/dist/formatters/utils/JsonFormatter.js.map +0 -1
  156. package/dist/formatters/utils/MarkdownFormatters.d.ts +0 -51
  157. package/dist/formatters/utils/MarkdownFormatters.js +0 -456
  158. package/dist/formatters/utils/MarkdownFormatters.js.map +0 -1
  159. package/dist/formatters/utils/MetadataFormatter.d.ts +0 -65
  160. package/dist/formatters/utils/MetadataFormatter.js +0 -219
  161. package/dist/formatters/utils/MetadataFormatter.js.map +0 -1
  162. package/dist/formatters/utils/ModelInfoExtractor.d.ts +0 -33
  163. package/dist/formatters/utils/ModelInfoExtractor.js +0 -111
  164. package/dist/formatters/utils/ModelInfoExtractor.js.map +0 -1
  165. package/dist/index.d.ts +0 -2
  166. package/dist/index.js.map +0 -1
  167. package/dist/plugins/PluginInterface.d.ts +0 -44
  168. package/dist/plugins/PluginInterface.js +0 -9
  169. package/dist/plugins/PluginInterface.js.map +0 -1
  170. package/dist/plugins/PluginManager.d.ts +0 -51
  171. package/dist/plugins/PluginManager.js +0 -151
  172. package/dist/plugins/PluginManager.js.map +0 -1
  173. package/dist/prompts/PromptManager.d.ts +0 -30
  174. package/dist/prompts/PromptManager.js +0 -62
  175. package/dist/prompts/PromptManager.js.map +0 -1
  176. package/dist/prompts/cache/PromptCache.d.ts +0 -32
  177. package/dist/prompts/cache/PromptCache.js +0 -48
  178. package/dist/prompts/cache/PromptCache.js.map +0 -1
  179. package/dist/runtime/auth/service.d.ts +0 -2
  180. package/dist/runtime/auth/service.js +0 -41
  181. package/dist/runtime/auth/service.js.map +0 -1
  182. package/dist/runtime/auth/session.d.ts +0 -5
  183. package/dist/runtime/auth/session.js +0 -87
  184. package/dist/runtime/auth/session.js.map +0 -1
  185. package/dist/runtime/auth/types.d.ts +0 -9
  186. package/dist/runtime/auth/types.js +0 -3
  187. package/dist/runtime/auth/types.js.map +0 -1
  188. package/dist/runtime/cliEntry.d.ts +0 -1
  189. package/dist/runtime/cliEntry.js +0 -213
  190. package/dist/runtime/cliEntry.js.map +0 -1
  191. package/dist/runtime/debug/logManager.d.ts +0 -5
  192. package/dist/runtime/debug/logManager.js +0 -31
  193. package/dist/runtime/debug/logManager.js.map +0 -1
  194. package/dist/runtime/errors.d.ts +0 -5
  195. package/dist/runtime/errors.js +0 -15
  196. package/dist/runtime/errors.js.map +0 -1
  197. package/dist/runtime/fileCollector.d.ts +0 -5
  198. package/dist/runtime/fileCollector.js +0 -167
  199. package/dist/runtime/fileCollector.js.map +0 -1
  200. package/dist/runtime/manifest.d.ts +0 -1
  201. package/dist/runtime/manifest.js +0 -65
  202. package/dist/runtime/manifest.js.map +0 -1
  203. package/dist/runtime/openrouterProxy.d.ts +0 -4
  204. package/dist/runtime/openrouterProxy.js +0 -43
  205. package/dist/runtime/openrouterProxy.js.map +0 -1
  206. package/dist/runtime/preprod/webCheck.d.ts +0 -1
  207. package/dist/runtime/preprod/webCheck.js +0 -98
  208. package/dist/runtime/preprod/webCheck.js.map +0 -1
  209. package/dist/runtime/proxyConfig.d.ts +0 -6
  210. package/dist/runtime/proxyConfig.js +0 -86
  211. package/dist/runtime/proxyConfig.js.map +0 -1
  212. package/dist/runtime/proxyEnvironment.d.ts +0 -3
  213. package/dist/runtime/proxyEnvironment.js +0 -63
  214. package/dist/runtime/proxyEnvironment.js.map +0 -1
  215. package/dist/runtime/reportMerge.d.ts +0 -30
  216. package/dist/runtime/reportMerge.js +0 -70
  217. package/dist/runtime/reportMerge.js.map +0 -1
  218. package/dist/runtime/reporting/markdownReportBuilder.d.ts +0 -15
  219. package/dist/runtime/reporting/markdownReportBuilder.js +0 -97
  220. package/dist/runtime/reporting/markdownReportBuilder.js.map +0 -1
  221. package/dist/runtime/reporting/reportDataCollector.d.ts +0 -31
  222. package/dist/runtime/reporting/reportDataCollector.js +0 -170
  223. package/dist/runtime/reporting/reportDataCollector.js.map +0 -1
  224. package/dist/runtime/reporting/summaryGenerator.d.ts +0 -10
  225. package/dist/runtime/reporting/summaryGenerator.js +0 -67
  226. package/dist/runtime/reporting/summaryGenerator.js.map +0 -1
  227. package/dist/runtime/reviewPipeline.d.ts +0 -28
  228. package/dist/runtime/reviewPipeline.js +0 -122
  229. package/dist/runtime/reviewPipeline.js.map +0 -1
  230. package/dist/runtime/runAiCodeReview.d.ts +0 -10
  231. package/dist/runtime/runAiCodeReview.js +0 -138
  232. package/dist/runtime/runAiCodeReview.js.map +0 -1
  233. package/dist/runtime/runtimeConfig.d.ts +0 -4
  234. package/dist/runtime/runtimeConfig.js +0 -7
  235. package/dist/runtime/runtimeConfig.js.map +0 -1
  236. package/dist/runtime/ui/Layout.d.ts +0 -11
  237. package/dist/runtime/ui/Layout.js +0 -47
  238. package/dist/runtime/ui/Layout.js.map +0 -1
  239. package/dist/runtime/ui/RuntimeApp.d.ts +0 -6
  240. package/dist/runtime/ui/RuntimeApp.js +0 -161
  241. package/dist/runtime/ui/RuntimeApp.js.map +0 -1
  242. package/dist/runtime/ui/inkModules.d.ts +0 -10
  243. package/dist/runtime/ui/inkModules.js +0 -63
  244. package/dist/runtime/ui/inkModules.js.map +0 -1
  245. package/dist/runtime/ui/screens/AuthScreen.d.ts +0 -6
  246. package/dist/runtime/ui/screens/AuthScreen.js +0 -67
  247. package/dist/runtime/ui/screens/AuthScreen.js.map +0 -1
  248. package/dist/runtime/ui/screens/ModeSelection.d.ts +0 -10
  249. package/dist/runtime/ui/screens/ModeSelection.js +0 -100
  250. package/dist/runtime/ui/screens/ModeSelection.js.map +0 -1
  251. package/dist/runtime/ui/screens/ProgressScreen.d.ts +0 -7
  252. package/dist/runtime/ui/screens/ProgressScreen.js +0 -38
  253. package/dist/runtime/ui/screens/ProgressScreen.js.map +0 -1
  254. package/dist/runtime/ui/screens/ResultsScreen.d.ts +0 -7
  255. package/dist/runtime/ui/screens/ResultsScreen.js +0 -22
  256. package/dist/runtime/ui/screens/ResultsScreen.js.map +0 -1
  257. package/dist/strategies/ArchitecturalReviewStrategy.d.ts +0 -29
  258. package/dist/strategies/ArchitecturalReviewStrategy.js +0 -42
  259. package/dist/strategies/ArchitecturalReviewStrategy.js.map +0 -1
  260. package/dist/strategies/CodingTestReviewStrategy.d.ts +0 -194
  261. package/dist/strategies/CodingTestReviewStrategy.js +0 -681
  262. package/dist/strategies/CodingTestReviewStrategy.js.map +0 -1
  263. package/dist/strategies/ConsolidatedReviewStrategy.d.ts +0 -25
  264. package/dist/strategies/ConsolidatedReviewStrategy.js +0 -45
  265. package/dist/strategies/ConsolidatedReviewStrategy.js.map +0 -1
  266. package/dist/strategies/ExtractPatternsReviewStrategy.d.ts +0 -30
  267. package/dist/strategies/ExtractPatternsReviewStrategy.js +0 -51
  268. package/dist/strategies/ExtractPatternsReviewStrategy.js.map +0 -1
  269. package/dist/strategies/MultiPassReviewStrategy.d.ts +0 -86
  270. package/dist/strategies/MultiPassReviewStrategy.js +0 -590
  271. package/dist/strategies/MultiPassReviewStrategy.js.map +0 -1
  272. package/dist/strategies/ReviewStrategy.d.ts +0 -45
  273. package/dist/strategies/ReviewStrategy.js +0 -24
  274. package/dist/strategies/ReviewStrategy.js.map +0 -1
  275. package/dist/strategies/StrategyFactory.d.ts +0 -19
  276. package/dist/strategies/StrategyFactory.js +0 -72
  277. package/dist/strategies/StrategyFactory.js.map +0 -1
  278. package/dist/strategies/index.d.ts +0 -13
  279. package/dist/strategies/index.js +0 -30
  280. package/dist/strategies/index.js.map +0 -1
  281. package/dist/tokenizers/baseTokenizer.d.ts +0 -25
  282. package/dist/tokenizers/baseTokenizer.js +0 -48
  283. package/dist/tokenizers/baseTokenizer.js.map +0 -1
  284. package/dist/tokenizers/gptTokenizer.d.ts +0 -7
  285. package/dist/tokenizers/gptTokenizer.js +0 -28
  286. package/dist/tokenizers/gptTokenizer.js.map +0 -1
  287. package/dist/tokenizers/index.d.ts +0 -7
  288. package/dist/tokenizers/index.js +0 -24
  289. package/dist/tokenizers/index.js.map +0 -1
  290. package/dist/types/apiResponses.d.ts +0 -39
  291. package/dist/types/apiResponses.js +0 -9
  292. package/dist/types/apiResponses.js.map +0 -1
  293. package/dist/types/cli.d.ts +0 -22
  294. package/dist/types/cli.js +0 -3
  295. package/dist/types/cli.js.map +0 -1
  296. package/dist/types/common.d.ts +0 -22
  297. package/dist/types/common.js +0 -14
  298. package/dist/types/common.js.map +0 -1
  299. package/dist/types/configuration.d.ts +0 -682
  300. package/dist/types/configuration.js +0 -65
  301. package/dist/types/configuration.js.map +0 -1
  302. package/dist/types/review.d.ts +0 -258
  303. package/dist/types/review.js +0 -8
  304. package/dist/types/review.js.map +0 -1
  305. package/dist/types/reviewSchema.d.ts +0 -543
  306. package/dist/types/reviewSchema.js +0 -121
  307. package/dist/types/reviewSchema.js.map +0 -1
  308. package/dist/types/structuredReview.d.ts +0 -119
  309. package/dist/types/structuredReview.js +0 -6
  310. package/dist/types/structuredReview.js.map +0 -1
  311. package/dist/types/tokenAnalysis.d.ts +0 -44
  312. package/dist/types/tokenAnalysis.js +0 -4
  313. package/dist/types/tokenAnalysis.js.map +0 -1
  314. package/dist/utils/FileReader.d.ts +0 -33
  315. package/dist/utils/FileReader.js +0 -88
  316. package/dist/utils/FileReader.js.map +0 -1
  317. package/dist/utils/FileWriter.d.ts +0 -26
  318. package/dist/utils/FileWriter.js +0 -76
  319. package/dist/utils/FileWriter.js.map +0 -1
  320. package/dist/utils/PathGenerator.d.ts +0 -30
  321. package/dist/utils/PathGenerator.js +0 -82
  322. package/dist/utils/PathGenerator.js.map +0 -1
  323. package/dist/utils/api/apiUtils.d.ts +0 -3
  324. package/dist/utils/api/apiUtils.js +0 -20
  325. package/dist/utils/api/apiUtils.js.map +0 -1
  326. package/dist/utils/api/index.d.ts +0 -1
  327. package/dist/utils/api/index.js +0 -18
  328. package/dist/utils/api/index.js.map +0 -1
  329. package/dist/utils/apiErrorHandler.d.ts +0 -130
  330. package/dist/utils/apiErrorHandler.js +0 -256
  331. package/dist/utils/apiErrorHandler.js.map +0 -1
  332. package/dist/utils/ciDataCollector.d.ts +0 -51
  333. package/dist/utils/ciDataCollector.js +0 -197
  334. package/dist/utils/ciDataCollector.js.map +0 -1
  335. package/dist/utils/codingTestConfigLoader.d.ts +0 -66
  336. package/dist/utils/codingTestConfigLoader.js +0 -420
  337. package/dist/utils/codingTestConfigLoader.js.map +0 -1
  338. package/dist/utils/dependencies/aiDependencyAnalyzer.d.ts +0 -30
  339. package/dist/utils/dependencies/aiDependencyAnalyzer.js +0 -343
  340. package/dist/utils/dependencies/aiDependencyAnalyzer.js.map +0 -1
  341. package/dist/utils/detection/frameworkDetector.d.ts +0 -43
  342. package/dist/utils/detection/frameworkDetector.js +0 -795
  343. package/dist/utils/detection/frameworkDetector.js.map +0 -1
  344. package/dist/utils/detection/index.d.ts +0 -9
  345. package/dist/utils/detection/index.js +0 -28
  346. package/dist/utils/detection/index.js.map +0 -1
  347. package/dist/utils/detection/projectTypeDetector.d.ts +0 -27
  348. package/dist/utils/detection/projectTypeDetector.js +0 -469
  349. package/dist/utils/detection/projectTypeDetector.js.map +0 -1
  350. package/dist/utils/diagramGenerator.d.ts +0 -49
  351. package/dist/utils/diagramGenerator.js +0 -218
  352. package/dist/utils/diagramGenerator.js.map +0 -1
  353. package/dist/utils/errorLogger.d.ts +0 -24
  354. package/dist/utils/errorLogger.js +0 -59
  355. package/dist/utils/errorLogger.js.map +0 -1
  356. package/dist/utils/estimationUtils.d.ts +0 -139
  357. package/dist/utils/estimationUtils.js +0 -329
  358. package/dist/utils/estimationUtils.js.map +0 -1
  359. package/dist/utils/fileFilters.d.ts +0 -72
  360. package/dist/utils/fileFilters.js +0 -338
  361. package/dist/utils/fileFilters.js.map +0 -1
  362. package/dist/utils/fileSystem.d.ts +0 -22
  363. package/dist/utils/fileSystem.js +0 -45
  364. package/dist/utils/fileSystem.js.map +0 -1
  365. package/dist/utils/index.d.ts +0 -22
  366. package/dist/utils/index.js +0 -52
  367. package/dist/utils/index.js.map +0 -1
  368. package/dist/utils/logger.d.ts +0 -77
  369. package/dist/utils/logger.js +0 -271
  370. package/dist/utils/logger.js.map +0 -1
  371. package/dist/utils/pathValidator.d.ts +0 -40
  372. package/dist/utils/pathValidator.js +0 -98
  373. package/dist/utils/pathValidator.js.map +0 -1
  374. package/dist/utils/priorityFilter.d.ts +0 -34
  375. package/dist/utils/priorityFilter.js +0 -54
  376. package/dist/utils/priorityFilter.js.map +0 -1
  377. package/dist/utils/projectDocs.d.ts +0 -47
  378. package/dist/utils/projectDocs.js +0 -158
  379. package/dist/utils/projectDocs.js.map +0 -1
  380. package/dist/utils/promptPaths.d.ts +0 -6
  381. package/dist/utils/promptPaths.js +0 -33
  382. package/dist/utils/promptPaths.js.map +0 -1
  383. package/dist/utils/promptTemplateManager.d.ts +0 -34
  384. package/dist/utils/promptTemplateManager.js +0 -140
  385. package/dist/utils/promptTemplateManager.js.map +0 -1
  386. package/dist/utils/review/consolidateReview.d.ts +0 -15
  387. package/dist/utils/review/consolidateReview.js +0 -481
  388. package/dist/utils/review/consolidateReview.js.map +0 -1
  389. package/dist/utils/review/fixDisplay.d.ts +0 -20
  390. package/dist/utils/review/fixDisplay.js +0 -84
  391. package/dist/utils/review/fixDisplay.js.map +0 -1
  392. package/dist/utils/review/fixImplementation.d.ts +0 -28
  393. package/dist/utils/review/fixImplementation.js +0 -60
  394. package/dist/utils/review/fixImplementation.js.map +0 -1
  395. package/dist/utils/review/index.d.ts +0 -13
  396. package/dist/utils/review/index.js +0 -50
  397. package/dist/utils/review/index.js.map +0 -1
  398. package/dist/utils/review/interactiveProcessing.d.ts +0 -25
  399. package/dist/utils/review/interactiveProcessing.js +0 -251
  400. package/dist/utils/review/interactiveProcessing.js.map +0 -1
  401. package/dist/utils/review/progressTracker.d.ts +0 -106
  402. package/dist/utils/review/progressTracker.js +0 -227
  403. package/dist/utils/review/progressTracker.js.map +0 -1
  404. package/dist/utils/review/reviewExtraction.d.ts +0 -31
  405. package/dist/utils/review/reviewExtraction.js +0 -324
  406. package/dist/utils/review/reviewExtraction.js.map +0 -1
  407. package/dist/utils/review/types.d.ts +0 -45
  408. package/dist/utils/review/types.js +0 -18
  409. package/dist/utils/review/types.js.map +0 -1
  410. package/dist/utils/reviewActionHandler.d.ts +0 -16
  411. package/dist/utils/reviewActionHandler.js +0 -34
  412. package/dist/utils/reviewActionHandler.js.map +0 -1
  413. package/dist/utils/reviewParser.d.ts +0 -34
  414. package/dist/utils/reviewParser.js +0 -218
  415. package/dist/utils/reviewParser.js.map +0 -1
  416. package/dist/utils/sanitizer.d.ts +0 -82
  417. package/dist/utils/sanitizer.js +0 -239
  418. package/dist/utils/sanitizer.js.map +0 -1
  419. package/dist/utils/smartFileSelector.d.ts +0 -50
  420. package/dist/utils/smartFileSelector.js +0 -261
  421. package/dist/utils/smartFileSelector.js.map +0 -1
  422. package/dist/utils/templateLoader.d.ts +0 -44
  423. package/dist/utils/templateLoader.js +0 -431
  424. package/dist/utils/templateLoader.js.map +0 -1
  425. package/dist/utils/treeGenerator.d.ts +0 -12
  426. package/dist/utils/treeGenerator.js +0 -133
  427. package/dist/utils/treeGenerator.js.map +0 -1
@@ -1,219 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview Utilities for formatting metadata sections in review outputs.
4
- *
5
- * This module provides functions to format metadata sections for review outputs,
6
- * including cost information, model details, and other metadata.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.formatMetadataSection = formatMetadataSection;
10
- exports.parseMetadata = parseMetadata;
11
- exports.createEnhancedMetadata = createEnhancedMetadata;
12
- exports.parseCostInfo = parseCostInfo;
13
- exports.formatCostInfo = formatCostInfo;
14
- const ModelInfoExtractor_1 = require("./ModelInfoExtractor");
15
- /**
16
- * Format a metadata section for a review
17
- * @param reviewType Type of review
18
- * @param timestamp Timestamp of the review
19
- * @param modelInfo Model information string
20
- * @param cost Cost information object
21
- * @param toolVersion Tool version
22
- * @param commandOptions Command options used
23
- * @param detectedLanguage Detected language
24
- * @param detectedFramework Detected framework
25
- * @param frameworkVersion Framework version
26
- * @param cssFrameworks CSS frameworks detected
27
- * @returns Formatted metadata section as markdown
28
- */
29
- function formatMetadataSection(reviewType, timestamp, modelInfo, cost, toolVersion, commandOptions, detectedLanguage, detectedFramework, frameworkVersion, cssFrameworks) {
30
- // Extract model vendor and name from modelInfo
31
- const { modelVendor, modelName } = (0, ModelInfoExtractor_1.extractModelInfoFromString)(modelInfo);
32
- // Format the date
33
- const formattedDate = new Date(timestamp).toLocaleString(undefined, {
34
- year: 'numeric',
35
- month: 'long',
36
- day: 'numeric',
37
- hour: '2-digit',
38
- minute: '2-digit',
39
- second: '2-digit',
40
- timeZoneName: 'short',
41
- });
42
- // Create metadata section
43
- let metadataSection = `## Metadata\n| Property | Value |\n|----------|-------|\n| Review Type | ${reviewType} |\n| Generated At | ${formattedDate} |\n| Model Provider | ${modelVendor} |\n| Model Name | ${modelName} |`;
44
- // Add framework detection information if available
45
- if (detectedLanguage) {
46
- metadataSection += `\n| Detected Language | ${detectedLanguage} |`;
47
- if (detectedFramework && detectedFramework !== 'none') {
48
- metadataSection += `\n| Detected Framework | ${detectedFramework}${frameworkVersion ? ` v${frameworkVersion}` : ''} |`;
49
- }
50
- if (cssFrameworks && cssFrameworks.length > 0) {
51
- const cssFrameworksStr = cssFrameworks
52
- .map((cf) => (cf.version ? `${cf.name} v${cf.version.replace(/[^\d.]/g, '')}` : cf.name))
53
- .join(', ');
54
- metadataSection += `\n| CSS Frameworks | ${cssFrameworksStr} |`;
55
- }
56
- }
57
- // Add cost information if available
58
- if (cost) {
59
- metadataSection += `\n| Input Tokens | ${cost.inputTokens.toLocaleString()} |\n| Output Tokens | ${cost.outputTokens.toLocaleString()} |\n| Total Tokens | ${cost.totalTokens.toLocaleString()} |\n| Estimated Cost | ${cost.formattedCost} |`;
60
- // Add multi-pass information if available
61
- if (cost.passCount && cost.passCount > 1) {
62
- metadataSection += `\n| Multi-pass Review | ${cost.passCount} passes |`;
63
- }
64
- }
65
- // Add tool version if available
66
- if (toolVersion) {
67
- metadataSection += `\n| Tool Version | ${toolVersion} |`;
68
- }
69
- // Add command options if available
70
- if (commandOptions) {
71
- metadataSection += `\n| Command Options | \`${commandOptions}\` |`;
72
- }
73
- // Close the metadata table
74
- metadataSection += `\n`;
75
- return metadataSection;
76
- }
77
- /**
78
- * Parse metadata from a review object
79
- * @param metadata Metadata object or string
80
- * @returns Parsed metadata object
81
- */
82
- function parseMetadata(metadata) {
83
- if (!metadata) {
84
- return {};
85
- }
86
- try {
87
- return typeof metadata === 'string' ? JSON.parse(metadata) : metadata;
88
- }
89
- catch (_error) {
90
- // Silently continue if metadata parsing fails
91
- return {};
92
- }
93
- }
94
- /**
95
- * Create enhanced metadata object with detection info
96
- * @param modelVendor Model vendor
97
- * @param modelName Model name
98
- * @param modelInfo Full model info string
99
- * @param reviewType Review type
100
- * @param displayPath Display path
101
- * @param timestamp Timestamp
102
- * @param cost Cost information
103
- * @param toolVersion Tool version
104
- * @param commandOptions Command options
105
- * @param additionalMetadata Additional metadata
106
- * @param detectedLanguage Detected language
107
- * @param detectedFramework Detected framework
108
- * @param frameworkVersion Framework version
109
- * @param cssFrameworks CSS frameworks
110
- * @returns Enhanced metadata object
111
- */
112
- function createEnhancedMetadata(modelVendor, modelName, modelInfo, reviewType, displayPath, timestamp, cost, toolVersion, commandOptions, additionalMetadata = {}, detectedLanguage, detectedFramework, frameworkVersion, cssFrameworks) {
113
- // Format the date
114
- const formattedDate = new Date(timestamp).toLocaleString(undefined, {
115
- year: 'numeric',
116
- month: 'long',
117
- day: 'numeric',
118
- hour: '2-digit',
119
- minute: '2-digit',
120
- second: '2-digit',
121
- timeZoneName: 'short',
122
- });
123
- // Create enhanced metadata object
124
- const enhancedMetadata = {
125
- model: {
126
- provider: modelVendor,
127
- name: modelName,
128
- fullName: modelInfo,
129
- },
130
- review: {
131
- type: reviewType,
132
- path: displayPath,
133
- generatedAt: new Date(timestamp).toISOString(),
134
- formattedDate: formattedDate,
135
- multiPass: cost?.passCount && cost.passCount > 1
136
- ? {
137
- enabled: true,
138
- passCount: cost.passCount || 1,
139
- perPassCosts: cost.perPassCosts || null,
140
- }
141
- : null,
142
- },
143
- cost: cost || null,
144
- tool: {
145
- version: toolVersion || process.env.npm_package_version || '2.1.1',
146
- commandOptions: commandOptions || null,
147
- ...additionalMetadata,
148
- },
149
- };
150
- // Add framework detection information if available
151
- if (detectedLanguage) {
152
- enhancedMetadata.detection = {
153
- language: detectedLanguage,
154
- };
155
- if (detectedFramework && detectedFramework !== 'none') {
156
- enhancedMetadata.detection.framework = detectedFramework;
157
- if (frameworkVersion) {
158
- enhancedMetadata.detection.frameworkVersion = frameworkVersion;
159
- }
160
- }
161
- if (cssFrameworks && cssFrameworks.length > 0) {
162
- enhancedMetadata.detection.cssFrameworks = cssFrameworks;
163
- }
164
- }
165
- return enhancedMetadata;
166
- }
167
- /**
168
- * Parse cost information from a cost info string
169
- * @param costInfo Cost information string
170
- * @returns Parsed cost object or null
171
- */
172
- function parseCostInfo(costInfo) {
173
- if (!costInfo) {
174
- return null;
175
- }
176
- // Try to extract cost information from the costInfo string
177
- const inputTokensMatch = costInfo.match(/Input tokens: ([\d,]+)/);
178
- const outputTokensMatch = costInfo.match(/Output tokens: ([\d,]+)/);
179
- const totalTokensMatch = costInfo.match(/Total tokens: ([\d,]+)/);
180
- const estimatedCostMatch = costInfo.match(/Estimated cost: (.*?)$/m);
181
- const passCountMatch = costInfo.match(/Multi-pass review: (\d+) passes/);
182
- if (inputTokensMatch || outputTokensMatch || totalTokensMatch || estimatedCostMatch) {
183
- return {
184
- inputTokens: inputTokensMatch ? parseInt(inputTokensMatch[1].replace(/,/g, '')) : 0,
185
- outputTokens: outputTokensMatch ? parseInt(outputTokensMatch[1].replace(/,/g, '')) : 0,
186
- totalTokens: totalTokensMatch ? parseInt(totalTokensMatch[1].replace(/,/g, '')) : 0,
187
- estimatedCost: estimatedCostMatch
188
- ? parseFloat(estimatedCostMatch[1].replace('$', '').replace(' USD', ''))
189
- : 0,
190
- formattedCost: estimatedCostMatch ? estimatedCostMatch[1] : '$0.00 USD',
191
- passCount: passCountMatch ? parseInt(passCountMatch[1]) : 1,
192
- };
193
- }
194
- return null;
195
- }
196
- /**
197
- * Format cost information as a markdown string
198
- * @param cost Cost information object
199
- * @returns Formatted cost information string
200
- */
201
- function formatCostInfo(cost) {
202
- if (!cost) {
203
- return '';
204
- }
205
- let costInfo = `\n\n## Token Usage and Cost\n- Input tokens: ${cost.inputTokens.toLocaleString()}\n- Output tokens: ${cost.outputTokens.toLocaleString()}\n- Total tokens: ${cost.totalTokens.toLocaleString()}\n- Estimated cost: ${cost.formattedCost}`;
206
- // Add multi-pass information if available
207
- if (cost.passCount && cost.passCount > 1) {
208
- costInfo += `\n- Multi-pass review: ${cost.passCount} passes`;
209
- // Add per-pass breakdown if available
210
- if (cost.perPassCosts && Array.isArray(cost.perPassCosts)) {
211
- costInfo += `\n\n### Pass Breakdown`;
212
- cost.perPassCosts.forEach((passCost) => {
213
- costInfo += `\nPass ${passCost.passNumber}:\n- Input tokens: ${passCost.inputTokens.toLocaleString()}\n- Output tokens: ${passCost.outputTokens.toLocaleString()}\n- Total tokens: ${passCost.totalTokens.toLocaleString()}\n- Cost: ${typeof passCost.estimatedCost === 'number' ? `$${passCost.estimatedCost.toFixed(4)} USD` : 'N/A'}`;
214
- });
215
- }
216
- }
217
- return costInfo;
218
- }
219
- //# sourceMappingURL=MetadataFormatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MetadataFormatter.js","sourceRoot":"","sources":["../../../src/formatters/utils/MetadataFormatter.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- /**
2
- * @fileoverview Utility for extracting model information from model strings.
3
- *
4
- * This module provides functions to extract and parse model information from
5
- * model strings in various formats. It handles different provider prefixes
6
- * and standardizes the output format.
7
- */
8
- /**
9
- * Model information extracted from a model string
10
- */
11
- export interface ModelInfo {
12
- /** The provider of the model (e.g., 'Google', 'Anthropic', 'OpenAI') */
13
- modelVendor: string;
14
- /** The name of the model without the provider prefix */
15
- modelName: string;
16
- /** A formatted string combining the provider and model name */
17
- modelInfo: string;
18
- }
19
- /**
20
- * Extract model information from a model string
21
- * @param modelString The model string to extract information from (e.g., 'gemini:gemini-1.5-pro')
22
- * @returns Object containing modelVendor, modelName, and modelInfo
23
- */
24
- export declare function extractModelInfo(modelString?: string): ModelInfo;
25
- /**
26
- * Extract model information from a formatted model info string
27
- * @param modelInfo Formatted model info string (e.g., "Google Gemini AI (gemini-1.5-pro)")
28
- * @returns Object containing modelVendor and modelName
29
- */
30
- export declare function extractModelInfoFromString(modelInfo: string): {
31
- modelVendor: string;
32
- modelName: string;
33
- };
@@ -1,111 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview Utility for extracting model information from model strings.
4
- *
5
- * This module provides functions to extract and parse model information from
6
- * model strings in various formats. It handles different provider prefixes
7
- * and standardizes the output format.
8
- */
9
- var __importDefault = (this && this.__importDefault) || function (mod) {
10
- return (mod && mod.__esModule) ? mod : { "default": mod };
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.extractModelInfo = extractModelInfo;
14
- exports.extractModelInfoFromString = extractModelInfoFromString;
15
- const logger_1 = __importDefault(require("../../utils/logger"));
16
- /**
17
- * Extract model information from a model string
18
- * @param modelString The model string to extract information from (e.g., 'gemini:gemini-1.5-pro')
19
- * @returns Object containing modelVendor, modelName, and modelInfo
20
- */
21
- function extractModelInfo(modelString) {
22
- // Default values
23
- let modelVendor = 'Unknown';
24
- let modelName = 'AI';
25
- let modelInfo = 'AI';
26
- if (!modelString) {
27
- logger_1.default.warn('No model string provided. Using default values.');
28
- return { modelVendor, modelName, modelInfo };
29
- }
30
- // Extract model information based on provider prefix
31
- if (modelString.startsWith('openrouter:')) {
32
- modelVendor = 'OpenRouter';
33
- modelName = modelString.substring('openrouter:'.length);
34
- modelInfo = `OpenRouter (${modelName})`;
35
- }
36
- else if (modelString.startsWith('anthropic:')) {
37
- modelVendor = 'Anthropic';
38
- modelName = modelString.substring('anthropic:'.length);
39
- modelInfo = `Anthropic (${modelName})`;
40
- }
41
- else if (modelString.startsWith('openai:')) {
42
- modelVendor = 'OpenAI';
43
- modelName = modelString.substring('openai:'.length);
44
- modelInfo = `OpenAI (${modelName})`;
45
- }
46
- else if (modelString.startsWith('gemini:')) {
47
- modelVendor = 'Google';
48
- modelName = modelString.substring('gemini:'.length);
49
- modelInfo = `Google Gemini AI (${modelName})`;
50
- }
51
- else if (modelString.startsWith('Google:')) {
52
- // Handle miscapitalized provider names
53
- modelVendor = 'Google';
54
- modelName = modelString.substring('Google:'.length);
55
- modelInfo = `Google Gemini AI (${modelName})`;
56
- }
57
- else if (modelString.startsWith('Anthropic:')) {
58
- modelVendor = 'Anthropic';
59
- modelName = modelString.substring('Anthropic:'.length);
60
- modelInfo = `Anthropic (${modelName})`;
61
- }
62
- else if (modelString.startsWith('OpenAI:')) {
63
- modelVendor = 'OpenAI';
64
- modelName = modelString.substring('OpenAI:'.length);
65
- modelInfo = `OpenAI (${modelName})`;
66
- }
67
- else if (modelString.startsWith('OpenRouter:')) {
68
- modelVendor = 'OpenRouter';
69
- modelName = modelString.substring('OpenRouter:'.length);
70
- modelInfo = `OpenRouter (${modelName})`;
71
- }
72
- else {
73
- modelVendor = 'Unknown';
74
- modelName = modelString;
75
- modelInfo = `AI (${modelName})`;
76
- }
77
- return { modelVendor, modelName, modelInfo };
78
- }
79
- /**
80
- * Extract model information from a formatted model info string
81
- * @param modelInfo Formatted model info string (e.g., "Google Gemini AI (gemini-1.5-pro)")
82
- * @returns Object containing modelVendor and modelName
83
- */
84
- function extractModelInfoFromString(modelInfo) {
85
- let modelVendor = 'Unknown';
86
- let modelName = 'AI';
87
- if (modelInfo) {
88
- if (modelInfo.includes('Google Gemini AI')) {
89
- modelVendor = 'Google';
90
- const match = modelInfo.match(/\((.*?)\)/);
91
- modelName = match ? match[1] : 'Gemini';
92
- }
93
- else if (modelInfo.includes('Anthropic')) {
94
- modelVendor = 'Anthropic';
95
- const match = modelInfo.match(/\((.*?)\)/);
96
- modelName = match ? match[1] : 'Claude';
97
- }
98
- else if (modelInfo.includes('OpenAI')) {
99
- modelVendor = 'OpenAI';
100
- const match = modelInfo.match(/\((.*?)\)/);
101
- modelName = match ? match[1] : 'GPT';
102
- }
103
- else if (modelInfo.includes('OpenRouter')) {
104
- modelVendor = 'OpenRouter';
105
- const match = modelInfo.match(/\((.*?)\)/);
106
- modelName = match ? match[1] : 'AI';
107
- }
108
- }
109
- return { modelVendor, modelName };
110
- }
111
- //# sourceMappingURL=ModelInfoExtractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModelInfoExtractor.js","sourceRoot":"","sources":["../../../src/formatters/utils/ModelInfoExtractor.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts DELETED
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,4DAAoC;AACpC,iEAA+E;AAC/E,iDAA2D;AAE3D,mFAAmF;AAEnF,KAAK,UAAU,SAAS;IACtB,IAAI,CAAC;QACH,IAAA,oDAAiC,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAM,CAAC,IAAI,CACT,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAChG,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAqB,GAAE,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,gBAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC1B,gBAAM,CAAC,KAAK,CAAC,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,44 +0,0 @@
1
- /**
2
- * @fileoverview Plugin interface for custom review strategies.
3
- *
4
- * This module defines the interface for plugins that can be registered with the
5
- * plugin manager to provide custom review strategies.
6
- */
7
- import type { IReviewStrategy } from '../strategies/ReviewStrategy';
8
- /**
9
- * Interface for plugin registration
10
- */
11
- export interface PluginRegistration {
12
- /**
13
- * Name of the plugin
14
- */
15
- name: string;
16
- /**
17
- * Description of the plugin
18
- */
19
- description: string;
20
- /**
21
- * Strategy implementation
22
- */
23
- strategy: IReviewStrategy;
24
- }
25
- /**
26
- * Interface for plugin modules
27
- */
28
- export interface Plugin {
29
- /**
30
- * Register the plugin with the plugin manager
31
- * @param pluginManager The plugin manager instance
32
- */
33
- register: (pluginManager: any) => void;
34
- /**
35
- * Get information about the plugin
36
- * @returns Plugin information
37
- */
38
- getInfo: () => {
39
- name: string;
40
- description: string;
41
- version: string;
42
- author: string;
43
- };
44
- }
@@ -1,9 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview Plugin interface for custom review strategies.
4
- *
5
- * This module defines the interface for plugins that can be registered with the
6
- * plugin manager to provide custom review strategies.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- //# sourceMappingURL=PluginInterface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PluginInterface.js","sourceRoot":"","sources":["../../src/plugins/PluginInterface.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
@@ -1,51 +0,0 @@
1
- /**
2
- * @fileoverview Plugin manager for custom review strategies.
3
- *
4
- * This module provides a singleton manager for loading and registering plugins
5
- * that provide custom review strategies.
6
- */
7
- import type { IReviewStrategy } from '../strategies/ReviewStrategy';
8
- import type { PluginRegistration } from './PluginInterface';
9
- /**
10
- * Singleton manager for plugins
11
- */
12
- export declare class PluginManager {
13
- private static instance;
14
- private plugins;
15
- /**
16
- * Private constructor to enforce singleton pattern
17
- */
18
- private constructor();
19
- /**
20
- * Get the singleton instance
21
- * @returns The plugin manager instance
22
- */
23
- static getInstance(): PluginManager;
24
- /**
25
- * Register a plugin strategy
26
- * @param registration Plugin registration information
27
- */
28
- registerPlugin(registration: PluginRegistration): void;
29
- /**
30
- * Get a plugin strategy by name
31
- * @param name Plugin name
32
- * @returns The strategy or undefined if not found
33
- */
34
- getPlugin(name: string): IReviewStrategy | undefined;
35
- /**
36
- * Get plugin information by name
37
- * @param name Plugin name
38
- * @returns Plugin information or undefined if not found
39
- */
40
- getPluginInfo(name: string): PluginRegistration | undefined;
41
- /**
42
- * List all registered plugins
43
- * @returns Array of plugin registrations
44
- */
45
- listPlugins(): PluginRegistration[];
46
- /**
47
- * Load plugins from a directory
48
- * @param pluginsDir Directory containing plugins
49
- */
50
- loadPlugins(pluginsDir: string): Promise<void>;
51
- }
@@ -1,151 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview Plugin manager for custom review strategies.
4
- *
5
- * This module provides a singleton manager for loading and registering plugins
6
- * that provide custom review strategies.
7
- */
8
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
- desc = { enumerable: true, get: function() { return m[k]; } };
13
- }
14
- Object.defineProperty(o, k2, desc);
15
- }) : (function(o, m, k, k2) {
16
- if (k2 === undefined) k2 = k;
17
- o[k2] = m[k];
18
- }));
19
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
- Object.defineProperty(o, "default", { enumerable: true, value: v });
21
- }) : function(o, v) {
22
- o["default"] = v;
23
- });
24
- var __importStar = (this && this.__importStar) || (function () {
25
- var ownKeys = function(o) {
26
- ownKeys = Object.getOwnPropertyNames || function (o) {
27
- var ar = [];
28
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
- return ar;
30
- };
31
- return ownKeys(o);
32
- };
33
- return function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- })();
41
- var __importDefault = (this && this.__importDefault) || function (mod) {
42
- return (mod && mod.__esModule) ? mod : { "default": mod };
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.PluginManager = void 0;
46
- const promises_1 = __importDefault(require("node:fs/promises"));
47
- const node_path_1 = __importDefault(require("node:path"));
48
- const logger_1 = __importDefault(require("../utils/logger"));
49
- /**
50
- * Singleton manager for plugins
51
- */
52
- class PluginManager {
53
- static instance;
54
- plugins = new Map();
55
- /**
56
- * Private constructor to enforce singleton pattern
57
- */
58
- constructor() { }
59
- /**
60
- * Get the singleton instance
61
- * @returns The plugin manager instance
62
- */
63
- static getInstance() {
64
- if (!PluginManager.instance) {
65
- PluginManager.instance = new PluginManager();
66
- }
67
- return PluginManager.instance;
68
- }
69
- /**
70
- * Register a plugin strategy
71
- * @param registration Plugin registration information
72
- */
73
- registerPlugin(registration) {
74
- if (this.plugins.has(registration.name)) {
75
- logger_1.default.warn(`Plugin with name "${registration.name}" is already registered. Overwriting...`);
76
- }
77
- this.plugins.set(registration.name, registration);
78
- logger_1.default.info(`Registered plugin strategy: ${registration.name}`);
79
- }
80
- /**
81
- * Get a plugin strategy by name
82
- * @param name Plugin name
83
- * @returns The strategy or undefined if not found
84
- */
85
- getPlugin(name) {
86
- const registration = this.plugins.get(name);
87
- return registration?.strategy;
88
- }
89
- /**
90
- * Get plugin information by name
91
- * @param name Plugin name
92
- * @returns Plugin information or undefined if not found
93
- */
94
- getPluginInfo(name) {
95
- return this.plugins.get(name);
96
- }
97
- /**
98
- * List all registered plugins
99
- * @returns Array of plugin registrations
100
- */
101
- listPlugins() {
102
- return Array.from(this.plugins.values());
103
- }
104
- /**
105
- * Load plugins from a directory
106
- * @param pluginsDir Directory containing plugins
107
- */
108
- async loadPlugins(pluginsDir) {
109
- try {
110
- // Check if the directory exists
111
- try {
112
- await promises_1.default.access(pluginsDir);
113
- }
114
- catch (_error) {
115
- // Silently ignore missing plugins directory - this is expected in most cases
116
- logger_1.default.debug(`Plugins directory not found: ${pluginsDir}`);
117
- return;
118
- }
119
- // Read the directory
120
- const files = await promises_1.default.readdir(pluginsDir);
121
- // Load each plugin
122
- for (const file of files) {
123
- if (file.endsWith('.js')) {
124
- try {
125
- const pluginPath = node_path_1.default.join(pluginsDir, file);
126
- // Dynamic import to load the plugin
127
- const plugin = await Promise.resolve(`${pluginPath}`).then(s => __importStar(require(s)));
128
- // Check if the plugin has a register function
129
- if (plugin.default && typeof plugin.default.register === 'function') {
130
- // Register the plugin
131
- plugin.default.register(this);
132
- logger_1.default.info(`Loaded plugin from ${file}`);
133
- }
134
- else {
135
- logger_1.default.warn(`File ${file} is not a valid plugin (missing register function)`);
136
- }
137
- }
138
- catch (error) {
139
- logger_1.default.error(`Error loading plugin ${file}: ${error instanceof Error ? error.message : String(error)}`);
140
- }
141
- }
142
- }
143
- logger_1.default.info(`Loaded ${this.plugins.size} plugins from ${pluginsDir}`);
144
- }
145
- catch (error) {
146
- logger_1.default.error(`Error loading plugins: ${error instanceof Error ? error.message : String(error)}`);
147
- }
148
- }
149
- }
150
- exports.PluginManager = PluginManager;
151
- //# sourceMappingURL=PluginManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PluginManager.js","sourceRoot":"","sources":["../../src/plugins/PluginManager.ts"],"names":[],"mappings":"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"}