@quickchatai/quickreview 1.2.0 → 1.3.2

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 (350) hide show
  1. package/README.md +116 -53
  2. package/bin/qcr.js +1 -1
  3. package/config.example.toml +25 -7
  4. package/deploy/ansible/README.md +20 -12
  5. package/deploy/ansible/inventory.example.ini +1 -1
  6. package/deploy/collect-secrets.sh +1 -1
  7. package/deploy/qcr-update.sh +1 -1
  8. package/dist/extensions/cli/home.js +14 -0
  9. package/dist/extensions/cli/home.js.map +1 -0
  10. package/dist/extensions/cli/selfimprove.js +18 -0
  11. package/dist/extensions/cli/selfimprove.js.map +1 -0
  12. package/dist/extensions/home.js +350 -0
  13. package/dist/extensions/home.js.map +1 -0
  14. package/dist/extensions/login-route.js +1 -1
  15. package/dist/extensions/login-route.js.map +1 -1
  16. package/dist/extensions/onboarding.js +8 -7
  17. package/dist/extensions/onboarding.js.map +1 -1
  18. package/dist/extensions/selfimprove.js +49 -0
  19. package/dist/extensions/selfimprove.js.map +1 -0
  20. package/dist/extensions/setup-scan.js +23 -592
  21. package/dist/extensions/setup-scan.js.map +1 -1
  22. package/dist/extensions/setup.js +2 -47
  23. package/dist/extensions/setup.js.map +1 -1
  24. package/dist/extensions/vendor/openviking-pi/index.js +4 -0
  25. package/dist/extensions/vendor/openviking-pi/index.js.map +1 -1
  26. package/dist/extensions/vendor/openviking-pi/qcr-hooks.js +3 -1
  27. package/dist/extensions/vendor/openviking-pi/qcr-hooks.js.map +1 -1
  28. package/dist/extensions/vendor/openviking-pi/sync.js +81 -0
  29. package/dist/extensions/vendor/openviking-pi/sync.js.map +1 -1
  30. package/dist/src/archive/restore.js +18 -15
  31. package/dist/src/archive/restore.js.map +1 -1
  32. package/dist/src/botworker.js +13 -2
  33. package/dist/src/botworker.js.map +1 -1
  34. package/dist/src/channelfs.js +3 -26
  35. package/dist/src/channelfs.js.map +1 -1
  36. package/dist/src/cli.js +14 -50
  37. package/dist/src/cli.js.map +1 -1
  38. package/dist/src/config.js +16 -0
  39. package/dist/src/config.js.map +1 -1
  40. package/dist/src/daemon.js +33 -4
  41. package/dist/src/daemon.js.map +1 -1
  42. package/dist/src/debuground.js +1 -0
  43. package/dist/src/debuground.js.map +1 -1
  44. package/dist/src/debugroundpi.js +1 -0
  45. package/dist/src/debugroundpi.js.map +1 -1
  46. package/dist/src/engine/caserunner-sdk.js +15 -251
  47. package/dist/src/engine/caserunner-sdk.js.map +1 -1
  48. package/dist/src/home/adapters.js +349 -0
  49. package/dist/src/home/adapters.js.map +1 -0
  50. package/dist/src/home/advanced.js +318 -0
  51. package/dist/src/home/advanced.js.map +1 -0
  52. package/dist/src/home/advancedtools.js +57 -0
  53. package/dist/src/home/advancedtools.js.map +1 -0
  54. package/dist/src/home/autoreview.js +325 -0
  55. package/dist/src/home/autoreview.js.map +1 -0
  56. package/dist/src/home/daemonstatus.js +32 -0
  57. package/dist/src/home/daemonstatus.js.map +1 -0
  58. package/dist/src/home/devicelogin.js +61 -0
  59. package/dist/src/home/devicelogin.js.map +1 -0
  60. package/dist/src/home/launch.js +202 -0
  61. package/dist/src/home/launch.js.map +1 -0
  62. package/dist/src/home/loginowner.js +205 -0
  63. package/dist/src/home/loginowner.js.map +1 -0
  64. package/dist/src/home/memory.js +122 -0
  65. package/dist/src/home/memory.js.map +1 -0
  66. package/dist/src/home/model.js +811 -0
  67. package/dist/src/home/model.js.map +1 -0
  68. package/dist/src/home/panel.js +520 -0
  69. package/dist/src/home/panel.js.map +1 -0
  70. package/dist/src/home/ports.js +19 -0
  71. package/dist/src/home/ports.js.map +1 -0
  72. package/dist/src/home/review.js +163 -0
  73. package/dist/src/home/review.js.map +1 -0
  74. package/dist/src/home/reviews.js +478 -0
  75. package/dist/src/home/reviews.js.map +1 -0
  76. package/dist/src/home/setup.js +507 -0
  77. package/dist/src/home/setup.js.map +1 -0
  78. package/dist/src/home/setupadapters.js +214 -0
  79. package/dist/src/home/setupadapters.js.map +1 -0
  80. package/dist/src/home/setupcard.js +199 -0
  81. package/dist/src/home/setupcard.js.map +1 -0
  82. package/dist/src/home/setuptools.js +45 -0
  83. package/dist/src/home/setuptools.js.map +1 -0
  84. package/dist/src/home/spend.js +160 -0
  85. package/dist/src/home/spend.js.map +1 -0
  86. package/dist/src/home/switches.js +209 -0
  87. package/dist/src/home/switches.js.map +1 -0
  88. package/dist/src/home/switchon.js +439 -0
  89. package/dist/src/home/switchon.js.map +1 -0
  90. package/dist/src/home/toolnames.js +41 -0
  91. package/dist/src/home/toolnames.js.map +1 -0
  92. package/dist/src/home/tune.js +341 -0
  93. package/dist/src/home/tune.js.map +1 -0
  94. package/dist/src/home/words.js +7 -0
  95. package/dist/src/home/words.js.map +1 -0
  96. package/dist/src/homes.js +14 -0
  97. package/dist/src/homes.js.map +1 -1
  98. package/dist/src/install.js +1 -1
  99. package/dist/src/install.js.map +1 -1
  100. package/dist/src/ipc/workerspec.js +8 -0
  101. package/dist/src/ipc/workerspec.js.map +1 -1
  102. package/dist/src/ledgercheck.js +39 -10
  103. package/dist/src/ledgercheck.js.map +1 -1
  104. package/dist/src/live/publish.js +1 -1
  105. package/dist/src/live/publish.js.map +1 -1
  106. package/dist/src/livecli.js +1 -1
  107. package/dist/src/livecli.js.map +1 -1
  108. package/dist/src/loginrefresh/handover.js +121 -0
  109. package/dist/src/loginrefresh/handover.js.map +1 -0
  110. package/dist/src/loginrefresh/lock.js +54 -3
  111. package/dist/src/loginrefresh/lock.js.map +1 -1
  112. package/dist/src/loginrefresh/refresher.js +33 -5
  113. package/dist/src/loginrefresh/refresher.js.map +1 -1
  114. package/dist/src/loginrefresh/supervisor.js +18 -1
  115. package/dist/src/loginrefresh/supervisor.js.map +1 -1
  116. package/dist/src/npmverbs.js +42 -12
  117. package/dist/src/npmverbs.js.map +1 -1
  118. package/dist/src/onboard/choices.js +6 -3
  119. package/dist/src/onboard/choices.js.map +1 -1
  120. package/dist/src/onboard/engine.js +33 -292
  121. package/dist/src/onboard/engine.js.map +1 -1
  122. package/dist/src/onboard/steps/bringup.js +3 -2
  123. package/dist/src/onboard/steps/bringup.js.map +1 -1
  124. package/dist/src/onboard/steps/configfill.js +18 -7
  125. package/dist/src/onboard/steps/configfill.js.map +1 -1
  126. package/dist/src/onboard/steps/loginshare.js +213 -0
  127. package/dist/src/onboard/steps/loginshare.js.map +1 -0
  128. package/dist/src/onboard/steps/memory.js +14 -2
  129. package/dist/src/onboard/steps/memory.js.map +1 -1
  130. package/dist/src/onboard/steps/repoconfig.js +72 -0
  131. package/dist/src/onboard/steps/repoconfig.js.map +1 -0
  132. package/dist/src/onboard/toolnames.js +2 -2
  133. package/dist/src/onboard/toolnames.js.map +1 -1
  134. package/dist/src/piagentdir.js +13 -0
  135. package/dist/src/piagentdir.js.map +1 -0
  136. package/dist/src/pilogin.js +31 -16
  137. package/dist/src/pilogin.js.map +1 -1
  138. package/dist/src/qcrbin.js +16 -11
  139. package/dist/src/qcrbin.js.map +1 -1
  140. package/dist/src/reviewargs.js +122 -0
  141. package/dist/src/reviewargs.js.map +1 -0
  142. package/dist/src/reviewcli.js +7 -161
  143. package/dist/src/reviewcli.js.map +1 -1
  144. package/dist/src/reviewdetach.js +76 -11
  145. package/dist/src/reviewdetach.js.map +1 -1
  146. package/dist/src/scancli.js +39 -691
  147. package/dist/src/scancli.js.map +1 -1
  148. package/dist/src/selfimprove.js +66 -0
  149. package/dist/src/selfimprove.js.map +1 -0
  150. package/dist/src/session-command-supervisor.js +38 -9
  151. package/dist/src/session-command-supervisor.js.map +1 -1
  152. package/dist/src/setup/adapters.js +5 -223
  153. package/dist/src/setup/adapters.js.map +1 -1
  154. package/dist/src/setup/caserunner.js +15 -249
  155. package/dist/src/setup/caserunner.js.map +1 -1
  156. package/dist/src/setup/engine.js +32 -341
  157. package/dist/src/setup/engine.js.map +1 -1
  158. package/dist/src/setup/facts.js +3 -592
  159. package/dist/src/setup/facts.js.map +1 -1
  160. package/dist/src/setup/findings.js +3 -947
  161. package/dist/src/setup/findings.js.map +1 -1
  162. package/dist/src/setup/presentation.js +3 -8
  163. package/dist/src/setup/presentation.js.map +1 -1
  164. package/dist/src/setup/scan.js +3 -724
  165. package/dist/src/setup/scan.js.map +1 -1
  166. package/dist/src/setup/scanbuild.js +9 -92
  167. package/dist/src/setup/scanbuild.js.map +1 -1
  168. package/dist/src/setup/scanlease.js +3 -250
  169. package/dist/src/setup/scanlease.js.map +1 -1
  170. package/dist/src/setup/scanreport.js +3 -288
  171. package/dist/src/setup/scanreport.js.map +1 -1
  172. package/dist/src/setup/scanrun.js +3 -1732
  173. package/dist/src/setup/scanrun.js.map +1 -1
  174. package/dist/src/setup/scantree.js +3 -256
  175. package/dist/src/setup/scantree.js.map +1 -1
  176. package/dist/src/setup/stage2request.js +3 -258
  177. package/dist/src/setup/stage2request.js.map +1 -1
  178. package/dist/src/setup/unitcut.js +3 -436
  179. package/dist/src/setup/unitcut.js.map +1 -1
  180. package/dist/src/state.js +75 -9
  181. package/dist/src/state.js.map +1 -1
  182. package/dist/src/takeover.js +1 -0
  183. package/dist/src/takeover.js.map +1 -1
  184. package/dist/src/takeoverpi.js +2 -1
  185. package/dist/src/takeoverpi.js.map +1 -1
  186. package/dist/src/tui/alerts.js +4 -1
  187. package/dist/src/tui/alerts.js.map +1 -1
  188. package/dist/src/tui/board.js +2 -2
  189. package/dist/src/tui/board.js.map +1 -1
  190. package/dist/src/tui/companion.js +2 -1
  191. package/dist/src/tui/companion.js.map +1 -1
  192. package/dist/src/tui/deploytab.js +2 -2
  193. package/dist/src/tui/deploytab.js.map +1 -1
  194. package/dist/src/tui/index.js +9 -6
  195. package/dist/src/tui/index.js.map +1 -1
  196. package/dist/src/tui/memory.js +3 -16
  197. package/dist/src/tui/memory.js.map +1 -1
  198. package/dist/src/tui/memoryurl.js +22 -0
  199. package/dist/src/tui/memoryurl.js.map +1 -0
  200. package/dist/src/tui/remote.js +1 -1
  201. package/dist/src/tui/remote.js.map +1 -1
  202. package/dist/src/tui/route.js +2 -2
  203. package/dist/src/tui/route.js.map +1 -1
  204. package/dist/src/tui/setupstate.js +8 -5
  205. package/dist/src/tui/setupstate.js.map +1 -1
  206. package/dist/src/tui/sshtriage.js +1 -1
  207. package/dist/src/tui/sshtriage.js.map +1 -1
  208. package/dist/src/verdicts.js +12 -0
  209. package/dist/src/verdicts.js.map +1 -1
  210. package/dist/src/wire.js +9 -4
  211. package/dist/src/wire.js.map +1 -1
  212. package/dist/src/workerbreaker.js +32 -5
  213. package/dist/src/workerbreaker.js.map +1 -1
  214. package/dist/src/workerworld.js +4 -0
  215. package/dist/src/workerworld.js.map +1 -1
  216. package/docker/README.md +1 -1
  217. package/docker/entrypoint.sh +40 -6
  218. package/docker-compose.yml +16 -1
  219. package/extensions/cli/home.ts +14 -0
  220. package/extensions/cli/selfimprove.ts +18 -0
  221. package/extensions/home.ts +484 -0
  222. package/extensions/login-route.ts +1 -1
  223. package/extensions/onboarding.ts +8 -7
  224. package/extensions/selfimprove.ts +65 -0
  225. package/extensions/setup-scan.ts +79 -766
  226. package/extensions/setup.ts +14 -70
  227. package/extensions/vendor/openviking-pi/NOTICE +5 -0
  228. package/extensions/vendor/openviking-pi/README.md +39 -5
  229. package/extensions/vendor/openviking-pi/index.ts +4 -0
  230. package/extensions/vendor/openviking-pi/patches/0014-one-turn-sync-in-flight.patch +239 -0
  231. package/extensions/vendor/openviking-pi/qcr-hooks.ts +3 -1
  232. package/extensions/vendor/openviking-pi/sync.ts +80 -0
  233. package/extensions/vendor/openviking-pi/upstream.json +2 -1
  234. package/package.json +6 -4
  235. package/prompts/onboarding.md +8 -7
  236. package/schemas/review-result.v1.json +60 -0
  237. package/scripts/deploy.sh +8 -6
  238. package/scripts/qcr-host.sh +28 -5
  239. package/scripts/vm-ghcr-login.sh +7 -4
  240. package/src/archive/restore.ts +18 -21
  241. package/src/botworker.ts +13 -2
  242. package/src/channelfs.ts +3 -26
  243. package/src/cli.ts +13 -54
  244. package/src/config.ts +38 -0
  245. package/src/daemon.ts +34 -4
  246. package/src/debuground.ts +3 -0
  247. package/src/debugroundpi.ts +1 -0
  248. package/src/engine/caserunner-sdk.ts +29 -314
  249. package/src/home/adapters.ts +418 -0
  250. package/src/home/advanced.ts +421 -0
  251. package/src/home/advancedtools.ts +96 -0
  252. package/src/home/autoreview.ts +385 -0
  253. package/src/home/daemonstatus.ts +55 -0
  254. package/src/home/devicelogin.ts +107 -0
  255. package/src/home/launch.ts +257 -0
  256. package/src/home/loginowner.ts +248 -0
  257. package/src/home/memory.ts +176 -0
  258. package/src/home/model.ts +965 -0
  259. package/src/home/panel.ts +666 -0
  260. package/src/home/ports.ts +338 -0
  261. package/src/home/review.ts +206 -0
  262. package/src/home/reviews.ts +565 -0
  263. package/src/home/setup.ts +689 -0
  264. package/src/home/setupadapters.ts +217 -0
  265. package/src/home/setupcard.ts +288 -0
  266. package/src/home/setuptools.ts +57 -0
  267. package/src/home/spend.ts +194 -0
  268. package/src/home/switches.ts +293 -0
  269. package/src/home/switchon.ts +554 -0
  270. package/src/home/toolnames.ts +46 -0
  271. package/src/home/tune.ts +405 -0
  272. package/src/home/words.ts +8 -0
  273. package/src/homes.ts +17 -0
  274. package/src/install.ts +1 -1
  275. package/src/ipc/workerspec.ts +15 -0
  276. package/src/ledgercheck.ts +45 -9
  277. package/src/live/publish.ts +4 -1
  278. package/src/livecli.ts +6 -1
  279. package/src/loginrefresh/handover.ts +138 -0
  280. package/src/loginrefresh/lock.ts +72 -3
  281. package/src/loginrefresh/refresher.ts +34 -5
  282. package/src/loginrefresh/supervisor.ts +25 -2
  283. package/src/npmverbs.ts +51 -11
  284. package/src/onboard/choices.ts +6 -3
  285. package/src/onboard/engine.ts +64 -434
  286. package/src/onboard/steps/bringup.ts +3 -2
  287. package/src/onboard/steps/configfill.ts +23 -7
  288. package/src/onboard/steps/loginshare.ts +258 -0
  289. package/src/onboard/steps/memory.ts +18 -2
  290. package/src/onboard/steps/repoconfig.ts +85 -0
  291. package/src/onboard/toolnames.ts +2 -2
  292. package/src/piagentdir.ts +12 -0
  293. package/src/pilogin.ts +32 -16
  294. package/src/qcrbin.ts +16 -11
  295. package/src/reviewargs.ts +119 -0
  296. package/src/reviewcli.ts +6 -167
  297. package/src/reviewdetach.ts +107 -13
  298. package/src/scancli.ts +75 -826
  299. package/src/selfimprove.ts +90 -0
  300. package/src/session-command-supervisor.ts +41 -8
  301. package/src/setup/adapters.ts +13 -221
  302. package/src/setup/caserunner.ts +34 -273
  303. package/src/setup/engine.ts +62 -496
  304. package/src/setup/facts.ts +3 -627
  305. package/src/setup/findings.ts +3 -1264
  306. package/src/setup/presentation.ts +3 -18
  307. package/src/setup/scan.ts +3 -1033
  308. package/src/setup/scanbuild.ts +20 -114
  309. package/src/setup/scanlease.ts +3 -297
  310. package/src/setup/scanreport.ts +3 -373
  311. package/src/setup/scanrun.ts +3 -2268
  312. package/src/setup/scantree.ts +3 -259
  313. package/src/setup/stage2request.ts +3 -347
  314. package/src/setup/unitcut.ts +3 -523
  315. package/src/state.ts +126 -11
  316. package/src/takeover.ts +5 -0
  317. package/src/takeoverpi.ts +3 -2
  318. package/src/tui/alerts.ts +9 -2
  319. package/src/tui/board.ts +2 -2
  320. package/src/tui/companion.ts +2 -1
  321. package/src/tui/deploytab.ts +2 -2
  322. package/src/tui/index.ts +9 -6
  323. package/src/tui/memory.ts +3 -15
  324. package/src/tui/memoryurl.ts +22 -0
  325. package/src/tui/remote.ts +1 -1
  326. package/src/tui/route.ts +2 -2
  327. package/src/tui/setupstate.ts +20 -16
  328. package/src/tui/sshtriage.ts +1 -1
  329. package/src/verdicts.ts +13 -0
  330. package/src/wire.ts +9 -4
  331. package/src/workerbreaker.ts +41 -5
  332. package/src/workerworld.ts +9 -1
  333. package/dist/src/live/projection.js +0 -450
  334. package/dist/src/live/projection.js.map +0 -1
  335. package/dist/src/live/read.js +0 -60
  336. package/dist/src/live/read.js.map +0 -1
  337. package/dist/src/onboard/launch.js +0 -75
  338. package/dist/src/onboard/launch.js.map +0 -1
  339. package/dist/src/setup/ledger.js +0 -207
  340. package/dist/src/setup/ledger.js.map +0 -1
  341. package/dist/src/setup/stage2.js +0 -617
  342. package/dist/src/setup/stage2.js.map +0 -1
  343. package/dist/src/setup/textsniff.js +0 -89
  344. package/dist/src/setup/textsniff.js.map +0 -1
  345. package/src/live/projection.ts +0 -491
  346. package/src/live/read.ts +0 -86
  347. package/src/onboard/launch.ts +0 -103
  348. package/src/setup/ledger.ts +0 -324
  349. package/src/setup/stage2.ts +0 -926
  350. package/src/setup/textsniff.ts +0 -95
