codereview-aia 0.2.1 → 0.2.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 (436) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +1 -7
  3. package/dist/index.js.map +1 -1
  4. package/dist/runtime/api/batcher.d.ts +20 -0
  5. package/dist/runtime/api/batcher.js +52 -0
  6. package/dist/runtime/api/batcher.js.map +1 -0
  7. package/dist/runtime/api/edgeClient.d.ts +102 -0
  8. package/dist/runtime/api/edgeClient.js +162 -0
  9. package/dist/runtime/api/edgeClient.js.map +1 -0
  10. package/dist/runtime/api/index.d.ts +2 -0
  11. package/dist/runtime/api/index.js +9 -0
  12. package/dist/runtime/api/index.js.map +1 -0
  13. package/dist/runtime/cliEntry.js +24 -76
  14. package/dist/runtime/cliEntry.js.map +1 -1
  15. package/dist/runtime/errors.d.ts +13 -3
  16. package/dist/runtime/errors.js +31 -8
  17. package/dist/runtime/errors.js.map +1 -1
  18. package/dist/runtime/llm/index.d.ts +1 -0
  19. package/dist/runtime/llm/index.js +6 -0
  20. package/dist/runtime/llm/index.js.map +1 -0
  21. package/dist/runtime/llm/openRouterClient.d.ts +13 -0
  22. package/dist/runtime/llm/openRouterClient.js +187 -0
  23. package/dist/runtime/llm/openRouterClient.js.map +1 -0
  24. package/dist/runtime/phpFileResolver.d.ts +14 -0
  25. package/dist/runtime/phpFileResolver.js +231 -0
  26. package/dist/runtime/phpFileResolver.js.map +1 -0
  27. package/dist/runtime/phpcsParser.d.ts +10 -0
  28. package/dist/runtime/phpcsParser.js +35 -0
  29. package/dist/runtime/phpcsParser.js.map +1 -0
  30. package/dist/runtime/phpcsRunner.d.ts +32 -0
  31. package/dist/runtime/phpcsRunner.js +62 -0
  32. package/dist/runtime/phpcsRunner.js.map +1 -0
  33. package/dist/runtime/reportWriter.d.ts +17 -0
  34. package/dist/runtime/reportWriter.js +80 -0
  35. package/dist/runtime/reportWriter.js.map +1 -0
  36. package/dist/runtime/reviewPipeline.d.ts +14 -36
  37. package/dist/runtime/reviewPipeline.js +146 -199
  38. package/dist/runtime/reviewPipeline.js.map +1 -1
  39. package/dist/runtime/ui/RuntimeApp.js +23 -154
  40. package/dist/runtime/ui/RuntimeApp.js.map +1 -1
  41. package/dist/runtime/ui/screens/AuthScreen.d.ts +2 -3
  42. package/dist/runtime/ui/screens/AuthScreen.js +7 -53
  43. package/dist/runtime/ui/screens/AuthScreen.js.map +1 -1
  44. package/dist/runtime/ui/screens/ModeSelection.d.ts +1 -2
  45. package/dist/runtime/ui/screens/ModeSelection.js +14 -139
  46. package/dist/runtime/ui/screens/ModeSelection.js.map +1 -1
  47. package/dist/runtime/ui/screens/ProgressScreen.d.ts +5 -13
  48. package/dist/runtime/ui/screens/ProgressScreen.js +24 -61
  49. package/dist/runtime/ui/screens/ProgressScreen.js.map +1 -1
  50. package/dist/runtime/ui/screens/ResultsScreen.js +7 -17
  51. package/dist/runtime/ui/screens/ResultsScreen.js.map +1 -1
  52. package/package.json +4 -44
  53. package/dist/analysis/FindingsExtractor.d.ts +0 -105
  54. package/dist/analysis/FindingsExtractor.js +0 -363
  55. package/dist/analysis/FindingsExtractor.js.map +0 -1
  56. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.d.ts +0 -111
  57. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js +0 -215
  58. package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js.map +0 -1
  59. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.d.ts +0 -142
  60. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js +0 -503
  61. package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js.map +0 -1
  62. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.d.ts +0 -88
  63. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js +0 -343
  64. package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js.map +0 -1
  65. package/dist/analysis/ai-detection/core/AIDetectionEngine.d.ts +0 -104
  66. package/dist/analysis/ai-detection/core/AIDetectionEngine.js +0 -369
  67. package/dist/analysis/ai-detection/core/AIDetectionEngine.js.map +0 -1
  68. package/dist/analysis/ai-detection/types/DetectionTypes.d.ts +0 -364
  69. package/dist/analysis/ai-detection/types/DetectionTypes.js +0 -32
  70. package/dist/analysis/ai-detection/types/DetectionTypes.js.map +0 -1
  71. package/dist/analysis/ai-detection/utils/SubmissionConverter.d.ts +0 -97
  72. package/dist/analysis/ai-detection/utils/SubmissionConverter.js +0 -339
  73. package/dist/analysis/ai-detection/utils/SubmissionConverter.js.map +0 -1
  74. package/dist/analysis/context/ReviewContext.d.ts +0 -184
  75. package/dist/analysis/context/ReviewContext.js +0 -294
  76. package/dist/analysis/context/ReviewContext.js.map +0 -1
  77. package/dist/analysis/context/index.d.ts +0 -6
  78. package/dist/analysis/context/index.js +0 -23
  79. package/dist/analysis/context/index.js.map +0 -1
  80. package/dist/analysis/index.d.ts +0 -7
  81. package/dist/analysis/index.js +0 -24
  82. package/dist/analysis/index.js.map +0 -1
  83. package/dist/analysis/static/wpPhpcsRunner.d.ts +0 -11
  84. package/dist/analysis/static/wpPhpcsRunner.js +0 -219
  85. package/dist/analysis/static/wpPhpcsRunner.js.map +0 -1
  86. package/dist/analysis/tokens/TokenAnalysisFormatter.d.ts +0 -27
  87. package/dist/analysis/tokens/TokenAnalysisFormatter.js +0 -143
  88. package/dist/analysis/tokens/TokenAnalysisFormatter.js.map +0 -1
  89. package/dist/analysis/tokens/TokenAnalyzer.d.ts +0 -155
  90. package/dist/analysis/tokens/TokenAnalyzer.js +0 -502
  91. package/dist/analysis/tokens/TokenAnalyzer.js.map +0 -1
  92. package/dist/analysis/tokens/index.d.ts +0 -7
  93. package/dist/analysis/tokens/index.js +0 -24
  94. package/dist/analysis/tokens/index.js.map +0 -1
  95. package/dist/clients/base/abstractClient.d.ts +0 -99
  96. package/dist/clients/base/abstractClient.js +0 -98
  97. package/dist/clients/base/abstractClient.js.map +0 -1
  98. package/dist/clients/base/httpClient.d.ts +0 -24
  99. package/dist/clients/base/httpClient.js +0 -147
  100. package/dist/clients/base/httpClient.js.map +0 -1
  101. package/dist/clients/base/index.d.ts +0 -11
  102. package/dist/clients/base/index.js +0 -28
  103. package/dist/clients/base/index.js.map +0 -1
  104. package/dist/clients/base/modelDetection.d.ts +0 -41
  105. package/dist/clients/base/modelDetection.js +0 -88
  106. package/dist/clients/base/modelDetection.js.map +0 -1
  107. package/dist/clients/base/responseProcessor.d.ts +0 -45
  108. package/dist/clients/base/responseProcessor.js +0 -495
  109. package/dist/clients/base/responseProcessor.js.map +0 -1
  110. package/dist/clients/factory/clientFactory.d.ts +0 -23
  111. package/dist/clients/factory/clientFactory.js +0 -50
  112. package/dist/clients/factory/clientFactory.js.map +0 -1
  113. package/dist/clients/factory/index.d.ts +0 -7
  114. package/dist/clients/factory/index.js +0 -24
  115. package/dist/clients/factory/index.js.map +0 -1
  116. package/dist/clients/implementations/index.d.ts +0 -7
  117. package/dist/clients/implementations/index.js +0 -24
  118. package/dist/clients/implementations/index.js.map +0 -1
  119. package/dist/clients/implementations/openRouterClient.d.ts +0 -69
  120. package/dist/clients/implementations/openRouterClient.js +0 -294
  121. package/dist/clients/implementations/openRouterClient.js.map +0 -1
  122. package/dist/clients/openRouterClient.d.ts +0 -42
  123. package/dist/clients/openRouterClient.js +0 -580
  124. package/dist/clients/openRouterClient.js.map +0 -1
  125. package/dist/clients/openRouterClientWrapper.d.ts +0 -22
  126. package/dist/clients/openRouterClientWrapper.js +0 -64
  127. package/dist/clients/openRouterClientWrapper.js.map +0 -1
  128. package/dist/clients/utils/directoryStructure.d.ts +0 -14
  129. package/dist/clients/utils/directoryStructure.js +0 -48
  130. package/dist/clients/utils/directoryStructure.js.map +0 -1
  131. package/dist/clients/utils/index.d.ts +0 -10
  132. package/dist/clients/utils/index.js +0 -31
  133. package/dist/clients/utils/index.js.map +0 -1
  134. package/dist/clients/utils/languageDetection.d.ts +0 -13
  135. package/dist/clients/utils/languageDetection.js +0 -46
  136. package/dist/clients/utils/languageDetection.js.map +0 -1
  137. package/dist/clients/utils/promptFormatter.d.ts +0 -37
  138. package/dist/clients/utils/promptFormatter.js +0 -186
  139. package/dist/clients/utils/promptFormatter.js.map +0 -1
  140. package/dist/clients/utils/promptLoader.d.ts +0 -27
  141. package/dist/clients/utils/promptLoader.js +0 -49
  142. package/dist/clients/utils/promptLoader.js.map +0 -1
  143. package/dist/clients/utils/tokenCounter.d.ts +0 -81
  144. package/dist/clients/utils/tokenCounter.js +0 -184
  145. package/dist/clients/utils/tokenCounter.js.map +0 -1
  146. package/dist/core/ApiClientSelector.d.ts +0 -8
  147. package/dist/core/ApiClientSelector.js +0 -29
  148. package/dist/core/ApiClientSelector.js.map +0 -1
  149. package/dist/core/ConfigurationService.d.ts +0 -307
  150. package/dist/core/ConfigurationService.js +0 -516
  151. package/dist/core/ConfigurationService.js.map +0 -1
  152. package/dist/core/ConsolidationService.d.ts +0 -99
  153. package/dist/core/ConsolidationService.js +0 -341
  154. package/dist/core/ConsolidationService.js.map +0 -1
  155. package/dist/core/InteractiveDisplayManager.d.ts +0 -22
  156. package/dist/core/InteractiveDisplayManager.js +0 -70
  157. package/dist/core/InteractiveDisplayManager.js.map +0 -1
  158. package/dist/core/OutputManager.d.ts +0 -26
  159. package/dist/core/OutputManager.js +0 -217
  160. package/dist/core/OutputManager.js.map +0 -1
  161. package/dist/core/ReviewGenerator.d.ts +0 -13
  162. package/dist/core/ReviewGenerator.js +0 -102
  163. package/dist/core/ReviewGenerator.js.map +0 -1
  164. package/dist/core/fileDiscovery.d.ts +0 -35
  165. package/dist/core/fileDiscovery.js +0 -202
  166. package/dist/core/fileDiscovery.js.map +0 -1
  167. package/dist/core/handlers/EstimationHandler.d.ts +0 -18
  168. package/dist/core/handlers/EstimationHandler.js +0 -110
  169. package/dist/core/handlers/EstimationHandler.js.map +0 -1
  170. package/dist/core/handlers/FileProcessingHandler.d.ts +0 -31
  171. package/dist/core/handlers/FileProcessingHandler.js +0 -164
  172. package/dist/core/handlers/FileProcessingHandler.js.map +0 -1
  173. package/dist/core/handlers/OutputHandler.d.ts +0 -27
  174. package/dist/core/handlers/OutputHandler.js +0 -127
  175. package/dist/core/handlers/OutputHandler.js.map +0 -1
  176. package/dist/core/handlers/ReviewExecutor.d.ts +0 -32
  177. package/dist/core/handlers/ReviewExecutor.js +0 -111
  178. package/dist/core/handlers/ReviewExecutor.js.map +0 -1
  179. package/dist/core/reviewOrchestrator.d.ts +0 -24
  180. package/dist/core/reviewOrchestrator.js +0 -354
  181. package/dist/core/reviewOrchestrator.js.map +0 -1
  182. package/dist/core/utils/ModelInfoUtils.d.ts +0 -16
  183. package/dist/core/utils/ModelInfoUtils.js +0 -54
  184. package/dist/core/utils/ModelInfoUtils.js.map +0 -1
  185. package/dist/formatters/outputFormatter.d.ts +0 -31
  186. package/dist/formatters/outputFormatter.js +0 -65
  187. package/dist/formatters/outputFormatter.js.map +0 -1
  188. package/dist/formatters/utils/IssueFormatters.d.ts +0 -20
  189. package/dist/formatters/utils/IssueFormatters.js +0 -67
  190. package/dist/formatters/utils/IssueFormatters.js.map +0 -1
  191. package/dist/formatters/utils/JsonFormatter.d.ts +0 -13
  192. package/dist/formatters/utils/JsonFormatter.js +0 -57
  193. package/dist/formatters/utils/JsonFormatter.js.map +0 -1
  194. package/dist/formatters/utils/MarkdownFormatters.d.ts +0 -51
  195. package/dist/formatters/utils/MarkdownFormatters.js +0 -456
  196. package/dist/formatters/utils/MarkdownFormatters.js.map +0 -1
  197. package/dist/formatters/utils/MetadataFormatter.d.ts +0 -65
  198. package/dist/formatters/utils/MetadataFormatter.js +0 -219
  199. package/dist/formatters/utils/MetadataFormatter.js.map +0 -1
  200. package/dist/formatters/utils/ModelInfoExtractor.d.ts +0 -33
  201. package/dist/formatters/utils/ModelInfoExtractor.js +0 -111
  202. package/dist/formatters/utils/ModelInfoExtractor.js.map +0 -1
  203. package/dist/plugins/PluginInterface.d.ts +0 -44
  204. package/dist/plugins/PluginInterface.js +0 -9
  205. package/dist/plugins/PluginInterface.js.map +0 -1
  206. package/dist/plugins/PluginManager.d.ts +0 -51
  207. package/dist/plugins/PluginManager.js +0 -151
  208. package/dist/plugins/PluginManager.js.map +0 -1
  209. package/dist/prompts/PromptManager.d.ts +0 -30
  210. package/dist/prompts/PromptManager.js +0 -62
  211. package/dist/prompts/PromptManager.js.map +0 -1
  212. package/dist/prompts/cache/PromptCache.d.ts +0 -32
  213. package/dist/prompts/cache/PromptCache.js +0 -48
  214. package/dist/prompts/cache/PromptCache.js.map +0 -1
  215. package/dist/runtime/auth/service.d.ts +0 -2
  216. package/dist/runtime/auth/service.js +0 -41
  217. package/dist/runtime/auth/service.js.map +0 -1
  218. package/dist/runtime/auth/session.d.ts +0 -5
  219. package/dist/runtime/auth/session.js +0 -87
  220. package/dist/runtime/auth/session.js.map +0 -1
  221. package/dist/runtime/auth/types.d.ts +0 -9
  222. package/dist/runtime/auth/types.js +0 -3
  223. package/dist/runtime/auth/types.js.map +0 -1
  224. package/dist/runtime/fileCollector.d.ts +0 -14
  225. package/dist/runtime/fileCollector.js +0 -383
  226. package/dist/runtime/fileCollector.js.map +0 -1
  227. package/dist/runtime/manifest.d.ts +0 -1
  228. package/dist/runtime/manifest.js +0 -65
  229. package/dist/runtime/manifest.js.map +0 -1
  230. package/dist/runtime/openrouterProxy.d.ts +0 -4
  231. package/dist/runtime/openrouterProxy.js +0 -43
  232. package/dist/runtime/openrouterProxy.js.map +0 -1
  233. package/dist/runtime/preprod/batchStreamer.d.ts +0 -54
  234. package/dist/runtime/preprod/batchStreamer.js +0 -159
  235. package/dist/runtime/preprod/batchStreamer.js.map +0 -1
  236. package/dist/runtime/preprod/crEdgeServiceClient.d.ts +0 -30
  237. package/dist/runtime/preprod/crEdgeServiceClient.js +0 -133
  238. package/dist/runtime/preprod/crEdgeServiceClient.js.map +0 -1
  239. package/dist/runtime/preprod/progressTracker.d.ts +0 -21
  240. package/dist/runtime/preprod/progressTracker.js +0 -80
  241. package/dist/runtime/preprod/progressTracker.js.map +0 -1
  242. package/dist/runtime/preprod/webCheck.d.ts +0 -1
  243. package/dist/runtime/preprod/webCheck.js +0 -102
  244. package/dist/runtime/preprod/webCheck.js.map +0 -1
  245. package/dist/runtime/proxyConfig.d.ts +0 -6
  246. package/dist/runtime/proxyConfig.js +0 -86
  247. package/dist/runtime/proxyConfig.js.map +0 -1
  248. package/dist/runtime/proxyEnvironment.d.ts +0 -3
  249. package/dist/runtime/proxyEnvironment.js +0 -63
  250. package/dist/runtime/proxyEnvironment.js.map +0 -1
  251. package/dist/runtime/reportMerge.d.ts +0 -30
  252. package/dist/runtime/reportMerge.js +0 -70
  253. package/dist/runtime/reportMerge.js.map +0 -1
  254. package/dist/runtime/reporting/markdownReportBuilder.d.ts +0 -17
  255. package/dist/runtime/reporting/markdownReportBuilder.js +0 -154
  256. package/dist/runtime/reporting/markdownReportBuilder.js.map +0 -1
  257. package/dist/runtime/reporting/reportDataCollector.d.ts +0 -31
  258. package/dist/runtime/reporting/reportDataCollector.js +0 -170
  259. package/dist/runtime/reporting/reportDataCollector.js.map +0 -1
  260. package/dist/runtime/reporting/summaryGenerator.d.ts +0 -10
  261. package/dist/runtime/reporting/summaryGenerator.js +0 -67
  262. package/dist/runtime/reporting/summaryGenerator.js.map +0 -1
  263. package/dist/runtime/runAiCodeReview.d.ts +0 -36
  264. package/dist/runtime/runAiCodeReview.js +0 -409
  265. package/dist/runtime/runAiCodeReview.js.map +0 -1
  266. package/dist/runtime/runtimeConfig.d.ts +0 -4
  267. package/dist/runtime/runtimeConfig.js +0 -7
  268. package/dist/runtime/runtimeConfig.js.map +0 -1
  269. package/dist/strategies/ArchitecturalReviewStrategy.d.ts +0 -29
  270. package/dist/strategies/ArchitecturalReviewStrategy.js +0 -42
  271. package/dist/strategies/ArchitecturalReviewStrategy.js.map +0 -1
  272. package/dist/strategies/CodingTestReviewStrategy.d.ts +0 -194
  273. package/dist/strategies/CodingTestReviewStrategy.js +0 -681
  274. package/dist/strategies/CodingTestReviewStrategy.js.map +0 -1
  275. package/dist/strategies/ConsolidatedReviewStrategy.d.ts +0 -25
  276. package/dist/strategies/ConsolidatedReviewStrategy.js +0 -45
  277. package/dist/strategies/ConsolidatedReviewStrategy.js.map +0 -1
  278. package/dist/strategies/ExtractPatternsReviewStrategy.d.ts +0 -30
  279. package/dist/strategies/ExtractPatternsReviewStrategy.js +0 -51
  280. package/dist/strategies/ExtractPatternsReviewStrategy.js.map +0 -1
  281. package/dist/strategies/MultiPassReviewStrategy.d.ts +0 -86
  282. package/dist/strategies/MultiPassReviewStrategy.js +0 -590
  283. package/dist/strategies/MultiPassReviewStrategy.js.map +0 -1
  284. package/dist/strategies/ReviewStrategy.d.ts +0 -45
  285. package/dist/strategies/ReviewStrategy.js +0 -24
  286. package/dist/strategies/ReviewStrategy.js.map +0 -1
  287. package/dist/strategies/StrategyFactory.d.ts +0 -19
  288. package/dist/strategies/StrategyFactory.js +0 -72
  289. package/dist/strategies/StrategyFactory.js.map +0 -1
  290. package/dist/strategies/index.d.ts +0 -13
  291. package/dist/strategies/index.js +0 -30
  292. package/dist/strategies/index.js.map +0 -1
  293. package/dist/tokenizers/baseTokenizer.d.ts +0 -25
  294. package/dist/tokenizers/baseTokenizer.js +0 -48
  295. package/dist/tokenizers/baseTokenizer.js.map +0 -1
  296. package/dist/tokenizers/gptTokenizer.d.ts +0 -7
  297. package/dist/tokenizers/gptTokenizer.js +0 -28
  298. package/dist/tokenizers/gptTokenizer.js.map +0 -1
  299. package/dist/tokenizers/index.d.ts +0 -7
  300. package/dist/tokenizers/index.js +0 -24
  301. package/dist/tokenizers/index.js.map +0 -1
  302. package/dist/types/apiResponses.d.ts +0 -39
  303. package/dist/types/apiResponses.js +0 -9
  304. package/dist/types/apiResponses.js.map +0 -1
  305. package/dist/types/cli.d.ts +0 -22
  306. package/dist/types/cli.js +0 -3
  307. package/dist/types/cli.js.map +0 -1
  308. package/dist/types/common.d.ts +0 -22
  309. package/dist/types/common.js +0 -14
  310. package/dist/types/common.js.map +0 -1
  311. package/dist/types/configuration.d.ts +0 -682
  312. package/dist/types/configuration.js +0 -65
  313. package/dist/types/configuration.js.map +0 -1
  314. package/dist/types/review.d.ts +0 -318
  315. package/dist/types/review.js +0 -8
  316. package/dist/types/review.js.map +0 -1
  317. package/dist/types/reviewSchema.d.ts +0 -543
  318. package/dist/types/reviewSchema.js +0 -121
  319. package/dist/types/reviewSchema.js.map +0 -1
  320. package/dist/types/structuredReview.d.ts +0 -119
  321. package/dist/types/structuredReview.js +0 -6
  322. package/dist/types/structuredReview.js.map +0 -1
  323. package/dist/types/tokenAnalysis.d.ts +0 -44
  324. package/dist/types/tokenAnalysis.js +0 -4
  325. package/dist/types/tokenAnalysis.js.map +0 -1
  326. package/dist/utils/FileReader.d.ts +0 -33
  327. package/dist/utils/FileReader.js +0 -88
  328. package/dist/utils/FileReader.js.map +0 -1
  329. package/dist/utils/FileWriter.d.ts +0 -26
  330. package/dist/utils/FileWriter.js +0 -76
  331. package/dist/utils/FileWriter.js.map +0 -1
  332. package/dist/utils/PathGenerator.d.ts +0 -30
  333. package/dist/utils/PathGenerator.js +0 -82
  334. package/dist/utils/PathGenerator.js.map +0 -1
  335. package/dist/utils/api/apiUtils.d.ts +0 -3
  336. package/dist/utils/api/apiUtils.js +0 -20
  337. package/dist/utils/api/apiUtils.js.map +0 -1
  338. package/dist/utils/api/index.d.ts +0 -1
  339. package/dist/utils/api/index.js +0 -18
  340. package/dist/utils/api/index.js.map +0 -1
  341. package/dist/utils/apiErrorHandler.d.ts +0 -130
  342. package/dist/utils/apiErrorHandler.js +0 -256
  343. package/dist/utils/apiErrorHandler.js.map +0 -1
  344. package/dist/utils/ciDataCollector.d.ts +0 -51
  345. package/dist/utils/ciDataCollector.js +0 -197
  346. package/dist/utils/ciDataCollector.js.map +0 -1
  347. package/dist/utils/codingTestConfigLoader.d.ts +0 -66
  348. package/dist/utils/codingTestConfigLoader.js +0 -420
  349. package/dist/utils/codingTestConfigLoader.js.map +0 -1
  350. package/dist/utils/dependencies/aiDependencyAnalyzer.d.ts +0 -30
  351. package/dist/utils/dependencies/aiDependencyAnalyzer.js +0 -343
  352. package/dist/utils/dependencies/aiDependencyAnalyzer.js.map +0 -1
  353. package/dist/utils/detection/frameworkDetector.d.ts +0 -43
  354. package/dist/utils/detection/frameworkDetector.js +0 -850
  355. package/dist/utils/detection/frameworkDetector.js.map +0 -1
  356. package/dist/utils/detection/index.d.ts +0 -9
  357. package/dist/utils/detection/index.js +0 -28
  358. package/dist/utils/detection/index.js.map +0 -1
  359. package/dist/utils/detection/projectTypeDetector.d.ts +0 -27
  360. package/dist/utils/detection/projectTypeDetector.js +0 -469
  361. package/dist/utils/detection/projectTypeDetector.js.map +0 -1
  362. package/dist/utils/diagramGenerator.d.ts +0 -49
  363. package/dist/utils/diagramGenerator.js +0 -218
  364. package/dist/utils/diagramGenerator.js.map +0 -1
  365. package/dist/utils/errorLogger.d.ts +0 -24
  366. package/dist/utils/errorLogger.js +0 -59
  367. package/dist/utils/errorLogger.js.map +0 -1
  368. package/dist/utils/estimationUtils.d.ts +0 -139
  369. package/dist/utils/estimationUtils.js +0 -329
  370. package/dist/utils/estimationUtils.js.map +0 -1
  371. package/dist/utils/fileFilters.d.ts +0 -72
  372. package/dist/utils/fileFilters.js +0 -350
  373. package/dist/utils/fileFilters.js.map +0 -1
  374. package/dist/utils/fileSystem.d.ts +0 -22
  375. package/dist/utils/fileSystem.js +0 -45
  376. package/dist/utils/fileSystem.js.map +0 -1
  377. package/dist/utils/index.d.ts +0 -22
  378. package/dist/utils/index.js +0 -52
  379. package/dist/utils/index.js.map +0 -1
  380. package/dist/utils/pathValidator.d.ts +0 -40
  381. package/dist/utils/pathValidator.js +0 -98
  382. package/dist/utils/pathValidator.js.map +0 -1
  383. package/dist/utils/priorityFilter.d.ts +0 -34
  384. package/dist/utils/priorityFilter.js +0 -54
  385. package/dist/utils/priorityFilter.js.map +0 -1
  386. package/dist/utils/projectDocs.d.ts +0 -47
  387. package/dist/utils/projectDocs.js +0 -158
  388. package/dist/utils/projectDocs.js.map +0 -1
  389. package/dist/utils/promptPaths.d.ts +0 -6
  390. package/dist/utils/promptPaths.js +0 -33
  391. package/dist/utils/promptPaths.js.map +0 -1
  392. package/dist/utils/promptTemplateManager.d.ts +0 -34
  393. package/dist/utils/promptTemplateManager.js +0 -141
  394. package/dist/utils/promptTemplateManager.js.map +0 -1
  395. package/dist/utils/review/consolidateReview.d.ts +0 -15
  396. package/dist/utils/review/consolidateReview.js +0 -481
  397. package/dist/utils/review/consolidateReview.js.map +0 -1
  398. package/dist/utils/review/fixDisplay.d.ts +0 -20
  399. package/dist/utils/review/fixDisplay.js +0 -84
  400. package/dist/utils/review/fixDisplay.js.map +0 -1
  401. package/dist/utils/review/fixImplementation.d.ts +0 -28
  402. package/dist/utils/review/fixImplementation.js +0 -60
  403. package/dist/utils/review/fixImplementation.js.map +0 -1
  404. package/dist/utils/review/index.d.ts +0 -13
  405. package/dist/utils/review/index.js +0 -50
  406. package/dist/utils/review/index.js.map +0 -1
  407. package/dist/utils/review/interactiveProcessing.d.ts +0 -25
  408. package/dist/utils/review/interactiveProcessing.js +0 -251
  409. package/dist/utils/review/interactiveProcessing.js.map +0 -1
  410. package/dist/utils/review/progressTracker.d.ts +0 -106
  411. package/dist/utils/review/progressTracker.js +0 -227
  412. package/dist/utils/review/progressTracker.js.map +0 -1
  413. package/dist/utils/review/reviewExtraction.d.ts +0 -31
  414. package/dist/utils/review/reviewExtraction.js +0 -324
  415. package/dist/utils/review/reviewExtraction.js.map +0 -1
  416. package/dist/utils/review/types.d.ts +0 -45
  417. package/dist/utils/review/types.js +0 -18
  418. package/dist/utils/review/types.js.map +0 -1
  419. package/dist/utils/reviewActionHandler.d.ts +0 -16
  420. package/dist/utils/reviewActionHandler.js +0 -34
  421. package/dist/utils/reviewActionHandler.js.map +0 -1
  422. package/dist/utils/reviewParser.d.ts +0 -34
  423. package/dist/utils/reviewParser.js +0 -218
  424. package/dist/utils/reviewParser.js.map +0 -1
  425. package/dist/utils/sanitizer.d.ts +0 -82
  426. package/dist/utils/sanitizer.js +0 -239
  427. package/dist/utils/sanitizer.js.map +0 -1
  428. package/dist/utils/smartFileSelector.d.ts +0 -50
  429. package/dist/utils/smartFileSelector.js +0 -261
  430. package/dist/utils/smartFileSelector.js.map +0 -1
  431. package/dist/utils/templateLoader.d.ts +0 -44
  432. package/dist/utils/templateLoader.js +0 -431
  433. package/dist/utils/templateLoader.js.map +0 -1
  434. package/dist/utils/treeGenerator.d.ts +0 -12
  435. package/dist/utils/treeGenerator.js +0 -133
  436. package/dist/utils/treeGenerator.js.map +0 -1
