@humanbased/crosscheck 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (381) hide show
  1. package/AGENT.md +207 -0
  2. package/ISSUE.md +234 -0
  3. package/LICENSE +21 -0
  4. package/README.md +234 -0
  5. package/README.zh.md +169 -0
  6. package/assets/logo.png +0 -0
  7. package/assets/screenshot-watch-timing.png +0 -0
  8. package/assets/screenshot-watch-timing.svg +1 -0
  9. package/assets/screenshot-watch.png +0 -0
  10. package/crosscheck.config.example.yml +214 -0
  11. package/dist/__tests__/annotation.test.d.ts +2 -0
  12. package/dist/__tests__/annotation.test.d.ts.map +1 -0
  13. package/dist/__tests__/annotation.test.js +134 -0
  14. package/dist/__tests__/annotation.test.js.map +1 -0
  15. package/dist/__tests__/backtrace.test.d.ts +2 -0
  16. package/dist/__tests__/backtrace.test.d.ts.map +1 -0
  17. package/dist/__tests__/backtrace.test.js +280 -0
  18. package/dist/__tests__/backtrace.test.js.map +1 -0
  19. package/dist/__tests__/board.test.d.ts +2 -0
  20. package/dist/__tests__/board.test.d.ts.map +1 -0
  21. package/dist/__tests__/board.test.js +149 -0
  22. package/dist/__tests__/board.test.js.map +1 -0
  23. package/dist/__tests__/codex.test.d.ts +2 -0
  24. package/dist/__tests__/codex.test.d.ts.map +1 -0
  25. package/dist/__tests__/codex.test.js +92 -0
  26. package/dist/__tests__/codex.test.js.map +1 -0
  27. package/dist/__tests__/comment-bodies.test.d.ts +2 -0
  28. package/dist/__tests__/comment-bodies.test.d.ts.map +1 -0
  29. package/dist/__tests__/comment-bodies.test.js +75 -0
  30. package/dist/__tests__/comment-bodies.test.js.map +1 -0
  31. package/dist/__tests__/conflict-resolve.test.d.ts +2 -0
  32. package/dist/__tests__/conflict-resolve.test.d.ts.map +1 -0
  33. package/dist/__tests__/conflict-resolve.test.js +123 -0
  34. package/dist/__tests__/conflict-resolve.test.js.map +1 -0
  35. package/dist/__tests__/crosscheck-commit.test.d.ts +2 -0
  36. package/dist/__tests__/crosscheck-commit.test.d.ts.map +1 -0
  37. package/dist/__tests__/crosscheck-commit.test.js +13 -0
  38. package/dist/__tests__/crosscheck-commit.test.js.map +1 -0
  39. package/dist/__tests__/detector.test.d.ts +2 -0
  40. package/dist/__tests__/detector.test.d.ts.map +1 -0
  41. package/dist/__tests__/detector.test.js +112 -0
  42. package/dist/__tests__/detector.test.js.map +1 -0
  43. package/dist/__tests__/diagnose.test.d.ts +2 -0
  44. package/dist/__tests__/diagnose.test.d.ts.map +1 -0
  45. package/dist/__tests__/diagnose.test.js +164 -0
  46. package/dist/__tests__/diagnose.test.js.map +1 -0
  47. package/dist/__tests__/diff-hash.test.d.ts +2 -0
  48. package/dist/__tests__/diff-hash.test.d.ts.map +1 -0
  49. package/dist/__tests__/diff-hash.test.js +126 -0
  50. package/dist/__tests__/diff-hash.test.js.map +1 -0
  51. package/dist/__tests__/durations.test.d.ts +2 -0
  52. package/dist/__tests__/durations.test.d.ts.map +1 -0
  53. package/dist/__tests__/durations.test.js +26 -0
  54. package/dist/__tests__/durations.test.js.map +1 -0
  55. package/dist/__tests__/event-fields.test.d.ts +2 -0
  56. package/dist/__tests__/event-fields.test.d.ts.map +1 -0
  57. package/dist/__tests__/event-fields.test.js +50 -0
  58. package/dist/__tests__/event-fields.test.js.map +1 -0
  59. package/dist/__tests__/filter.test.d.ts +2 -0
  60. package/dist/__tests__/filter.test.d.ts.map +1 -0
  61. package/dist/__tests__/filter.test.js +21 -0
  62. package/dist/__tests__/filter.test.js.map +1 -0
  63. package/dist/__tests__/fix.test.d.ts +2 -0
  64. package/dist/__tests__/fix.test.d.ts.map +1 -0
  65. package/dist/__tests__/fix.test.js +124 -0
  66. package/dist/__tests__/fix.test.js.map +1 -0
  67. package/dist/__tests__/github-client.test.d.ts +2 -0
  68. package/dist/__tests__/github-client.test.d.ts.map +1 -0
  69. package/dist/__tests__/github-client.test.js +22 -0
  70. package/dist/__tests__/github-client.test.js.map +1 -0
  71. package/dist/__tests__/github-scan-client.test.d.ts +2 -0
  72. package/dist/__tests__/github-scan-client.test.d.ts.map +1 -0
  73. package/dist/__tests__/github-scan-client.test.js +100 -0
  74. package/dist/__tests__/github-scan-client.test.js.map +1 -0
  75. package/dist/__tests__/is-fresh-review-comment.test.d.ts +2 -0
  76. package/dist/__tests__/is-fresh-review-comment.test.d.ts.map +1 -0
  77. package/dist/__tests__/is-fresh-review-comment.test.js +86 -0
  78. package/dist/__tests__/is-fresh-review-comment.test.js.map +1 -0
  79. package/dist/__tests__/issue.test.d.ts +2 -0
  80. package/dist/__tests__/issue.test.d.ts.map +1 -0
  81. package/dist/__tests__/issue.test.js +259 -0
  82. package/dist/__tests__/issue.test.js.map +1 -0
  83. package/dist/__tests__/kickass.test.d.ts +2 -0
  84. package/dist/__tests__/kickass.test.d.ts.map +1 -0
  85. package/dist/__tests__/kickass.test.js +268 -0
  86. package/dist/__tests__/kickass.test.js.map +1 -0
  87. package/dist/__tests__/loader.test.d.ts +2 -0
  88. package/dist/__tests__/loader.test.d.ts.map +1 -0
  89. package/dist/__tests__/loader.test.js +180 -0
  90. package/dist/__tests__/loader.test.js.map +1 -0
  91. package/dist/__tests__/onboard-preservation.test.d.ts +2 -0
  92. package/dist/__tests__/onboard-preservation.test.d.ts.map +1 -0
  93. package/dist/__tests__/onboard-preservation.test.js +506 -0
  94. package/dist/__tests__/onboard-preservation.test.js.map +1 -0
  95. package/dist/__tests__/optimize.test.d.ts +2 -0
  96. package/dist/__tests__/optimize.test.d.ts.map +1 -0
  97. package/dist/__tests__/optimize.test.js +101 -0
  98. package/dist/__tests__/optimize.test.js.map +1 -0
  99. package/dist/__tests__/post-review-comment.test.d.ts +2 -0
  100. package/dist/__tests__/post-review-comment.test.d.ts.map +1 -0
  101. package/dist/__tests__/post-review-comment.test.js +44 -0
  102. package/dist/__tests__/post-review-comment.test.js.map +1 -0
  103. package/dist/__tests__/pr-lock.test.d.ts +2 -0
  104. package/dist/__tests__/pr-lock.test.d.ts.map +1 -0
  105. package/dist/__tests__/pr-lock.test.js +115 -0
  106. package/dist/__tests__/pr-lock.test.js.map +1 -0
  107. package/dist/__tests__/pr-picker.test.d.ts +2 -0
  108. package/dist/__tests__/pr-picker.test.d.ts.map +1 -0
  109. package/dist/__tests__/pr-picker.test.js +57 -0
  110. package/dist/__tests__/pr-picker.test.js.map +1 -0
  111. package/dist/__tests__/pr-status-scan.test.d.ts +2 -0
  112. package/dist/__tests__/pr-status-scan.test.d.ts.map +1 -0
  113. package/dist/__tests__/pr-status-scan.test.js +92 -0
  114. package/dist/__tests__/pr-status-scan.test.js.map +1 -0
  115. package/dist/__tests__/pr-status.test.d.ts +2 -0
  116. package/dist/__tests__/pr-status.test.d.ts.map +1 -0
  117. package/dist/__tests__/pr-status.test.js +346 -0
  118. package/dist/__tests__/pr-status.test.js.map +1 -0
  119. package/dist/__tests__/repo-picker.test.d.ts +2 -0
  120. package/dist/__tests__/repo-picker.test.d.ts.map +1 -0
  121. package/dist/__tests__/repo-picker.test.js +115 -0
  122. package/dist/__tests__/repo-picker.test.js.map +1 -0
  123. package/dist/__tests__/review-comment-body.test.d.ts +2 -0
  124. package/dist/__tests__/review-comment-body.test.d.ts.map +1 -0
  125. package/dist/__tests__/review-comment-body.test.js +54 -0
  126. package/dist/__tests__/review-comment-body.test.js.map +1 -0
  127. package/dist/__tests__/review-models.test.d.ts +2 -0
  128. package/dist/__tests__/review-models.test.d.ts.map +1 -0
  129. package/dist/__tests__/review-models.test.js +39 -0
  130. package/dist/__tests__/review-models.test.js.map +1 -0
  131. package/dist/__tests__/review-status.test.d.ts +2 -0
  132. package/dist/__tests__/review-status.test.d.ts.map +1 -0
  133. package/dist/__tests__/review-status.test.js +95 -0
  134. package/dist/__tests__/review-status.test.js.map +1 -0
  135. package/dist/__tests__/runner.test.d.ts +2 -0
  136. package/dist/__tests__/runner.test.d.ts.map +1 -0
  137. package/dist/__tests__/runner.test.js +204 -0
  138. package/dist/__tests__/runner.test.js.map +1 -0
  139. package/dist/__tests__/scan-cache.test.d.ts +2 -0
  140. package/dist/__tests__/scan-cache.test.d.ts.map +1 -0
  141. package/dist/__tests__/scan-cache.test.js +59 -0
  142. package/dist/__tests__/scan-cache.test.js.map +1 -0
  143. package/dist/__tests__/scan-client.test.d.ts +2 -0
  144. package/dist/__tests__/scan-client.test.d.ts.map +1 -0
  145. package/dist/__tests__/scan-client.test.js +30 -0
  146. package/dist/__tests__/scan-client.test.js.map +1 -0
  147. package/dist/__tests__/scan.test.d.ts +2 -0
  148. package/dist/__tests__/scan.test.d.ts.map +1 -0
  149. package/dist/__tests__/scan.test.js +115 -0
  150. package/dist/__tests__/scan.test.js.map +1 -0
  151. package/dist/__tests__/scopes.test.d.ts +2 -0
  152. package/dist/__tests__/scopes.test.d.ts.map +1 -0
  153. package/dist/__tests__/scopes.test.js +101 -0
  154. package/dist/__tests__/scopes.test.js.map +1 -0
  155. package/dist/__tests__/sha-cache.test.d.ts +2 -0
  156. package/dist/__tests__/sha-cache.test.d.ts.map +1 -0
  157. package/dist/__tests__/sha-cache.test.js +40 -0
  158. package/dist/__tests__/sha-cache.test.js.map +1 -0
  159. package/dist/__tests__/smart-switch.test.d.ts +2 -0
  160. package/dist/__tests__/smart-switch.test.d.ts.map +1 -0
  161. package/dist/__tests__/smart-switch.test.js +145 -0
  162. package/dist/__tests__/smart-switch.test.js.map +1 -0
  163. package/dist/ck.d.ts +3 -0
  164. package/dist/ck.d.ts.map +1 -0
  165. package/dist/ck.js +8 -0
  166. package/dist/ck.js.map +1 -0
  167. package/dist/cli.d.ts +3 -0
  168. package/dist/cli.d.ts.map +1 -0
  169. package/dist/cli.js +132 -0
  170. package/dist/cli.js.map +1 -0
  171. package/dist/commands/diagnose.d.ts +54 -0
  172. package/dist/commands/diagnose.d.ts.map +1 -0
  173. package/dist/commands/diagnose.js +294 -0
  174. package/dist/commands/diagnose.js.map +1 -0
  175. package/dist/commands/impact.d.ts +38 -0
  176. package/dist/commands/impact.d.ts.map +1 -0
  177. package/dist/commands/impact.js +210 -0
  178. package/dist/commands/impact.js.map +1 -0
  179. package/dist/commands/init.d.ts +12 -0
  180. package/dist/commands/init.d.ts.map +1 -0
  181. package/dist/commands/init.js +183 -0
  182. package/dist/commands/init.js.map +1 -0
  183. package/dist/commands/issue.d.ts +25 -0
  184. package/dist/commands/issue.d.ts.map +1 -0
  185. package/dist/commands/issue.js +445 -0
  186. package/dist/commands/issue.js.map +1 -0
  187. package/dist/commands/kickass.d.ts +59 -0
  188. package/dist/commands/kickass.d.ts.map +1 -0
  189. package/dist/commands/kickass.js +288 -0
  190. package/dist/commands/kickass.js.map +1 -0
  191. package/dist/commands/onboard.d.ts +70 -0
  192. package/dist/commands/onboard.d.ts.map +1 -0
  193. package/dist/commands/onboard.js +883 -0
  194. package/dist/commands/onboard.js.map +1 -0
  195. package/dist/commands/optimize.d.ts +16 -0
  196. package/dist/commands/optimize.d.ts.map +1 -0
  197. package/dist/commands/optimize.js +244 -0
  198. package/dist/commands/optimize.js.map +1 -0
  199. package/dist/commands/review.d.ts +2 -0
  200. package/dist/commands/review.d.ts.map +1 -0
  201. package/dist/commands/review.js +118 -0
  202. package/dist/commands/review.js.map +1 -0
  203. package/dist/commands/run.d.ts +13 -0
  204. package/dist/commands/run.d.ts.map +1 -0
  205. package/dist/commands/run.js +243 -0
  206. package/dist/commands/run.js.map +1 -0
  207. package/dist/commands/scan.d.ts +94 -0
  208. package/dist/commands/scan.d.ts.map +1 -0
  209. package/dist/commands/scan.js +276 -0
  210. package/dist/commands/scan.js.map +1 -0
  211. package/dist/commands/serve.d.ts +9 -0
  212. package/dist/commands/serve.d.ts.map +1 -0
  213. package/dist/commands/serve.js +402 -0
  214. package/dist/commands/serve.js.map +1 -0
  215. package/dist/commands/status.d.ts +2 -0
  216. package/dist/commands/status.d.ts.map +1 -0
  217. package/dist/commands/status.js +89 -0
  218. package/dist/commands/status.js.map +1 -0
  219. package/dist/commands/watch.d.ts +9 -0
  220. package/dist/commands/watch.d.ts.map +1 -0
  221. package/dist/commands/watch.js +902 -0
  222. package/dist/commands/watch.js.map +1 -0
  223. package/dist/config/loader.d.ts +47 -0
  224. package/dist/config/loader.d.ts.map +1 -0
  225. package/dist/config/loader.js +334 -0
  226. package/dist/config/loader.js.map +1 -0
  227. package/dist/config/schema.d.ts +814 -0
  228. package/dist/config/schema.d.ts.map +1 -0
  229. package/dist/config/schema.js +152 -0
  230. package/dist/config/schema.js.map +1 -0
  231. package/dist/github/client.d.ts +139 -0
  232. package/dist/github/client.d.ts.map +1 -0
  233. package/dist/github/client.js +711 -0
  234. package/dist/github/client.js.map +1 -0
  235. package/dist/github/detector.d.ts +12 -0
  236. package/dist/github/detector.d.ts.map +1 -0
  237. package/dist/github/detector.js +120 -0
  238. package/dist/github/detector.js.map +1 -0
  239. package/dist/github/merge.d.ts +9 -0
  240. package/dist/github/merge.d.ts.map +1 -0
  241. package/dist/github/merge.js +33 -0
  242. package/dist/github/merge.js.map +1 -0
  243. package/dist/github/review-status.d.ts +6 -0
  244. package/dist/github/review-status.d.ts.map +1 -0
  245. package/dist/github/review-status.js +51 -0
  246. package/dist/github/review-status.js.map +1 -0
  247. package/dist/github/webhook.d.ts +41 -0
  248. package/dist/github/webhook.d.ts.map +1 -0
  249. package/dist/github/webhook.js +50 -0
  250. package/dist/github/webhook.js.map +1 -0
  251. package/dist/lib/annotation.d.ts +23 -0
  252. package/dist/lib/annotation.d.ts.map +1 -0
  253. package/dist/lib/annotation.js +103 -0
  254. package/dist/lib/annotation.js.map +1 -0
  255. package/dist/lib/backtrace.d.ts +40 -0
  256. package/dist/lib/backtrace.d.ts.map +1 -0
  257. package/dist/lib/backtrace.js +169 -0
  258. package/dist/lib/backtrace.js.map +1 -0
  259. package/dist/lib/board.d.ts +74 -0
  260. package/dist/lib/board.d.ts.map +1 -0
  261. package/dist/lib/board.js +640 -0
  262. package/dist/lib/board.js.map +1 -0
  263. package/dist/lib/clone.d.ts +12 -0
  264. package/dist/lib/clone.d.ts.map +1 -0
  265. package/dist/lib/clone.js +30 -0
  266. package/dist/lib/clone.js.map +1 -0
  267. package/dist/lib/comment-bodies.d.ts +17 -0
  268. package/dist/lib/comment-bodies.d.ts.map +1 -0
  269. package/dist/lib/comment-bodies.js +51 -0
  270. package/dist/lib/comment-bodies.js.map +1 -0
  271. package/dist/lib/crosscheck-commit.d.ts +2 -0
  272. package/dist/lib/crosscheck-commit.d.ts.map +1 -0
  273. package/dist/lib/crosscheck-commit.js +4 -0
  274. package/dist/lib/crosscheck-commit.js.map +1 -0
  275. package/dist/lib/diff-hash.d.ts +16 -0
  276. package/dist/lib/diff-hash.d.ts.map +1 -0
  277. package/dist/lib/diff-hash.js +71 -0
  278. package/dist/lib/diff-hash.js.map +1 -0
  279. package/dist/lib/durations.d.ts +5 -0
  280. package/dist/lib/durations.d.ts.map +1 -0
  281. package/dist/lib/durations.js +39 -0
  282. package/dist/lib/durations.js.map +1 -0
  283. package/dist/lib/event-fields.d.ts +6 -0
  284. package/dist/lib/event-fields.d.ts.map +1 -0
  285. package/dist/lib/event-fields.js +20 -0
  286. package/dist/lib/event-fields.js.map +1 -0
  287. package/dist/lib/filter.d.ts +2 -0
  288. package/dist/lib/filter.d.ts.map +1 -0
  289. package/dist/lib/filter.js +4 -0
  290. package/dist/lib/filter.js.map +1 -0
  291. package/dist/lib/fortune.d.ts +2 -0
  292. package/dist/lib/fortune.d.ts.map +1 -0
  293. package/dist/lib/fortune.js +26 -0
  294. package/dist/lib/fortune.js.map +1 -0
  295. package/dist/lib/languages.d.ts +3 -0
  296. package/dist/lib/languages.d.ts.map +1 -0
  297. package/dist/lib/languages.js +26 -0
  298. package/dist/lib/languages.js.map +1 -0
  299. package/dist/lib/log-analysis.d.ts +17 -0
  300. package/dist/lib/log-analysis.d.ts.map +1 -0
  301. package/dist/lib/log-analysis.js +72 -0
  302. package/dist/lib/log-analysis.js.map +1 -0
  303. package/dist/lib/logger.d.ts +14 -0
  304. package/dist/lib/logger.d.ts.map +1 -0
  305. package/dist/lib/logger.js +84 -0
  306. package/dist/lib/logger.js.map +1 -0
  307. package/dist/lib/port.d.ts +2 -0
  308. package/dist/lib/port.d.ts.map +1 -0
  309. package/dist/lib/port.js +21 -0
  310. package/dist/lib/port.js.map +1 -0
  311. package/dist/lib/pr-lock.d.ts +4 -0
  312. package/dist/lib/pr-lock.d.ts.map +1 -0
  313. package/dist/lib/pr-lock.js +91 -0
  314. package/dist/lib/pr-lock.js.map +1 -0
  315. package/dist/lib/pr-picker.d.ts +10 -0
  316. package/dist/lib/pr-picker.d.ts.map +1 -0
  317. package/dist/lib/pr-picker.js +80 -0
  318. package/dist/lib/pr-picker.js.map +1 -0
  319. package/dist/lib/pr-status.d.ts +206 -0
  320. package/dist/lib/pr-status.d.ts.map +1 -0
  321. package/dist/lib/pr-status.js +613 -0
  322. package/dist/lib/pr-status.js.map +1 -0
  323. package/dist/lib/repo-picker.d.ts +23 -0
  324. package/dist/lib/repo-picker.d.ts.map +1 -0
  325. package/dist/lib/repo-picker.js +411 -0
  326. package/dist/lib/repo-picker.js.map +1 -0
  327. package/dist/lib/review-models.d.ts +7 -0
  328. package/dist/lib/review-models.d.ts.map +1 -0
  329. package/dist/lib/review-models.js +32 -0
  330. package/dist/lib/review-models.js.map +1 -0
  331. package/dist/lib/runner.d.ts +65 -0
  332. package/dist/lib/runner.d.ts.map +1 -0
  333. package/dist/lib/runner.js +710 -0
  334. package/dist/lib/runner.js.map +1 -0
  335. package/dist/lib/scan-cache.d.ts +31 -0
  336. package/dist/lib/scan-cache.d.ts.map +1 -0
  337. package/dist/lib/scan-cache.js +112 -0
  338. package/dist/lib/scan-cache.js.map +1 -0
  339. package/dist/lib/scopes.d.ts +16 -0
  340. package/dist/lib/scopes.d.ts.map +1 -0
  341. package/dist/lib/scopes.js +37 -0
  342. package/dist/lib/scopes.js.map +1 -0
  343. package/dist/lib/sha-cache.d.ts +7 -0
  344. package/dist/lib/sha-cache.d.ts.map +1 -0
  345. package/dist/lib/sha-cache.js +44 -0
  346. package/dist/lib/sha-cache.js.map +1 -0
  347. package/dist/lib/smart-switch.d.ts +44 -0
  348. package/dist/lib/smart-switch.d.ts.map +1 -0
  349. package/dist/lib/smart-switch.js +145 -0
  350. package/dist/lib/smart-switch.js.map +1 -0
  351. package/dist/lib/verdict.d.ts +9 -0
  352. package/dist/lib/verdict.d.ts.map +1 -0
  353. package/dist/lib/verdict.js +52 -0
  354. package/dist/lib/verdict.js.map +1 -0
  355. package/dist/lib/workflow.d.ts +85 -0
  356. package/dist/lib/workflow.d.ts.map +1 -0
  357. package/dist/lib/workflow.js +116 -0
  358. package/dist/lib/workflow.js.map +1 -0
  359. package/dist/reviewers/address.d.ts +5 -0
  360. package/dist/reviewers/address.d.ts.map +1 -0
  361. package/dist/reviewers/address.js +87 -0
  362. package/dist/reviewers/address.js.map +1 -0
  363. package/dist/reviewers/claude.d.ts +12 -0
  364. package/dist/reviewers/claude.d.ts.map +1 -0
  365. package/dist/reviewers/claude.js +78 -0
  366. package/dist/reviewers/claude.js.map +1 -0
  367. package/dist/reviewers/codex.d.ts +9 -0
  368. package/dist/reviewers/codex.d.ts.map +1 -0
  369. package/dist/reviewers/codex.js +121 -0
  370. package/dist/reviewers/codex.js.map +1 -0
  371. package/dist/reviewers/conflict-resolve.d.ts +15 -0
  372. package/dist/reviewers/conflict-resolve.d.ts.map +1 -0
  373. package/dist/reviewers/conflict-resolve.js +219 -0
  374. package/dist/reviewers/conflict-resolve.js.map +1 -0
  375. package/dist/reviewers/fix.d.ts +7 -0
  376. package/dist/reviewers/fix.d.ts.map +1 -0
  377. package/dist/reviewers/fix.js +197 -0
  378. package/dist/reviewers/fix.js.map +1 -0
  379. package/get-started.md +1271 -0
  380. package/get-started.zh.md +1208 -0
  381. package/package.json +75 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../src/commands/issue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { ScanPRStatus as PRStatus, ScanResult } from '../lib/pr-status.js';