@@ -24,9 +24,8 @@
24
24
  // stopped short (partial); 2 usage.
25
25
  import { existsSync, openSync, readFileSync, writeSync } from "node:fs";
26
26
  import { homedir } from "node:os";
27
- import { extname, join, resolve } from "node:path";
28
- import { fileURLToPath } from "node:url";
29
- import { FALLBACK_DESTINATIONS, loadDefaultDestinationsIn, parseDestinations, planDestinations, saveDefaultDestinationsIn, } from "@quickchatai/pi-quickreview/src/reviewdest.js";
27
+ import { join, resolve } from "node:path";
28
+ import { FALLBACK_DESTINATIONS, loadDefaultDestinationsIn, planDestinations, saveDefaultDestinationsIn, } from "@quickchatai/pi-quickreview/src/reviewdest.js";
30
29
  import { BUDGET_EXIT_CODE } from "@quickchatai/pi-quickreview/src/engine/budget.js";
31
30
  import { prepareHostRun } from "./hostroute.js";
32
31
  import { lazyReviewRuntime } from "@quickchatai/pi-quickreview/src/engine/reviewruntime.js";
@@ -34,7 +33,8 @@ import { markSdkRoute } from "@quickchatai/pi-quickreview/src/engine/livesession
34
33
  import { REVIEW_SCHEMA_VERSION, withSchemaVersion, } from "@quickchatai/pi-quickreview/src/contract.js";