@@ -1,159 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BatchStreamer = void 0;
7
- const logger_1 = __importDefault(require("../../utils/logger"));
8
- const crEdgeServiceClient_1 = require("./crEdgeServiceClient");
9
- const DEFAULT_BATCH_SIZE = 5;
10
- const MAX_RETRIES = 3;
11
- const BASE_BACKOFF_MS = 750;
12
- /**
13
- * Handles buffering CR findings and streaming them to cr-edge-service.
14
- *
15
- * Manual smoke test:
16
- * 1. cd cr/cr-aia && pnpm install && pnpm build
17
- * 2. PREPROD_TARGET_URL="https://example.com" CR_EDGE_BASE_URL="https://cr.ai.enki.si" node dist/index.js
18
- * 3. Select the Preprod mode and review a repo with >5 files so multiple batches stream.
19
- * 4. Tail the CLI logs for "Submitted CR batch" during the run and query `preprod_cr_batches`
20
- * for the reported run_id in Supabase to verify rows appear before the CLI completes.
21
- */
22
- class BatchStreamer {
23
- options;
24
- batchSize;
25
- totalBatchEstimate;
26
- buffer = [];
27
- batchIndex = 0;
28
- runId;
29
- hasMarkedFinal = false;
30
- constructor(options) {
31
- this.options = options;
32
- this.batchSize = options.batchSize ?? DEFAULT_BATCH_SIZE;
33
- this.totalBatchEstimate = Math.max(1, Math.ceil(options.totalFiles / this.batchSize));
34
- this.runId = options.initialRunId;
35
- }
36
- getRunId() {
37
- return this.runId;
38
- }
39
- async primeRun() {
40
- return this.ensureRunId();
41
- }
42
- async addFiles(files) {
43
- if (!files.length) {
44
- return;
45
- }
46
- for (const file of files) {
47
- if (!file.path)
48
- continue;
49
- this.buffer.push(file);
50
- }
51
- this.emitStatus({ phase: 'buffering', bufferedFiles: this.buffer.length });
52
- while (this.buffer.length >= this.batchSize) {
53
- const chunk = this.buffer.splice(0, this.batchSize);
54
- await this.sendChunk(chunk, false);
55
- }
56
- }
57
- async finish() {
58
- if (this.hasMarkedFinal) {
59
- return;
60
- }
61
- if (this.buffer.length > 0) {
62
- const chunk = this.buffer.splice(0, this.buffer.length);
63
- await this.sendChunk(chunk, true);
64
- return;
65
- }
66
- await this.sendChunk([], true);
67
- }
68
- async ensureRunId() {
69
- if (this.runId) {
70
- return this.runId;
71
- }
72
- this.emitStatus({ phase: 'creating-run' });
73
- this.runId = await this.withRetries('create preprod run', async () => {
74
- return (0, crEdgeServiceClient_1.createPreprodRun)({
75
- repo: this.options.repo,
76
- branch: this.options.branch,
77
- commit_sha: this.options.commitSha,
78
- target_url: this.options.targetUrl,
79
- recipient_email: this.options.recipientEmail,
80
- });
81
- });
82
- logger_1.default.info('Created preprod run', { run_id: this.runId });
83
- return this.runId;
84
- }
85
- async sendChunk(files, markFinal) {
86
- if (files.length === 0 && this.batchIndex === 0 && !markFinal) {
87
- return;
88
- }
89
- const runId = await this.ensureRunId();
90
- const batchOrdinal = this.batchIndex + 1;
91
- const isFinal = markFinal;
92
- this.emitStatus({
93
- phase: 'sending',
94
- batchOrdinal,
95
- batchesCompleted: this.batchIndex,
96
- totalBatches: this.totalBatchEstimate,
97
- });
98
- await this.withRetries('submit CR batch', async () => {
99
- await (0, crEdgeServiceClient_1.submitCrBatch)({
100
- run_id: runId,
101
- batch_index: this.batchIndex,
102
- files,
103
- is_final: isFinal,
104
- });
105
- logger_1.default.info('Submitted CR batch', {
106
- run_id: runId,
107
- batch_index: this.batchIndex,
108
- file_count: files.length,
109
- is_final: isFinal,
110
- });
111
- });
112
- this.batchIndex += 1;
113
- if (isFinal) {
114
- this.hasMarkedFinal = true;
115
- }
116
- this.emitStatus({
117
- phase: 'success',
118
- batchOrdinal,
119
- batchesCompleted: this.batchIndex,
120
- totalBatches: this.totalBatchEstimate,
121
- bufferedFiles: this.buffer.length,
122
- });
123
- }
124
- emitStatus(update) {
125
- this.options.onStatus?.({
126
- ...update,
127
- totalBatches: update.totalBatches ?? this.totalBatchEstimate,
128
- });
129
- }
130
- async withRetries(label, fn) {
131
- let attempt = 0;
132
- let lastError;
133
- while (attempt < MAX_RETRIES) {
134
- attempt += 1;
135
- try {
136
- return await fn();
137
- }
138
- catch (error) {
139
- lastError = error;
140
- const message = error instanceof Error ? error.message : String(error);
141
- logger_1.default.warn(`Failed to ${label} (attempt ${attempt}/${MAX_RETRIES}): ${message}`, error);
142
- this.emitStatus({
143
- phase: 'error',
144
- batchOrdinal: this.batchIndex + 1,
145
- totalBatches: this.totalBatchEstimate,
146
- error: message,
147
- attempt,
148
- });
149
- if (attempt >= MAX_RETRIES) {
150
- throw new crEdgeServiceClient_1.CrEdgeServiceError(`Unable to ${label}: ${message}`, { cause: error });
151
- }
152
- await new Promise((resolve) => setTimeout(resolve, BASE_BACKOFF_MS * Math.pow(2, attempt - 1)));
153
- }
154
- }
155
- throw lastError instanceof Error ? lastError : new Error(`Failed to ${label}`);
156
- }
157
- }
158
- exports.BatchStreamer = BatchStreamer;
159
- //# sourceMappingURL=batchStreamer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"batchStreamer.js","sourceRoot":"","sources":["../../../src/runtime/preprod/batchStreamer.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- export declare class CrEdgeServiceError extends Error {
2
- status?: number;
3
- detail?: string;
4
- constructor(message: string, options?: {
5
- status?: number;
6
- detail?: string;
7
- cause?: unknown;
8
- });
9
- }
10
- export declare function createPreprodRun(params: {
11
- repo?: string;
12
- branch?: string;
13
- commit_sha?: string;
14
- target_url?: string;
15
- recipient_email?: string;
16
- }): Promise<string>;
17
- export declare function submitCrBatch(params: {
18
- run_id: string;
19
- batch_index: number;
20
- files: Array<{
21
- path: string;
22
- findings: unknown[];
23
- }>;
24
- is_final: boolean;
25
- }): Promise<string>;
26
- export declare function updatePreprodRunMetadata(params: {
27
- run_id: string;
28
- status?: string;
29
- metadata?: Record<string, unknown>;
30
- }): Promise<void>;
@@ -1,133 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CrEdgeServiceError = void 0;
4
- exports.createPreprodRun = createPreprodRun;
5
- exports.submitCrBatch = submitCrBatch;
6
- exports.updatePreprodRunMetadata = updatePreprodRunMetadata;
7
- const DEFAULT_CR_EDGE_BASE_URL = 'https://cr.ai.enki.si';
8
- function resolveCrEdgeBaseUrl() {
9
- const configured = process.env.CR_EDGE_BASE_URL || process.env.CR_AIA_CR_EDGE_BASE_URL;
10
- const base = (configured || DEFAULT_CR_EDGE_BASE_URL).trim();
11
- return base.replace(/\/$/, '');
12
- }
13
- class CrEdgeServiceError extends Error {
14
- status;
15
- detail;
16
- constructor(message, options) {
17
- super(message, options?.cause ? { cause: options.cause } : undefined);
18
- this.name = 'CrEdgeServiceError';
19
- this.status = options?.status;
20
- this.detail = options?.detail;
21
- }
22
- }
23
- exports.CrEdgeServiceError = CrEdgeServiceError;
24
- async function extractErrorDetail(response) {
25
- const contentType = response.headers.get('content-type') || '';
26
- if (contentType.includes('application/json')) {
27
- try {
28
- const payload = (await response.json());
29
- return payload?.error?.message || payload?.message || payload?.detail || JSON.stringify(payload);
30
- }
31
- catch {
32
- return undefined;
33
- }
34
- }
35
- try {
36
- const textBody = await response.text();
37
- return textBody.length > 200 ? `${textBody.slice(0, 200)}…` : textBody;
38
- }
39
- catch {
40
- return undefined;
41
- }
42
- }
43
- async function createPreprodRun(params) {
44
- const baseUrl = resolveCrEdgeBaseUrl();
45
- const endpoint = `${baseUrl}/api/preprod/runs`;
46
- let response;
47
- try {
48
- response = await fetch(endpoint, {
49
- method: 'POST',
50
- headers: {
51
- 'Content-Type': 'application/json',
52
- },
53
- body: JSON.stringify(params),
54
- });
55
- }
56
- catch (networkError) {
57
- const message = networkError instanceof Error ? networkError.message : 'Failed to create preprod run due to network error';
58
- throw new CrEdgeServiceError(`Failed to create preprod run: ${message}`, { cause: networkError });
59
- }
60
- if (!response.ok) {
61
- const detail = await extractErrorDetail(response);
62
- const suffix = detail ? ` ${detail}` : '';
63
- throw new CrEdgeServiceError(`Failed to create preprod run (${response.status}).${suffix}`, {
64
- status: response.status,
65
- detail,
66
- });
67
- }
68
- const data = (await response.json());
69
- return data.run_id;
70
- }
71
- async function submitCrBatch(params) {
72
- const baseUrl = resolveCrEdgeBaseUrl();
73
- const endpoint = `${baseUrl}/api/preprod/runs/${params.run_id}/cr-batches`;
74
- let response;
75
- try {
76
- response = await fetch(endpoint, {
77
- method: 'POST',
78
- headers: {
79
- 'Content-Type': 'application/json',
80
- },
81
- body: JSON.stringify({
82
- run_id: params.run_id,
83
- batch_index: params.batch_index,
84
- files: params.files,
85
- is_final: params.is_final,
86
- }),
87
- });
88
- }
89
- catch (networkError) {
90
- const message = networkError instanceof Error ? networkError.message : 'Failed to submit batch due to network error';
91
- throw new CrEdgeServiceError(`Failed to submit CR batch: ${message}`, { cause: networkError });
92
- }
93
- if (!response.ok) {
94
- const detail = await extractErrorDetail(response);
95
- const suffix = detail ? ` ${detail}` : '';
96
- throw new CrEdgeServiceError(`Failed to submit CR batch (${response.status}).${suffix}`, {
97
- status: response.status,
98
- detail,
99
- });
100
- }
101
- const data = (await response.json());
102
- return data.batch_id;
103
- }
104
- async function updatePreprodRunMetadata(params) {
105
- const baseUrl = resolveCrEdgeBaseUrl();
106
- const endpoint = `${baseUrl}/api/preprod/runs/${params.run_id}`;
107
- let response;
108
- try {
109
- response = await fetch(endpoint, {
110
- method: 'PATCH',
111
- headers: {
112
- 'Content-Type': 'application/json',
113
- },
114
- body: JSON.stringify({
115
- status: params.status,
116
- metadata: params.metadata,
117
- }),
118
- });
119
- }
120
- catch (networkError) {
121
- const message = networkError instanceof Error ? networkError.message : 'Failed to update run due to network error';
122
- throw new CrEdgeServiceError(`Failed to update preprod run: ${message}`, { cause: networkError });
123
- }
124
- if (!response.ok) {
125
- const detail = await extractErrorDetail(response);
126
- const suffix = detail ? ` ${detail}` : '';
127
- throw new CrEdgeServiceError(`Failed to update preprod run (${response.status}).${suffix}`, {
128
- status: response.status,
129
- detail,
130
- });
131
- }
132
- }
133
- //# sourceMappingURL=crEdgeServiceClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crEdgeServiceClient.js","sourceRoot":"","sources":["../../../src/runtime/preprod/crEdgeServiceClient.ts"],"names":[],"mappings":";;;AAiDA,4CAoCC;AAED,sCAuCC;AAED,4DAiCC;AAjKD,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAEzD,SAAS,oBAAoB;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IACvF,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,wBAAwB,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAYD,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAU;IAChB,MAAM,CAAU;IAEhB,YAAY,OAAe,EAAE,OAA+D;QAC1F,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;CACF;AAVD,gDAUC;AAED,KAAK,UAAU,kBAAkB,CAAC,QAAkB;IAClD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwE,CAAC;YAC/G,OAAO,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACnG,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,MAMtC;IACC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,GAAG,OAAO,mBAAmB,CAAC;IAE/C,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAC/B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GACX,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,mDAAmD,CAAC;QAC7G,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,EAAE;YAC1F,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;IAC1D,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,MAKnC;IACC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,GAAG,OAAO,qBAAqB,MAAM,CAAC,MAAM,aAAa,CAAC;IAE3E,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAC/B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,6CAA6C,CAAC;QACrH,MAAM,IAAI,kBAAkB,CAAC,8BAA8B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,kBAAkB,CAAC,8BAA8B,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,EAAE;YACvF,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwB,CAAC;IAC5D,OAAO,IAAI,CAAC,QAAQ,CAAC;AACvB,CAAC;AAEM,KAAK,UAAU,wBAAwB,CAAC,MAI9C;IACC,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,GAAG,OAAO,qBAAqB,MAAM,CAAC,MAAM,EAAE,CAAC;IAEhE,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAC/B,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,2CAA2C,CAAC;QACnH,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,EAAE;YAC1F,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,21 +0,0 @@
1
- interface ProgressSnapshot {
2
- workspace: string;
3
- runId?: string;
4
- nextGroup: number;
5
- totalGroups: number;
6
- updatedAt: string;
7
- }
8
- export declare class PreprodProgressTracker {
9
- private readonly workspaceRoot;
10
- private readonly outputDir;
11
- private readonly filePath;
12
- constructor(workspaceRoot: string, outputDir: string);
13
- load(): ProgressSnapshot | null;
14
- markGroupComplete(params: {
15
- runId?: string;
16
- nextGroup: number;
17
- totalGroups: number;
18
- }): Promise<void>;
19
- clear(): void;
20
- }
21
- export {};
@@ -1,80 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PreprodProgressTracker = void 0;
7
- const node_fs_1 = require("node:fs");
8
- const node_path_1 = __importDefault(require("node:path"));
9
- const logger_1 = __importDefault(require("../../utils/logger"));
10
- const crEdgeServiceClient_1 = require("./crEdgeServiceClient");
11
- class PreprodProgressTracker {
12
- workspaceRoot;
13
- outputDir;
14
- filePath;
15
- constructor(workspaceRoot, outputDir) {
16
- this.workspaceRoot = workspaceRoot;
17
- this.outputDir = outputDir;
18
- this.filePath = node_path_1.default.join(this.outputDir, 'preprod-progress.json');
19
- }
20
- load() {
21
- if (!(0, node_fs_1.existsSync)(this.filePath)) {
22
- return null;
23
- }
24
- try {
25
- const raw = (0, node_fs_1.readFileSync)(this.filePath, 'utf-8');
26
- const parsed = JSON.parse(raw);
27
- return parsed.workspace === this.workspaceRoot ? parsed : null;
28
- }
29
- catch (error) {
30
- logger_1.default.warn(`Failed to read preprod progress snapshot: ${error instanceof Error ? error.message : String(error)}`);
31
- return null;
32
- }
33
- }
34
- async markGroupComplete(params) {
35
- const snapshot = {
36
- workspace: this.workspaceRoot,
37
- runId: params.runId,
38
- nextGroup: params.nextGroup,
39
- totalGroups: params.totalGroups,
40
- updatedAt: new Date().toISOString(),
41
- };
42
- try {
43
- (0, node_fs_1.mkdirSync)(node_path_1.default.dirname(this.filePath), { recursive: true });
44
- (0, node_fs_1.writeFileSync)(this.filePath, JSON.stringify(snapshot, null, 2), 'utf-8');
45
- }
46
- catch (error) {
47
- logger_1.default.warn(`Failed to persist preprod progress snapshot: ${error instanceof Error ? error.message : String(error)}`);
48
- }
49
- if (params.runId) {
50
- try {
51
- await (0, crEdgeServiceClient_1.updatePreprodRunMetadata)({
52
- run_id: params.runId,
53
- metadata: {
54
- progress: {
55
- next_group: params.nextGroup,
56
- total_groups: params.totalGroups,
57
- updated_at: snapshot.updatedAt,
58
- },
59
- },
60
- });
61
- }
62
- catch (error) {
63
- logger_1.default.debug(`Failed to sync preprod progress to Supabase: ${error instanceof Error ? error.message : String(error)}`);
64
- }
65
- }
66
- }
67
- clear() {
68
- if (!(0, node_fs_1.existsSync)(this.filePath)) {
69
- return;
70
- }
71
- try {
72
- (0, node_fs_1.rmSync)(this.filePath);
73
- }
74
- catch (error) {
75
- logger_1.default.debug(`Failed to clear preprod progress snapshot: ${error instanceof Error ? error.message : String(error)}`);
76
- }
77
- }
78
- }
79
- exports.PreprodProgressTracker = PreprodProgressTracker;
80
- //# sourceMappingURL=progressTracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progressTracker.js","sourceRoot":"","sources":["../../../src/runtime/preprod/progressTracker.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function triggerManualWebCheck(targetUrl: string, runId?: string): Promise<void>;
@@ -1,102 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.triggerManualWebCheck = triggerManualWebCheck;
4
- const DEFAULT_AIA_BASE_URL = 'https://ai.enki.si';
5
- function resolveAiaBaseUrl() {
6
- const configured = process.env.AIA_BASE_URL || process.env.CR_AIA_AIA_BASE_URL;
7
- const base = (configured || DEFAULT_AIA_BASE_URL).trim();
8
- return base.replace(/\/$/, '');
9
- }
10
- function summarizeErrorBody(body) {
11
- if (!body.trim()) {
12
- return 'No response body';
13
- }
14
- if (/<html/i.test(body)) {
15
- const sanitized = body
16
- .replace(/<script[\s\S]*?<\/script>/gi, ' ')
17
- .replace(/<style[\s\S]*?<\/style>/gi, ' ')
18
- .replace(/<[^>]+>/g, ' ')
19
- .replace(/\s+/g, ' ')
20
- .trim();
21
- return sanitized ? `${sanitized.slice(0, 200)}${sanitized.length > 200 ? '…' : ''}` : 'HTML error response';
22
- }
23
- const normalized = body.replace(/\s+/g, ' ').trim();
24
- if (!normalized) {
25
- return 'Empty error body';
26
- }
27
- return normalized.length > 200 ? `${normalized.slice(0, 200)}…` : normalized;
28
- }
29
- class WebCheckRequestError extends Error {
30
- status;
31
- detail;
32
- constructor(message, options) {
33
- super(message, options?.cause ? { cause: options.cause } : undefined);
34
- this.name = 'WebCheckRequestError';
35
- this.status = options?.status;
36
- this.detail = options?.detail;
37
- }
38
- }
39
- async function extractErrorDetail(response) {
40
- const contentType = response.headers.get('content-type') || '';
41
- if (contentType.includes('application/json')) {
42
- try {
43
- const payload = (await response.json());
44
- return payload?.error?.message || payload?.message || JSON.stringify(payload);
45
- }
46
- catch {
47
- return undefined;
48
- }
49
- }
50
- try {
51
- const textBody = await response.text();
52
- return summarizeErrorBody(textBody);
53
- }
54
- catch {
55
- return undefined;
56
- }
57
- }
58
- async function sendWebCheckRequest(endpoint, payload) {
59
- let response;
60
- try {
61
- response = await fetch(endpoint, {
62
- method: 'POST',
63
- headers: {
64
- 'Content-Type': 'application/json',
65
- },
66
- body: JSON.stringify(payload),
67
- });
68
- }
69
- catch (networkError) {
70
- const message = networkError instanceof Error ? networkError.message : 'Website check request failed due to an unknown error';
71
- throw new WebCheckRequestError(`Website check request failed: ${message}`, { cause: networkError });
72
- }
73
- if (!response.ok) {
74
- const detail = await extractErrorDetail(response);
75
- const suffix = detail ? ` ${detail}` : '';
76
- throw new WebCheckRequestError(`Website check failed (${response.status}).${suffix}`, {
77
- status: response.status,
78
- detail,
79
- });
80
- }
81
- }
82
- async function triggerManualWebCheck(targetUrl, runId) {
83
- const baseUrl = resolveAiaBaseUrl();
84
- const manualEndpoint = `${baseUrl}/api/manual/check`;
85
- const legacyEndpoint = `${baseUrl}/api/check-website`;
86
- const missingEndpointStatuses = new Set([404, 405, 501]);
87
- const payload = { url: targetUrl };
88
- if (runId) {
89
- payload.run_id = runId;
90
- }
91
- try {
92
- await sendWebCheckRequest(manualEndpoint, payload);
93
- return;
94
- }
95
- catch (error) {
96
- if (!(error instanceof WebCheckRequestError) || !error.status || !missingEndpointStatuses.has(error.status)) {
97
- throw error;
98
- }
99
- }
100
- await sendWebCheckRequest(legacyEndpoint, { url: targetUrl, options: {}, run_id: runId });
101
- }
102
- //# sourceMappingURL=webCheck.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"webCheck.js","sourceRoot":"","sources":["../../../src/runtime/preprod/webCheck.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export interface ProxySettings {
2
- baseUrl: string;
3
- httpReferer?: string;
4
- xTitle?: string;
5
- }
6
- export declare function loadProxySettings(repoRoot: string): ProxySettings;
@@ -1,86 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadProxySettings = loadProxySettings;
7
- const node_fs_1 = require("node:fs");
8
- const node_path_1 = require("node:path");
9
- const js_yaml_1 = __importDefault(require("js-yaml"));
10
- const CR_AIA_CONFIG_CANDIDATES = ['.cr-aia.yml'];
11
- const DEFAULT_PROXY_BASE_URL = 'https://cr.ai.enki.si';
12
- function loadProxySettings(repoRoot) {
13
- const config = loadCrAiaConfig(repoRoot);
14
- const scopedConfig = config && typeof config === 'object' ? getScopedConfig(config) : undefined;
15
- const envBase = sanitize(process.env.PROXY_BASE_URL);
16
- const fileBase = getFirstDefined(config, scopedConfig, ['proxy_base_url', 'proxyBaseUrl']);
17
- const httpReferer = sanitize(process.env.PROXY_HTTP_REFERER) ||
18
- getFirstDefined(config, scopedConfig, ['http_referer', 'httpReferer']);
19
- const xTitle = sanitize(process.env.PROXY_X_TITLE) ||
20
- getFirstDefined(config, scopedConfig, ['x_title', 'xTitle']);
21
- const baseUrl = envBase || fileBase || DEFAULT_PROXY_BASE_URL;
22
- const settings = {
23
- baseUrl,
24
- };
25
- if (httpReferer)
26
- settings.httpReferer = httpReferer;
27
- if (xTitle)
28
- settings.xTitle = xTitle;
29
- return settings;
30
- }
31
- function sanitize(value) {
32
- return value && value.trim() ? value.trim() : undefined;
33
- }
34
- function loadCrAiaConfig(repoRoot) {
35
- for (const candidate of CR_AIA_CONFIG_CANDIDATES) {
36
- const filePath = (0, node_path_1.join)(repoRoot, candidate);
37
- if (!(0, node_fs_1.existsSync)(filePath))
38
- continue;
39
- try {
40
- const raw = (0, node_fs_1.readFileSync)(filePath, 'utf-8');
41
- if (candidate.endsWith('.json')) {
42
- return JSON.parse(raw);
43
- }
44
- return js_yaml_1.default.load(raw);
45
- }
46
- catch {
47
- return undefined;
48
- }
49
- }
50
- return undefined;
51
- }
52
- function getScopedConfig(config) {
53
- if (!config)
54
- return undefined;
55
- if (typeof config.cr_aia === 'object')
56
- return config.cr_aia;
57
- if (typeof config.crAia === 'object')
58
- return config.crAia;
59
- if (typeof config['cr-aia'] === 'object')
60
- return config['cr-aia'];
61
- return undefined;
62
- }
63
- function getFirstDefined(rootConfig, scopedConfig, keys) {
64
- for (const key of keys) {
65
- const scopedValue = scopedConfig ? getNested(scopedConfig, key) : undefined;
66
- if (scopedValue !== undefined)
67
- return scopedValue;
68
- const rootValue = rootConfig ? getNested(rootConfig, key) : undefined;
69
- if (rootValue !== undefined)
70
- return rootValue;
71
- }
72
- return undefined;
73
- }
74
- function getNested(obj, pathKey) {
75
- const segments = pathKey.split('.');
76
- let current = obj;
77
- for (const segment of segments) {
78
- if (!current || typeof current !== 'object')
79
- return undefined;
80
- if (!(segment in current))
81
- return undefined;
82
- current = current[segment];
83
- }
84
- return current;
85
- }
86
- //# sourceMappingURL=proxyConfig.js.map