2
+ export interface KickassOpts {
3
+ force?: boolean;
4
+ staleAfter?: string;
5
+ dryRun?: boolean;
6
+ }
7
+ export type KickassAction = 'review' | 'fix' | 'recheck' | 'merge' | 'skip';
8
+ export type KickassSkipReason = 'fork_pr' | 'stale_signature';
9
+ export type KickassFailureReason = 'error';
10
+ export interface PreflightItem {
11
+ pr: PRStatus;
12
+ action: KickassAction;
13
+ transition: string;
14
+ details: string[];
15
+ explanation?: string;
16
+ skipReason?: KickassSkipReason;
17
+ }
18
+ export interface KickassExecutionResult {
19
+ pr: PRStatus;
20
+ status: 'executed' | 'skipped' | 'failed';
21
+ reason?: KickassSkipReason | KickassFailureReason;
22
+ }
23
+ export interface ExecuteKickassDeps {
24
+ getCurrentHeadSha: (item: PreflightItem) => Promise<string>;
25
+ dispatchRun: (item: PreflightItem) => Promise<void>;
26
+ dispatchMerge: (item: PreflightItem) => Promise<void>;
27
+ }
28
+ export interface KickassDeps {
29
+ loadScanResult: (options: {
30
+ force?: boolean;
31
+ staleAfterMs: number;
32
+ }) => Promise<ScanResult>;
33
+ pickPRs: (prs: PRStatus[]) => Promise<PRStatus[]>;
34
+ confirm: (message: string) => Promise<boolean>;
35
+ getCurrentHeadSha: (item: PreflightItem) => Promise<string>;
36
+ dispatchRun: (item: PreflightItem) => Promise<void>;
37
+ dispatchMerge: (item: PreflightItem) => Promise<void>;
38
+ }
39
+ export declare function runKickass(opts?: KickassOpts): Promise<void>;
40
+ export declare function runKickassWithDeps(opts: KickassOpts | undefined, deps: KickassDeps): Promise<void>;
41
+ export declare function buildPreflightPlan(prs: PRStatus[]): PreflightItem[];
42
+ export declare function executeKickassPlan(plan: PreflightItem[], deps: ExecuteKickassDeps): Promise<KickassExecutionResult[]>;
43
+ export declare function printPreflight(plan: PreflightItem[]): void;
44
+ export declare function summarizeExecutionResults(results: KickassExecutionResult[]): string;
45
+ export declare function printExecutionSummary(results: KickassExecutionResult[]): void;
46
+ export declare function buildKickassRunArgs(itemOrPR: PreflightItem | PRStatus): string[];
47
+ export interface CliInvocation {
48
+ command: string;
49
+ args: string[];
50
+ }
51
+ interface ResolveCliInvocationOptions {
52
+ argvEntry?: string;
53
+ execPath?: string;
54
+ exists?: (path: string) => boolean;
55
+ urlToPath?: (url: URL) => string;
56
+ }
57
+ export declare function resolveCliInvocation(options?: ResolveCliInvocationOptions): CliInvocation;
58
+ export {};
59
+ //# sourceMappingURL=kickass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kickass.d.ts","sourceRoot":"","sources":["../../src/commands/kickass.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,288 @@
1
+ import chalk from 'chalk';
2
+ import { existsSync } from 'fs';
3
+ import { stdin as input, stdout as output } from 'process';
4
+ import { createInterface } from 'readline/promises';
5
+ import { fileURLToPath } from 'url';
6
+ import { execa } from 'execa';
7
+ import { createGithubClient } from '../github/client.js';
8
+ import { mergePullRequest } from '../github/merge.js';
9
+ import { getGithubToken } from '../config/loader.js';
10
+ import { parseDuration } from '../lib/durations.js';
11
+ import { logError } from '../lib/logger.js';
12
+ import { pickPRs } from '../lib/pr-picker.js';
13
+ import { handleScanError, loadScanResult } from './scan.js';
14
+ export async function runKickass(opts = {}) {
15
+ await runKickassWithDeps(opts, defaultKickassDeps());
16
+ }
17
+ export async function runKickassWithDeps(opts = {}, deps) {
18
+ let staleAfterMs;
19
+ try {
20
+ staleAfterMs = parseDuration(opts.staleAfter ?? '24h');
21
+ }
22
+ catch (err) {
23
+ console.error(chalk.red(`✗ ${err instanceof Error ? err.message : String(err)}`));
24
+ process.exit(1);
25
+ }
26
+ try {
27
+ const scan = await deps.loadScanResult({ force: opts.force, staleAfterMs });
28
+ const queue = scan.prs.filter(pr => pr.freshness === 'stale' && pr.nextAction !== null);
29
+ if (queue.length === 0) {
30
+ console.log(chalk.dim('No stale PRs need attention.'));
31
+ return;
32
+ }
33
+ const selected = await deps.pickPRs(queue);
34
+ if (selected.length === 0) {
35
+ console.log(chalk.dim('No PRs selected.'));
36
+ return;
37
+ }
38
+ const plan = buildPreflightPlan(selected);
39
+ printPreflight(plan);
40
+ if (opts.dryRun) {
41
+ console.log(chalk.dim('\ndry-run: no mutations executed'));
42
+ return;
43
+ }
44
+ const shouldRun = await deps.confirm('Proceed with these mutations?');
45
+ if (!shouldRun) {
46
+ console.log(chalk.dim('Canceled.'));
47
+ return;
48
+ }
49
+ const results = await executeKickassPlan(plan, deps);
50
+ printExecutionSummary(results);
51
+ if (results.some(result => result.status === 'failed')) {
52
+ process.exitCode = 2;
53
+ }
54
+ }
55
+ catch (err) {
56
+ handleScanError('kickass', err);
57
+ }
58
+ }
59
+ export function buildPreflightPlan(prs) {
60
+ return prs.map((pr) => {
61
+ const fork = isForkPR(pr);
62
+ if (pr.nextAction === 'fix' && fork) {
63
+ return {
64
+ pr,
65
+ action: 'skip',
66
+ transition: `${pr.reviewState} -> Skip`,
67
+ details: ['reason fork_pr'],
68
+ skipReason: 'fork_pr',
69
+ };
70
+ }
71
+ if (pr.nextAction === 'fix' && !hasUsableCurrentHeadReview(pr)) {
72
+ return {
73
+ pr,
74
+ action: 'review',
75
+ transition: 'PR -> CR',
76
+ details: [`reviewer ${reviewerLabel(pr)}`],
77
+ explanation: 'no_usable_review_comment',
78
+ };
79
+ }
80
+ if (pr.nextAction === 'review') {
81
+ return {
82
+ pr,
83
+ action: 'review',
84
+ transition: 'PR -> CR',
85
+ details: [`reviewer ${reviewerLabel(pr)}`],
86
+ };
87
+ }
88
+ if (pr.nextAction === 'fix') {
89
+ return {
90
+ pr,
91
+ action: 'fix',
92
+ transition: `${pr.reviewState} -> Fix`,
93
+ details: [`fixer ${fixerLabel(pr)}`, 'delivery commit'],
94
+ };
95
+ }
96
+ if (pr.nextAction === 'recheck') {
97
+ return {
98
+ pr,
99
+ action: 'recheck',
100
+ transition: `${pr.reviewState} -> Recheck`,
101
+ details: ['links latest review'],
102
+ };
103
+ }
104
+ return {
105
+ pr,
106
+ action: 'merge',
107
+ transition: 'APPROVE -> Merge',
108
+ details: ['method squash', `checks ${checksLabel(pr)}`],
109
+ };
110
+ });
111
+ }
112
+ export async function executeKickassPlan(plan, deps) {
113
+ const results = [];
114
+ for (const item of plan) {
115
+ if (item.action === 'skip') {
116
+ console.log(chalk.yellow(`↷ skip ${formatPRSignature(item.pr)} ${item.skipReason ?? 'skipped'}`));
117
+ results.push({ pr: item.pr, status: 'skipped', reason: item.skipReason });
118
+ continue;
119
+ }
120
+ try {
121
+ const currentHeadSha = await deps.getCurrentHeadSha(item);
122
+ if (currentHeadSha !== item.pr.headSha) {
123
+ console.log(chalk.yellow(`↷ skip ${formatPRSignature(item.pr)} stale_signature`));
124
+ results.push({ pr: item.pr, status: 'skipped', reason: 'stale_signature' });
125
+ continue;
126
+ }
127
+ console.log(chalk.cyan(`\n→ ${item.transition} ${formatPRSignature(item.pr)}`));
128
+ if (item.action === 'merge') {
129
+ await deps.dispatchMerge(item);
130
+ }
131
+ else {
132
+ await deps.dispatchRun(item);
133
+ }
134
+ results.push({ pr: item.pr, status: 'executed' });
135
+ }
136
+ catch (err) {
137
+ logError({ event: 'kickass_pr_failed', owner: item.pr.owner, repo: item.pr.repo, pr: item.pr.number }, err);
138
+ console.error(chalk.red(`✗ failed ${formatPRSignature(item.pr)}`));
139
+ results.push({ pr: item.pr, status: 'failed', reason: 'error' });
140
+ }
141
+ }
142
+ return results;
143
+ }
144
+ export function printPreflight(plan) {
145
+ console.log('\nPreflight');
146
+ const grouped = groupPreflight(plan);
147
+ for (const [transition, items] of grouped) {
148
+ console.log(`\n${transition}`);
149
+ for (const item of items) {
150
+ const explanation = item.explanation ? ` ${chalk.dim(item.explanation)}` : '';
151
+ console.log(` ${formatPRSignature(item.pr)} ${item.details.join(' ')}${explanation}`);
152
+ }
153
+ }
154
+ }
155
+ export function summarizeExecutionResults(results) {
156
+ const executed = results.filter(result => result.status === 'executed').length;
157
+ const skipped = results.filter(result => result.status === 'skipped').length;
158
+ const failed = results.filter(result => result.status === 'failed').length;
159
+ return `Execution summary: ${executed} executed, ${skipped} skipped, ${failed} failed`;
160
+ }
161
+ export function printExecutionSummary(results) {
162
+ console.log(chalk.dim(`\n${summarizeExecutionResults(results)}`));
163
+ }
164
+ export function buildKickassRunArgs(itemOrPR) {
165
+ const item = 'action' in itemOrPR ? itemOrPR : buildPreflightPlan([itemOrPR])[0];
166
+ if (item.action === 'merge' || item.action === 'skip')
167
+ return [];
168
+ return [
169
+ 'run',
170
+ item.pr.url,
171
+ '--steps',
172
+ stepForAction(item.action),
173
+ '--expected-head-sha',
174
+ item.pr.headSha,
175
+ ];
176
+ }
177
+ export function resolveCliInvocation(options = {}) {
178
+ const exists = options.exists ?? existsSync;
179
+ const urlToPath = options.urlToPath ?? fileURLToPath;
180
+ const execPath = options.execPath ?? process.execPath;
181
+ const argvEntry = options.argvEntry ?? process.argv[1];
182
+ const localTsx = urlToPath(new URL('../../node_modules/.bin/tsx', import.meta.url));
183
+ if (argvEntry && exists(argvEntry)) {
184
+ return invocationForEntry(argvEntry, execPath, localTsx, exists);
185
+ }
186
+ const builtCli = urlToPath(new URL('../cli.js', import.meta.url));
187
+ if (exists(builtCli))
188
+ return { command: execPath, args: [builtCli] };
189
+ const sourceCli = urlToPath(new URL('../cli.ts', import.meta.url));
190
+ if (exists(sourceCli))
191
+ return invocationForEntry(sourceCli, execPath, localTsx, exists);
192
+ throw new Error('Cannot resolve crosscheck CLI entrypoint. Run npm run build before kickass, or run from a source checkout with dev dependencies installed.');
193
+ }
194
+ function defaultKickassDeps() {
195
+ let cli;
196
+ const getCli = () => {
197
+ cli ??= resolveCliInvocation();
198
+ return cli;
199
+ };
200
+ return {
201
+ loadScanResult,
202
+ pickPRs,
203
+ confirm: confirmMutation,
204
+ getCurrentHeadSha: async (item) => {
205
+ const token = getGithubToken();
206
+ const octokit = createGithubClient(token);
207
+ const { data } = await octokit.rest.pulls.get({
208
+ owner: item.pr.owner,
209
+ repo: item.pr.repo,
210
+ pull_number: item.pr.number,
211
+ });
212
+ return data.head.sha;
213
+ },
214
+ dispatchRun: async (item) => {
215
+ const invocation = getCli();
216
+ await execa(invocation.command, [...invocation.args, ...buildKickassRunArgs(item)], { stdio: 'inherit' });
217
+ },
218
+ dispatchMerge: async (item) => {
219
+ const token = getGithubToken();
220
+ const octokit = createGithubClient(token);
221
+ await mergePullRequest(octokit, item.pr.owner, item.pr.repo, item.pr.number, {
222
+ method: 'squash',
223
+ expectedHeadSha: item.pr.headSha,
224
+ });
225
+ },
226
+ };
227
+ }
228
+ async function confirmMutation(message) {
229
+ const rl = createInterface({ input, output });
230
+ try {
231
+ const answer = await rl.question(`${message} [y/N] `);
232
+ return answer.trim().toLowerCase() === 'y' || answer.trim().toLowerCase() === 'yes';
233
+ }
234
+ finally {
235
+ rl.close();
236
+ }
237
+ }
238
+ function groupPreflight(plan) {
239
+ const groups = new Map();
240
+ for (const item of plan) {
241
+ const current = groups.get(item.transition) ?? [];
242
+ current.push(item);
243
+ groups.set(item.transition, current);
244
+ }
245
+ return [...groups.entries()];
246
+ }
247
+ function hasUsableCurrentHeadReview(pr) {
248
+ const annotation = pr.latestAnnotation;
249
+ if (!annotation || annotation.type !== 'review' || !annotation.sha)
250
+ return false;
251
+ return pr.headSha.startsWith(annotation.sha) || annotation.sha.startsWith(pr.headSha);
252
+ }
253
+ function isForkPR(pr) {
254
+ return pr.headRepo !== undefined
255
+ && pr.headRepo !== null
256
+ && pr.headRepo.toLowerCase() !== `${pr.owner}/${pr.repo}`.toLowerCase();
257
+ }
258
+ function reviewerLabel(pr) {
259
+ return pr.latestAnnotation?.reviewer ?? 'auto';
260
+ }
261
+ function fixerLabel(pr) {
262
+ return pr.latestAnnotation?.origin ?? 'origin';
263
+ }
264
+ function checksLabel(pr) {
265
+ if (!pr.merge)
266
+ return 'unknown';
267
+ if (pr.merge.mergeStateStatus === 'clean' || pr.merge.mergeStateStatus === 'has_hooks')
268
+ return 'green';
269
+ return pr.merge.mergeStateStatus ?? 'unknown';
270
+ }
271
+ function stepForAction(action) {
272
+ if (action === 'review')
273
+ return 'review';
274
+ if (action === 'fix')
275
+ return 'fix';
276
+ return 'recheck';
277
+ }
278
+ function formatPRSignature(pr) {
279
+ return `${pr.owner}/${pr.repo}#${pr.number}@${pr.headSha.slice(0, 7)}`;
280
+ }
281
+ function invocationForEntry(entry, execPath, localTsx, exists) {
282
+ if (!entry.endsWith('.ts'))
283
+ return { command: execPath, args: [entry] };
284
+ if (exists(localTsx))
285
+ return { command: localTsx, args: [entry] };
286
+ throw new Error('Cannot run kickass actions from a TypeScript entrypoint without the local tsx dev dependency. Run npm run build first.');
287
+ }
288
+ //# sourceMappingURL=kickass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kickass.js","sourceRoot":"","sources":["../../src/commands/kickass.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ export interface OnboardOpts {
2
+ config?: string;
3
+ yes?: boolean;
4
+ personal?: boolean;
5
+ team?: boolean;
6
+ reconfigure?: boolean;
7
+ }
8
+ type WorkflowPreset = 'review-only' | 'review-fix' | 'review-fix-recheck';
9
+ type VendorModeConfig = {
10
+ mode: 'cross-vendor' | 'single-vendor';
11
+ claudeEnabled: boolean;
12
+ codexEnabled: boolean;
13
+ };
14
+ declare const QUALITY_TIERS: {
15
+ readonly fast: {
16
+ readonly description: "quick scan, top issues only (~10s, lowest cost)";
17
+ readonly claude: {
18
+ readonly model: "haiku";
19
+ readonly effort: "low";
20
+ };
21
+ readonly codex: {
22
+ readonly model: "o4-mini";
23
+ readonly effort: "low";
24
+ };
25
+ };
26
+ readonly balanced: {
27
+ readonly description: "full review, all issues with explanations (~30s)";
28
+ readonly claude: {
29
+ readonly model: "sonnet";
30
+ readonly effort: "medium";
31
+ };
32
+ readonly codex: {
33
+ readonly model: "o4-mini";
34
+ readonly effort: "medium";
35
+ };
36
+ };
37
+ readonly thorough: {
38
+ readonly description: "deep multi-pass, security + architecture (~60s+, higher cost)";
39
+ readonly claude: {
40
+ readonly model: "opus";
41
+ readonly effort: "max";
42
+ };
43
+ readonly codex: {
44
+ readonly model: "o3";
45
+ readonly effort: "high";
46
+ };
47
+ };
48
+ };
49
+ type QualityTier = keyof typeof QUALITY_TIERS;
50
+ export declare function detectCurrentPreset(workflowDir?: string): WorkflowPreset;
51
+ export declare function detectConflictResolveEnabled(workflowDir?: string): boolean;
52
+ export interface OnboardDecisions {
53
+ deployment: 'personal' | 'team';
54
+ login: string;
55
+ selectedRepos: string[];
56
+ selectedOrgs: string[];
57
+ vendorConfig: VendorModeConfig;
58
+ authorVendor: 'claude' | 'codex' | 'both';
59
+ qualityTier: QualityTier;
60
+ pipelinePreset: WorkflowPreset;
61
+ maxRounds?: number;
62
+ conflictResolve: boolean;
63
+ tunnelBackend: 'localhost.run' | 'smee';
64
+ smeeChannel: string;
65
+ cloneProtocol: 'ssh' | 'https';
66
+ }
67
+ export declare function applyOnboardConfig(configPath: string, decisions: OnboardDecisions, workflowDir?: string): void;
68
+ export declare function runOnboard(opts?: OnboardOpts): Promise<void>;
69
+ export {};
70
+ //# sourceMappingURL=onboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../src/commands/onboard.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAQD,KAAK,cAAc,GAAG,aAAa,GAAG,YAAY,GAAG,oBAAoB,CAAA;AAEzE,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,cAAc,GAAG,eAAe,CAAA;IACtC,aAAa,EAAE,OAAO,CAAA;IACtB,YAAY,EAAE,OAAO,CAAA;CACtB,CAAA;AAID,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBT,CAAA;AAEV,KAAK,WAAW,GAAG,MAAM,OAAO,aAAa,CAAA;AAkM7C,wBAAgB,mBAAmB,CAAC,WAAW,GAAE,MAAuC,GAAG,cAAc,CAexG;AAED,wBAAgB,4BAA4B,CAAC,WAAW,GAAE,MAAuC,GAAG,OAAO,CAO1G;AA4ID,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,UAAU,GAAG,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,YAAY,EAAE,gBAAgB,CAAA;IAC9B,YAAY,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAA;IACzC,WAAW,EAAE,WAAW,CAAA;IACxB,cAAc,EAAE,cAAc,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,eAAe,GAAG,MAAM,CAAA;IACvC,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,KAAK,GAAG,OAAO,CAAA;CAC/B;AAwDD,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,gBAAgB,EAC3B,WAAW,SAAiC,GAC3C,IAAI,CAwKN;AAED,wBAAsB,UAAU,CAAC,IAAI,GAAE,WAAgB,iBAoWtD"}