35
34
  import { preview, review, } from "@quickchatai/pi-quickreview/src/reviewapi.js";
36
35
  import { reviewHome } from "./reviewhome.js";
37
- export const REVIEW_USAGE = "usage: qcr review start|status|stop (detached runs, see `qcr review start --help`) | qcr review [branch | --uncommitted | --diff FILE|- | <PR number|URL>] [--repo OWNER/NAME] [--base REF] [--preview] [--key K] [--limit USD] [--full] [--to DEST] [--out FILE] [--debug-pi] [--json] | --help";
36
+ import { parseReviewArgs, REVIEW_USAGE } from "./reviewargs.js";
37
+ export { parseReviewArgs, REVIEW_USAGE } from "./reviewargs.js";
38
38
  export function reviewHelp() {
39
39
  return [
40
40
  REVIEW_USAGE,
@@ -96,121 +96,6 @@ export function reviewHelp() {
96
96
  "short (partial coverage); 2 usage.",
97
97
  ].join("\n");
98
98
  }
99
- const usage = (why) => new Error(why ? `${REVIEW_USAGE}\n(${why})` : REVIEW_USAGE);
100
- /** `qcr review`'s arguments (`--json` taken off before). An unknown token is
101
- * refused, so a mistyped flag never runs something else. */
102
- export function parseReviewArgs(rest) {
103
- let help = false;
104
- let uncommitted = false;
105
- let diff;
106
- let preview = false;
107
- let full = false;
108
- let base;
109
- let pr;
110
- let repo;
111
- let key;
112
- let limit;
113
- let to;
114
- let out;
115
- let debugPi = false;
116
- const value = (i, flag) => {
117
- const v = rest[i + 1];
118
- if (v === undefined || v.startsWith("--"))
119
- throw usage(`${flag} needs a value`);
120
- return v;
121
- };
122
- for (let i = 0; i < rest.length; i++) {
123
- const a = rest[i];
124
- if (a === "--help" || a === "-h")
125
- help = true;
126
- else if (a === "--preview")
127
- preview = true;
128
- else if (a === "--full")
129
- full = true;
130
- else if (a === "--debug-pi")
131
- debugPi = true;
132
- else if (a === "--base")
133
- base = value(i++, a);
134
- else if (a === "--diff") {
135
- // "-" is stdin; a file whose name begins with "-" is written ./-name
136
- const v = rest[i + 1];
137
- if (v === undefined || (v !== "-" && v.startsWith("-")))
138
- throw usage("--diff needs a file, or - for stdin");
139
- diff = v;
140
- i++;
141
- }
142
- else if (a === "--repo")
143
- repo = value(i++, a);
144
- else if (a === "--key")
145
- key = value(i++, a);
146
- else if (a === "--to") {
147
- try {
148
- to = parseDestinations(value(i++, a));
149
- }
150
- catch (err) {
151
- throw usage(err instanceof Error ? err.message : String(err));
152
- }
153
- }
154
- else if (a === "--out")
155
- out = value(i++, a);
156
- else if (a === "--limit") {
157
- const n = Number(value(i++, a));
158
- if (!Number.isFinite(n) || n <= 0)
159
- throw usage("--limit must be a positive number of dollars");
160
- limit = n;
161
- }
162
- else if (a === "branch")
163
- continue;
164
- else if (a === "--uncommitted")
165
- uncommitted = true;
166
- else if (/^#?\d+$/.test(a) || /^https?:\/\//.test(a)) {
167
- if (pr !== undefined)
168
- throw usage("one PR at a time");
169
- pr = a;
170
- }
171
- else
172
- throw usage(`unknown argument ${a}`);
173
- }
174
- if (help)
175
- return { help: true };
176
- if (uncommitted && base !== undefined)
177
- throw usage("--uncommitted reviews against HEAD; --base does not apply");
178
- if (uncommitted && rest.includes("branch"))
179
- throw usage("choose one target: branch or --uncommitted");
180
- if (uncommitted && pr !== undefined)
181
- throw usage("choose one target: --uncommitted or a PR");
182
- if (diff !== undefined) {
183
- if (uncommitted || pr !== undefined || rest.includes("branch"))
184
- throw usage("choose one target: branch, --uncommitted, --diff or a PR");
185
- if (base !== undefined)
186
- throw usage("--diff carries its own changes; --base does not apply");
187
- if (repo !== undefined)
188
- throw usage("--repo goes with a PR number or URL");
189
- }
190
- if (debugPi && preview)
191
- throw usage("--debug-pi runs a round; a preview starts nothing");
192
- if (debugPi && to?.includes("pr"))
193
- throw usage("a debug round posts nothing: drop --to pr");
194
- if (pr !== undefined && base !== undefined)
195
- throw usage("--base applies to a branch, not a PR");
196
- if (pr === undefined && repo !== undefined)
197
- throw usage("--repo goes with a PR number or URL");
198
- return {
199
- help: false,
200
- uncommitted,
201
- ...(diff !== undefined ? { diff } : {}),
202
- ...(pr !== undefined ? { pr } : {}),
203
- ...(repo !== undefined ? { repo } : {}),
204
- preview,
205
- full,
206
- debugPi,
207
- ...(base !== undefined ? { base } : {}),
208
- ...(key !== undefined ? { key } : {}),
209
- ...(limit !== undefined ? { limit } : {}),
210
- ...(to !== undefined ? { to } : {}),
211
- ...(out !== undefined ? { out } : {}),
212
- };
213
- }
214
99
  /** The route a process runs on: the Action sets QCR_ROUTE=action (or runs under
215
100
  * GITHUB_ACTIONS), anything else is a person at a terminal. */
216
101
  export function routeFromEnv(env) {
@@ -371,45 +256,6 @@ export function containerRunEnv(env) {
371
256
  return undefined;
372
257
  return { id, name };
373
258
  }
374
- /** The CLI entry the detached driver re-runs: `cli` beside this module. Read
375
- * from where this module is, not from `process.argv[1]`, which is whatever the
376
- * person launched (a bin symlink, a wrapper, a test runner). */
377
- export function detachedEntry(metaUrl = import.meta.url) {
378
- return fileURLToPath(new URL(`./cli${extname(fileURLToPath(metaUrl))}`, metaUrl));
379
- }
380
- /** The process `qcr review start` detaches: this node, this entry, the run's
381
- * directory and key, the review's own arguments. */
382
- export function detachedCommand(l, o = {}) {
383
- return {
384
- command: o.execPath ?? process.execPath,
385
- args: [
386
- ...(o.execArgv ?? process.execArgv),
387
- o.entry ?? detachedEntry(),
388
- "review",
389
- "--detached-run",
390
- l.dir,
391
- l.key,
392
- ...l.argv,
393
- "--json",
394
- ],
395
- };
396
- }
397
- /** The watchdog `qcr review start` detaches beside the run: this node, this
398
- * entry, the run's directory, key and driver pid. */
399
- export function watchdogCommand(w, o = {}) {
400
- return {
401
- command: o.execPath ?? process.execPath,
402
- args: [
403
- ...(o.execArgv ?? process.execArgv),
404
- o.entry ?? detachedEntry(),
405
- "review",
406
- "--watchdog",
407
- w.dir,
408
- w.key,
409
- String(w.pid),
410
- ],
411
- };
412
- }
413
259
  /** The runtime `[engine] runtime` selects for `qcr review`: the SDK runtime.
414
260
  * `[pi] lens_runtime = engine` is
415
261
  * the SDK runtime with our lens tools; with `[pi] engine_wave` the runtime
@@ -463,13 +309,13 @@ export async function cmdReview(rest, json, io = {}) {
463
309
  launch: (l) => container !== undefined
464
310
  ? { ok: true, pid: null, container: container.name }
465
311
  : det.launchDetached({
466
- ...detachedCommand(l),
312
+ ...det.detachedCommand(l),
467
313
  dir: l.dir,
468
314
  env: process.env,
469
315
  }),
470
316
  watch: (w) => {
471
317
  det.launchDetached({
472
- ...watchdogCommand(w),
318
+ ...det.watchdogCommand(w),
473
319
  dir: w.dir,
474
320
  env: process.env,
475
321
  log: "watchdog.log",
@@ -583,7 +429,7 @@ export async function cmdReview(rest, json, io = {}) {
583
429
  // A person's run needs a credential for every provider the review's
584
430
  // models name; a key for another provider never stands in for one.
585
431
  const { reviewLoginRefusal } = await import("./loginhint.js");
586
- const { reviewProviders } = await import("@quickchatai/pi-quickreview/src/plugin/login.js");
432
+ const { reviewProviders } = await import("@quickchatai/pi-quickreview/src/modelroute.js");
587
433
  const problem = reviewLoginRefusal({
588
434
  providers: reviewProviders(cfg),
589
435
  agentDir,
@@ -1 +1 @@
1
- {"version":3,"file":"reviewcli.js","sourceRoot":"","sources":["../../src/reviewcli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewcli.js","sourceRoot":"","sources":["../../src/reviewcli.ts"],"names":[],"mappings":"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"}
@@ -33,13 +33,15 @@
33
33
  import { spawn } from "node:child_process";
34
34
  import { createHash } from "node:crypto";
35
35
  import { appendFileSync, closeSync, existsSync, mkdirSync, openSync, readFileSync, readdirSync, rmSync, writeFileSync, } from "node:fs";
36
- import { basename, dirname, join, resolve } from "node:path";
36
+ import { basename, dirname, extname, join, resolve } from "node:path";
37
+ import { fileURLToPath } from "node:url";
37
38
  import { stopLiveSessions } from "@quickchatai/pi-quickreview/src/engine/livesessions.js";
38
39
  import { HEARTBEAT_FILE, readBeat, startHeartbeat, } from "@quickchatai/pi-quickreview/src/heartbeat.js";
39
40
  import { originRepo, resolveBranch, resolveUncommitted, } from "@quickchatai/pi-quickreview/src/localreview.js";
40
- import { latestLiveRound, viewRound } from "./live/read.js";
41
+ import { latestLiveRound, viewRound } from "@quickchatai/pi-quickreview/src/live/read.js";
42
+ import { lensActivityLine, lensElapsedMs } from "@quickchatai/pi-quickreview/src/live/lensline.js";
41
43
  import { parsePrTarget } from "@quickchatai/pi-quickreview/src/prtarget.js";
42
- import { parseReviewArgs } from "./reviewcli.js";
44
+ import { parseReviewArgs } from "./reviewargs.js";
43
45
  import { REVIEW_SCHEMA_VERSION, withSchemaVersion, } from "@quickchatai/pi-quickreview/src/contract.js";
44
46
  export const DETACHED_USAGE = "usage: qcr review start [branch | --uncommitted | --diff FILE | <PR number|URL>] [--repo OWNER/NAME] [--base REF] [--key K] [--limit USD] [--full] [--to DEST] [--out FILE] --json\n" +
45
47
  " qcr review status [RUN_ID] [--wait [--timeout SECONDS]] --json\n" +
@@ -156,7 +158,8 @@ function observe(home, runId, deps) {
156
158
  if (run === null)
157
159
  return null;
158
160
  const exit = readJson(join(dir, "exit.json"));
159
- const stopped = existsSync(join(dir, "stopped.json"));
161
+ const stoppedAt = readJson(join(dir, "stopped.json"));
162
+ const stopped = stoppedAt !== null || existsSync(join(dir, "stopped.json"));
160
163
  let state;
161
164
  // A run that was stopped and unwinds records a failing exit of its own on the
162
165
  // way out (an aborted turn has no result); `stop` is what ended it, so that
@@ -188,7 +191,13 @@ function observe(home, runId, deps) {
188
191
  catch {
189
192
  // no output yet
190
193
  }
191
- return { run, dir, state, exitCode: exit?.code ?? null, result };
194
+ const at = (v) => typeof v === "number" && Number.isFinite(v) ? v : null;
195
+ const endedAt = state === "running"
196
+ ? null
197
+ : state === "stopped"
198
+ ? (at(stoppedAt?.at) ?? at(exit?.at))
199
+ : at(exit?.at);
200
+ return { run, dir, state, exitCode: exit?.code ?? null, endedAt, result };
192
201
  }
193
202
  function allRuns(home, deps) {
194
203
  let ids = [];
@@ -205,7 +214,7 @@ function allRuns(home, deps) {
205
214
  }
206
215
  /** How far a run got: the lenses its stage record names (written when the round
207
216
  * ends) and, while it runs, its live log. */
208
- function progress(dir) {
217
+ function progress(dir, now) {
209
218
  const work = join(dir, "work");
210
219
  let dirs = [];
211
220
  try {
@@ -241,9 +250,11 @@ function progress(dir) {
241
250
  agents: snapshot.agents.map((a) => ({
242
251
  agent: a.agent,
243
252
  status: a.status,
244
- duration_ms: a.duration_ms,
253
+ duration_ms: lensElapsedMs(a, now) ?? a.duration_ms,
245
254
  tool_count: a.tool_count,
246
255
  ...(a.current_tool ? { current_tool: a.current_tool } : {}),
256
+ ...(a.current_target ? { current_target: a.current_target } : {}),
257
+ line: lensActivityLine(a, { nowMs: now }),
247
258
  })),
248
259
  };
249
260
  }
@@ -256,9 +267,11 @@ function view(o, now) {
256
267
  run_id: o.run.run_id,
257
268
  state: o.state,
258
269
  target: o.run.label,
259
- elapsed_s: Math.max(0, Math.round((now - o.run.started_at) / 1000)),
270
+ started_at: o.run.started_at,
271
+ ...(o.endedAt !== null ? { ended_at: o.endedAt } : {}),
272
+ elapsed_s: Math.max(0, Math.round(((o.endedAt ?? now) - o.run.started_at) / 1000)),
260
273
  exit_code: o.exitCode,
261
- ...(o.state === "running" ? { progress: progress(o.dir) } : { result: o.result }),
274
+ ...(o.state === "running" ? { progress: progress(o.dir, now) } : { result: o.result }),
262
275
  ...(o.state === "failed" && o.exitCode === null
263
276
  ? { errors: [`the review process ended without a result; see ${join(o.dir, "driver.log")}`] }
264
277
  : {}),
@@ -276,6 +289,9 @@ function text(v) {
276
289
  if (names.length > 0)
277
290
  bits.push(`${s}: ${names.join(", ")}`);
278
291
  }
292
+ for (const a of p.live.agents)
293
+ if (a.status === "running")
294
+ bits.push(` ${a.line}`);
279
295
  bits.push(`now: ${p.live.last_activity}`);
280
296
  }
281
297
  const errs = v["errors"];
@@ -283,6 +299,16 @@ function text(v) {
283
299
  bits.push(...errs);
284
300
  return bits.join("\n");
285
301
  }
302
+ /** Every run in the registry at `home`, oldest first, each as `status`
303
+ * reports it: what a host re-attaches to after a restart. */
304
+ export function listRunViews(home, deps) {
305
+ return allRuns(home, deps).map((o) => ({ view: view(o, deps.now()), argv: o.run.argv }));
306
+ }
307
+ /** One run as `status` reports it; null when there is no such run. */
308
+ export function runView(home, runId, deps) {
309
+ const o = observe(home, runId, deps);
310
+ return o === null ? null : { view: view(o, deps.now()), argv: o.run.argv };
311
+ }
286
312
  /** Run one `start | status | stop`; resolves its exit code. */
287
313
  export async function runDetachedVerb(verb, rest, json, deps) {
288
314
  const emit = (code, human, data) => {
@@ -516,7 +542,7 @@ export async function runDetachedChild(o) {
516
542
  proc.off("SIGINT", onSignal);
517
543
  proc.off("SIGTERM", onSignal);
518
544
  }
519
- writeFileSync(join(o.dir, "exit.json"), JSON.stringify({ code }));
545
+ writeFileSync(join(o.dir, "exit.json"), JSON.stringify({ code, at: Date.now() }));
520
546
  // only this run's own claim: a stop frees the lock for a newer run
521
547
  const lock = lockPath(dirname(dirname(o.dir)), o.key);
522
548
  if (readJson(lock)?.run_id === basename(o.dir))
@@ -564,11 +590,50 @@ export async function runWatchdog(w, deps) {
564
590
  `the review stopped responding past its deadline and was killed by its watchdog`,
565
591
  ],
566
592
  }))}\n`);
567
- writeFileSync(join(w.dir, "exit.json"), JSON.stringify({ code: WATCHDOG_EXIT_CODE }));
593
+ writeFileSync(join(w.dir, "exit.json"), JSON.stringify({ code: WATCHDOG_EXIT_CODE, at: deps.now() }));
568
594
  rmSync(lockPath(dirname(dirname(w.dir)), w.key), { force: true });
569
595
  return "killed";
570
596
  }
571
597
  await deps.sleep(deps.pollMs ?? 2_000);
572
598
  }
573
599
  }
600
+ /** The CLI entry the detached driver re-runs: `cli` beside this module. Read
601
+ * from where this module is, not from `process.argv[1]`, which is whatever the
602
+ * person launched (a bin symlink, a wrapper, a test runner). */
603
+ export function detachedEntry(metaUrl = import.meta.url) {
604
+ return fileURLToPath(new URL(`./cli${extname(fileURLToPath(metaUrl))}`, metaUrl));
605
+ }
606
+ /** The process `qcr review start` detaches: this node, this entry, the run's
607
+ * directory and key, the review's own arguments. */
608
+ export function detachedCommand(l, o = {}) {
609
+ return {
610
+ command: o.execPath ?? process.execPath,
611
+ args: [
612
+ ...(o.execArgv ?? process.execArgv),
613
+ o.entry ?? detachedEntry(),
614
+ "review",
615
+ "--detached-run",
616
+ l.dir,
617
+ l.key,
618
+ ...l.argv,
619
+ "--json",
620
+ ],
621
+ };
622
+ }
623
+ /** The watchdog `qcr review start` detaches beside the run: this node, this
624
+ * entry, the run's directory, key and driver pid. */
625
+ export function watchdogCommand(w, o = {}) {
626
+ return {
627
+ command: o.execPath ?? process.execPath,
628
+ args: [
629
+ ...(o.execArgv ?? process.execArgv),
630
+ o.entry ?? detachedEntry(),
631
+ "review",
632
+ "--watchdog",
633
+ w.dir,
634
+ w.key,
635
+ String(w.pid),
636
+ ],
637
+ };
638
+ }
574
639
  //# sourceMappingURL=reviewdetach.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewdetach.js","sourceRoot":"","sources":["../../src/reviewdetach.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewdetach.js","sourceRoot":"","sources":["../../src/reviewdetach.ts"],"names":[],"mappings":"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"}