@quickchatai/quickreview 1.1.0 → 1.3.1

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 (471) hide show
  1. package/README.md +137 -57
  2. package/bin/qcr.js +1 -1
  3. package/config.example.toml +60 -14
  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/login-route.js +5 -0
  11. package/dist/extensions/cli/login-route.js.map +1 -0
  12. package/dist/extensions/cli/selfimprove.js +18 -0
  13. package/dist/extensions/cli/selfimprove.js.map +1 -0
  14. package/dist/extensions/home.js +350 -0
  15. package/dist/extensions/home.js.map +1 -0
  16. package/dist/extensions/login-route.js +180 -0
  17. package/dist/extensions/login-route.js.map +1 -0
  18. package/dist/extensions/onboarding.js +35 -11
  19. package/dist/extensions/onboarding.js.map +1 -1
  20. package/dist/extensions/selfimprove.js +49 -0
  21. package/dist/extensions/selfimprove.js.map +1 -0
  22. package/dist/extensions/setup-scan.js +23 -592
  23. package/dist/extensions/setup-scan.js.map +1 -1
  24. package/dist/extensions/setup.js +2 -47
  25. package/dist/extensions/setup.js.map +1 -1
  26. package/dist/src/archive/restore.js +18 -15
  27. package/dist/src/archive/restore.js.map +1 -1
  28. package/dist/src/botworker.js +13 -2
  29. package/dist/src/botworker.js.map +1 -1
  30. package/dist/src/channelfs.js +3 -26
  31. package/dist/src/channelfs.js.map +1 -1
  32. package/dist/src/ciretry.js +2 -1
  33. package/dist/src/ciretry.js.map +1 -1
  34. package/dist/src/cli.js +54 -61
  35. package/dist/src/cli.js.map +1 -1
  36. package/dist/src/cliops.js +3 -2
  37. package/dist/src/cliops.js.map +1 -1
  38. package/dist/src/commands.js +25 -2
  39. package/dist/src/commands.js.map +1 -1
  40. package/dist/src/config.js +32 -2
  41. package/dist/src/config.js.map +1 -1
  42. package/dist/src/daemon.js +50 -8
  43. package/dist/src/daemon.js.map +1 -1
  44. package/dist/src/debuground.js +1 -0
  45. package/dist/src/debuground.js.map +1 -1
  46. package/dist/src/debugroundpi.js +6 -1
  47. package/dist/src/debugroundpi.js.map +1 -1
  48. package/dist/src/dispatch.js +5 -4
  49. package/dist/src/dispatch.js.map +1 -1
  50. package/dist/src/engine/caserunner-sdk.js +15 -251
  51. package/dist/src/engine/caserunner-sdk.js.map +1 -1
  52. package/dist/src/engine/debugpi.js +17 -5
  53. package/dist/src/engine/debugpi.js.map +1 -1
  54. package/dist/src/execboundary.js +10 -3
  55. package/dist/src/execboundary.js.map +1 -1
  56. package/dist/src/github.js +51 -16
  57. package/dist/src/github.js.map +1 -1
  58. package/dist/src/githubtoken.js +346 -0
  59. package/dist/src/githubtoken.js.map +1 -0
  60. package/dist/src/home/adapters.js +349 -0
  61. package/dist/src/home/adapters.js.map +1 -0
  62. package/dist/src/home/advanced.js +318 -0
  63. package/dist/src/home/advanced.js.map +1 -0
  64. package/dist/src/home/advancedtools.js +57 -0
  65. package/dist/src/home/advancedtools.js.map +1 -0
  66. package/dist/src/home/autoreview.js +325 -0
  67. package/dist/src/home/autoreview.js.map +1 -0
  68. package/dist/src/home/daemonstatus.js +32 -0
  69. package/dist/src/home/daemonstatus.js.map +1 -0
  70. package/dist/src/home/devicelogin.js +61 -0
  71. package/dist/src/home/devicelogin.js.map +1 -0
  72. package/dist/src/home/launch.js +202 -0
  73. package/dist/src/home/launch.js.map +1 -0
  74. package/dist/src/home/loginowner.js +205 -0
  75. package/dist/src/home/loginowner.js.map +1 -0
  76. package/dist/src/home/memory.js +122 -0
  77. package/dist/src/home/memory.js.map +1 -0
  78. package/dist/src/home/model.js +811 -0
  79. package/dist/src/home/model.js.map +1 -0
  80. package/dist/src/home/panel.js +520 -0
  81. package/dist/src/home/panel.js.map +1 -0
  82. package/dist/src/home/ports.js +19 -0
  83. package/dist/src/home/ports.js.map +1 -0
  84. package/dist/src/home/review.js +163 -0
  85. package/dist/src/home/review.js.map +1 -0
  86. package/dist/src/home/reviews.js +478 -0
  87. package/dist/src/home/reviews.js.map +1 -0
  88. package/dist/src/home/setup.js +507 -0
  89. package/dist/src/home/setup.js.map +1 -0
  90. package/dist/src/home/setupadapters.js +214 -0
  91. package/dist/src/home/setupadapters.js.map +1 -0
  92. package/dist/src/home/setupcard.js +199 -0
  93. package/dist/src/home/setupcard.js.map +1 -0
  94. package/dist/src/home/setuptools.js +45 -0
  95. package/dist/src/home/setuptools.js.map +1 -0
  96. package/dist/src/home/spend.js +160 -0
  97. package/dist/src/home/spend.js.map +1 -0
  98. package/dist/src/home/switches.js +209 -0
  99. package/dist/src/home/switches.js.map +1 -0
  100. package/dist/src/home/switchon.js +439 -0
  101. package/dist/src/home/switchon.js.map +1 -0
  102. package/dist/src/home/toolnames.js +41 -0
  103. package/dist/src/home/toolnames.js.map +1 -0
  104. package/dist/src/home/tune.js +341 -0
  105. package/dist/src/home/tune.js.map +1 -0
  106. package/dist/src/home/words.js +7 -0
  107. package/dist/src/home/words.js.map +1 -0
  108. package/dist/src/homes.js +14 -0
  109. package/dist/src/homes.js.map +1 -1
  110. package/dist/src/install.js +1 -1
  111. package/dist/src/install.js.map +1 -1
  112. package/dist/src/ipc/workerspec.js +8 -0
  113. package/dist/src/ipc/workerspec.js.map +1 -1
  114. package/dist/src/live/publish.js +1 -1
  115. package/dist/src/live/publish.js.map +1 -1
  116. package/dist/src/livecli.js +1 -1
  117. package/dist/src/livecli.js.map +1 -1
  118. package/dist/src/loginhint.js +8 -3
  119. package/dist/src/loginhint.js.map +1 -1
  120. package/dist/src/loginrefresh/handover.js +121 -0
  121. package/dist/src/loginrefresh/handover.js.map +1 -0
  122. package/dist/src/loginrefresh/lock.js +54 -3
  123. package/dist/src/loginrefresh/lock.js.map +1 -1
  124. package/dist/src/loginrefresh/pirefresh.js +3 -0
  125. package/dist/src/loginrefresh/pirefresh.js.map +1 -1
  126. package/dist/src/loginrefresh/refresher.js +33 -5
  127. package/dist/src/loginrefresh/refresher.js.map +1 -1
  128. package/dist/src/loginrefresh/supervisor.js +18 -1
  129. package/dist/src/loginrefresh/supervisor.js.map +1 -1
  130. package/dist/src/npmverbs.js +46 -14
  131. package/dist/src/npmverbs.js.map +1 -1
  132. package/dist/src/onboard/choices.js +35 -4
  133. package/dist/src/onboard/choices.js.map +1 -1
  134. package/dist/src/onboard/engine.js +32 -306
  135. package/dist/src/onboard/engine.js.map +1 -1
  136. package/dist/src/onboard/pipin.js +22 -0
  137. package/dist/src/onboard/pipin.js.map +1 -0
  138. package/dist/src/onboard/stepforward.js +41 -0
  139. package/dist/src/onboard/stepforward.js.map +1 -0
  140. package/dist/src/onboard/steps/appslug.js +4 -1
  141. package/dist/src/onboard/steps/appslug.js.map +1 -1
  142. package/dist/src/onboard/steps/bringup.js +3 -2
  143. package/dist/src/onboard/steps/bringup.js.map +1 -1
  144. package/dist/src/onboard/steps/compose.js +29 -0
  145. package/dist/src/onboard/steps/compose.js.map +1 -1
  146. package/dist/src/onboard/steps/configfill.js +120 -39
  147. package/dist/src/onboard/steps/configfill.js.map +1 -1
  148. package/dist/src/onboard/steps/githubaccount.js +595 -0
  149. package/dist/src/onboard/steps/githubaccount.js.map +1 -0
  150. package/dist/src/onboard/steps/githubapp.js +65 -7
  151. package/dist/src/onboard/steps/githubapp.js.map +1 -1
  152. package/dist/src/onboard/steps/golive.js +2 -0
  153. package/dist/src/onboard/steps/golive.js.map +1 -1
  154. package/dist/src/onboard/steps/index.js +11 -0
  155. package/dist/src/onboard/steps/index.js.map +1 -1
  156. package/dist/src/onboard/steps/ingress.js +80 -25
  157. package/dist/src/onboard/steps/ingress.js.map +1 -1
  158. package/dist/src/onboard/steps/llmauth.js +103 -30
  159. package/dist/src/onboard/steps/llmauth.js.map +1 -1
  160. package/dist/src/onboard/steps/loginshare.js +213 -0
  161. package/dist/src/onboard/steps/loginshare.js.map +1 -0
  162. package/dist/src/onboard/steps/memory.js +67 -3
  163. package/dist/src/onboard/steps/memory.js.map +1 -1
  164. package/dist/src/onboard/steps/proof.js +366 -56
  165. package/dist/src/onboard/steps/proof.js.map +1 -1
  166. package/dist/src/onboard/steps/repoconfig.js +72 -0
  167. package/dist/src/onboard/steps/repoconfig.js.map +1 -0
  168. package/dist/src/onboard/steps/topology.js +6 -6
  169. package/dist/src/onboard/steps/topology.js.map +1 -1
  170. package/dist/src/onboard/steps/transport.js +9 -1
  171. package/dist/src/onboard/steps/transport.js.map +1 -1
  172. package/dist/src/onboard/steps/tuiroute.js +102 -0
  173. package/dist/src/onboard/steps/tuiroute.js.map +1 -0
  174. package/dist/src/onboard/steps/verifyup.js +17 -1
  175. package/dist/src/onboard/steps/verifyup.js.map +1 -1
  176. package/dist/src/onboard/toolnames.js +30 -0
  177. package/dist/src/onboard/toolnames.js.map +1 -0
  178. package/dist/src/operatorwrite.js +23 -0
  179. package/dist/src/operatorwrite.js.map +1 -0
  180. package/dist/src/outcomes.js +4 -1
  181. package/dist/src/outcomes.js.map +1 -1
  182. package/dist/src/piagentdir.js +13 -0
  183. package/dist/src/piagentdir.js.map +1 -0
  184. package/dist/src/pilogin.js +31 -16
  185. package/dist/src/pilogin.js.map +1 -1
  186. package/dist/src/posting-journal.js +2 -1
  187. package/dist/src/posting-journal.js.map +1 -1
  188. package/dist/src/posting-outbox.js +6 -2
  189. package/dist/src/posting-outbox.js.map +1 -1
  190. package/dist/src/posting-receipt.js +14 -1
  191. package/dist/src/posting-receipt.js.map +1 -1
  192. package/dist/src/qcrbin.js +16 -11
  193. package/dist/src/qcrbin.js.map +1 -1
  194. package/dist/src/recheck.js +2 -1
  195. package/dist/src/recheck.js.map +1 -1
  196. package/dist/src/reconcile.js +22 -2
  197. package/dist/src/reconcile.js.map +1 -1
  198. package/dist/src/reviewargs.js +122 -0
  199. package/dist/src/reviewargs.js.map +1 -0
  200. package/dist/src/reviewcli.js +7 -161
  201. package/dist/src/reviewcli.js.map +1 -1
  202. package/dist/src/reviewdetach.js +76 -11
  203. package/dist/src/reviewdetach.js.map +1 -1
  204. package/dist/src/reviewhistory.js +32 -6
  205. package/dist/src/reviewhistory.js.map +1 -1
  206. package/dist/src/reviewnow.js +45 -0
  207. package/dist/src/reviewnow.js.map +1 -0
  208. package/dist/src/scancli.js +39 -691
  209. package/dist/src/scancli.js.map +1 -1
  210. package/dist/src/selfimprove.js +66 -0
  211. package/dist/src/selfimprove.js.map +1 -0
  212. package/dist/src/setup/adapters.js +5 -223
  213. package/dist/src/setup/adapters.js.map +1 -1
  214. package/dist/src/setup/caserunner.js +15 -249
  215. package/dist/src/setup/caserunner.js.map +1 -1
  216. package/dist/src/setup/engine.js +32 -341
  217. package/dist/src/setup/engine.js.map +1 -1
  218. package/dist/src/setup/facts.js +3 -592
  219. package/dist/src/setup/facts.js.map +1 -1
  220. package/dist/src/setup/findings.js +3 -947
  221. package/dist/src/setup/findings.js.map +1 -1
  222. package/dist/src/setup/presentation.js +3 -8
  223. package/dist/src/setup/presentation.js.map +1 -1
  224. package/dist/src/setup/scan.js +3 -724
  225. package/dist/src/setup/scan.js.map +1 -1
  226. package/dist/src/setup/scanbuild.js +9 -92
  227. package/dist/src/setup/scanbuild.js.map +1 -1
  228. package/dist/src/setup/scanlease.js +3 -250
  229. package/dist/src/setup/scanlease.js.map +1 -1
  230. package/dist/src/setup/scanreport.js +3 -288
  231. package/dist/src/setup/scanreport.js.map +1 -1
  232. package/dist/src/setup/scanrun.js +3 -1732
  233. package/dist/src/setup/scanrun.js.map +1 -1
  234. package/dist/src/setup/scantree.js +3 -256
  235. package/dist/src/setup/scantree.js.map +1 -1
  236. package/dist/src/setup/stage2request.js +3 -258
  237. package/dist/src/setup/stage2request.js.map +1 -1
  238. package/dist/src/setup/unitcut.js +3 -436
  239. package/dist/src/setup/unitcut.js.map +1 -1
  240. package/dist/src/state.js +2 -0
  241. package/dist/src/state.js.map +1 -1
  242. package/dist/src/statemachine.js +4 -1
  243. package/dist/src/statemachine.js.map +1 -1
  244. package/dist/src/takeover.js +1 -0
  245. package/dist/src/takeover.js.map +1 -1
  246. package/dist/src/takeoverpi.js +15 -1
  247. package/dist/src/takeoverpi.js.map +1 -1
  248. package/dist/src/tui/app.js +49 -0
  249. package/dist/src/tui/app.js.map +1 -1
  250. package/dist/src/tui/board.js +88 -12
  251. package/dist/src/tui/board.js.map +1 -1
  252. package/dist/src/tui/cmdbar.js +4 -1
  253. package/dist/src/tui/cmdbar.js.map +1 -1
  254. package/dist/src/tui/companion.js +76 -11
  255. package/dist/src/tui/companion.js.map +1 -1
  256. package/dist/src/tui/connect.js +7 -1
  257. package/dist/src/tui/connect.js.map +1 -1
  258. package/dist/src/tui/deploytab.js +2 -2
  259. package/dist/src/tui/deploytab.js.map +1 -1
  260. package/dist/src/tui/filters.js +5 -2
  261. package/dist/src/tui/filters.js.map +1 -1
  262. package/dist/src/tui/ghread.js +61 -5
  263. package/dist/src/tui/ghread.js.map +1 -1
  264. package/dist/src/tui/index.js +109 -20
  265. package/dist/src/tui/index.js.map +1 -1
  266. package/dist/src/tui/memforward.js +39 -2
  267. package/dist/src/tui/memforward.js.map +1 -1
  268. package/dist/src/tui/memory.js +3 -16
  269. package/dist/src/tui/memory.js.map +1 -1
  270. package/dist/src/tui/memoryurl.js +22 -0
  271. package/dist/src/tui/memoryurl.js.map +1 -0
  272. package/dist/src/tui/model.js +25 -0
  273. package/dist/src/tui/model.js.map +1 -1
  274. package/dist/src/tui/prpause.js +7 -0
  275. package/dist/src/tui/prpause.js.map +1 -1
  276. package/dist/src/tui/remote.js +7 -1
  277. package/dist/src/tui/remote.js.map +1 -1
  278. package/dist/src/tui/route.js +143 -0
  279. package/dist/src/tui/route.js.map +1 -0
  280. package/dist/src/tui/setupstate.js +32 -0
  281. package/dist/src/tui/setupstate.js.map +1 -0
  282. package/dist/src/tui/sshtriage.js +102 -5
  283. package/dist/src/tui/sshtriage.js.map +1 -1
  284. package/dist/src/tui/theme.js +2 -1
  285. package/dist/src/tui/theme.js.map +1 -1
  286. package/dist/src/tui/unwedge.js +2 -12
  287. package/dist/src/tui/unwedge.js.map +1 -1
  288. package/dist/src/verdicts.js +17 -5
  289. package/dist/src/verdicts.js.map +1 -1
  290. package/dist/src/version.js +1 -1
  291. package/dist/src/version.js.map +1 -1
  292. package/dist/src/webhook.js +12 -1
  293. package/dist/src/webhook.js.map +1 -1
  294. package/dist/src/wire.js +34 -8
  295. package/dist/src/wire.js.map +1 -1
  296. package/dist/src/workerworld.js +11 -1
  297. package/dist/src/workerworld.js.map +1 -1
  298. package/docker/README.md +1 -1
  299. package/docker/companion/entrypoint.sh +20 -1
  300. package/docker/entrypoint.sh +57 -6
  301. package/docker-compose.yml +16 -1
  302. package/extensions/cli/home.ts +14 -0
  303. package/extensions/cli/login-route.ts +10 -0
  304. package/extensions/cli/selfimprove.ts +18 -0
  305. package/extensions/home.ts +484 -0
  306. package/extensions/login-route.ts +220 -0
  307. package/extensions/onboarding.ts +41 -11
  308. package/extensions/selfimprove.ts +65 -0
  309. package/extensions/setup-scan.ts +79 -766
  310. package/extensions/setup.ts +14 -70
  311. package/package.json +6 -4
  312. package/prompts/onboarding.md +58 -18
  313. package/schemas/review-result.v1.json +60 -0
  314. package/scripts/deploy.sh +8 -6
  315. package/scripts/mint-token.sh +25 -4
  316. package/scripts/qcr-host.sh +28 -5
  317. package/scripts/vm-ghcr-login.sh +7 -4
  318. package/src/archive/restore.ts +18 -21
  319. package/src/botworker.ts +13 -2
  320. package/src/channelfs.ts +3 -26
  321. package/src/ciretry.ts +2 -1
  322. package/src/cli.ts +59 -67
  323. package/src/cliops.ts +3 -2
  324. package/src/commands.ts +28 -2
  325. package/src/config.ts +62 -4
  326. package/src/daemon.ts +58 -7
  327. package/src/debuground.ts +3 -0
  328. package/src/debugroundpi.ts +12 -1
  329. package/src/dispatch.ts +5 -4
  330. package/src/engine/caserunner-sdk.ts +29 -314
  331. package/src/engine/debugpi.ts +17 -5
  332. package/src/execboundary.ts +16 -4
  333. package/src/github.ts +57 -15
  334. package/src/githubtoken.ts +435 -0
  335. package/src/home/adapters.ts +418 -0
  336. package/src/home/advanced.ts +421 -0
  337. package/src/home/advancedtools.ts +96 -0
  338. package/src/home/autoreview.ts +385 -0
  339. package/src/home/daemonstatus.ts +55 -0
  340. package/src/home/devicelogin.ts +107 -0
  341. package/src/home/launch.ts +257 -0
  342. package/src/home/loginowner.ts +248 -0
  343. package/src/home/memory.ts +176 -0
  344. package/src/home/model.ts +965 -0
  345. package/src/home/panel.ts +666 -0
  346. package/src/home/ports.ts +338 -0
  347. package/src/home/review.ts +206 -0
  348. package/src/home/reviews.ts +565 -0
  349. package/src/home/setup.ts +689 -0
  350. package/src/home/setupadapters.ts +217 -0
  351. package/src/home/setupcard.ts +288 -0
  352. package/src/home/setuptools.ts +57 -0
  353. package/src/home/spend.ts +194 -0
  354. package/src/home/switches.ts +293 -0
  355. package/src/home/switchon.ts +554 -0
  356. package/src/home/toolnames.ts +46 -0
  357. package/src/home/tune.ts +405 -0
  358. package/src/home/words.ts +8 -0
  359. package/src/homes.ts +17 -0
  360. package/src/install.ts +1 -1
  361. package/src/ipc/workerspec.ts +15 -0
  362. package/src/live/publish.ts +4 -1
  363. package/src/livecli.ts +6 -1
  364. package/src/loginhint.ts +8 -3
  365. package/src/loginrefresh/handover.ts +138 -0
  366. package/src/loginrefresh/lock.ts +72 -3
  367. package/src/loginrefresh/pirefresh.ts +3 -0
  368. package/src/loginrefresh/refresher.ts +34 -5
  369. package/src/loginrefresh/supervisor.ts +25 -2
  370. package/src/npmverbs.ts +55 -13
  371. package/src/onboard/choices.ts +40 -4
  372. package/src/onboard/engine.ts +70 -421
  373. package/src/onboard/pipin.ts +31 -0
  374. package/src/onboard/stepforward.ts +61 -0
  375. package/src/onboard/steps/appslug.ts +4 -1
  376. package/src/onboard/steps/bringup.ts +3 -2
  377. package/src/onboard/steps/compose.ts +31 -0
  378. package/src/onboard/steps/configfill.ts +144 -40
  379. package/src/onboard/steps/githubaccount.ts +716 -0
  380. package/src/onboard/steps/githubapp.ts +92 -8
  381. package/src/onboard/steps/golive.ts +2 -0
  382. package/src/onboard/steps/index.ts +11 -0
  383. package/src/onboard/steps/ingress.ts +98 -31
  384. package/src/onboard/steps/llmauth.ts +114 -29
  385. package/src/onboard/steps/loginshare.ts +258 -0
  386. package/src/onboard/steps/memory.ts +76 -3
  387. package/src/onboard/steps/proof.ts +473 -55
  388. package/src/onboard/steps/repoconfig.ts +85 -0
  389. package/src/onboard/steps/topology.ts +7 -6
  390. package/src/onboard/steps/transport.ts +15 -0
  391. package/src/onboard/steps/tuiroute.ts +119 -0
  392. package/src/onboard/steps/verifyup.ts +20 -1
  393. package/src/onboard/toolnames.ts +34 -0
  394. package/src/operatorwrite.ts +25 -0
  395. package/src/outcomes.ts +8 -1
  396. package/src/piagentdir.ts +12 -0
  397. package/src/pilogin.ts +32 -16
  398. package/src/posting-journal.ts +6 -1
  399. package/src/posting-outbox.ts +10 -2
  400. package/src/posting-receipt.ts +17 -0
  401. package/src/qcrbin.ts +16 -11
  402. package/src/recheck.ts +2 -1
  403. package/src/reconcile.ts +29 -3
  404. package/src/reviewargs.ts +119 -0
  405. package/src/reviewcli.ts +6 -167
  406. package/src/reviewdetach.ts +107 -13
  407. package/src/reviewhistory.ts +20 -6
  408. package/src/reviewnow.ts +76 -0
  409. package/src/scancli.ts +75 -826
  410. package/src/selfimprove.ts +90 -0
  411. package/src/setup/adapters.ts +13 -221
  412. package/src/setup/caserunner.ts +34 -273
  413. package/src/setup/engine.ts +62 -496
  414. package/src/setup/facts.ts +3 -627
  415. package/src/setup/findings.ts +3 -1264
  416. package/src/setup/presentation.ts +3 -18
  417. package/src/setup/scan.ts +3 -1033
  418. package/src/setup/scanbuild.ts +20 -114
  419. package/src/setup/scanlease.ts +3 -297
  420. package/src/setup/scanreport.ts +3 -373
  421. package/src/setup/scanrun.ts +3 -2268
  422. package/src/setup/scantree.ts +3 -259
  423. package/src/setup/stage2request.ts +3 -347
  424. package/src/setup/unitcut.ts +3 -523
  425. package/src/state.ts +43 -0
  426. package/src/statemachine.ts +4 -1
  427. package/src/takeover.ts +5 -0
  428. package/src/takeoverpi.ts +16 -2
  429. package/src/tui/app.ts +47 -0
  430. package/src/tui/board.ts +111 -14
  431. package/src/tui/cmdbar.ts +4 -1
  432. package/src/tui/companion.ts +80 -11
  433. package/src/tui/connect.ts +7 -1
  434. package/src/tui/deploytab.ts +2 -2
  435. package/src/tui/filters.ts +7 -3
  436. package/src/tui/ghread.ts +74 -7
  437. package/src/tui/index.ts +117 -23
  438. package/src/tui/memforward.ts +52 -3
  439. package/src/tui/memory.ts +3 -15
  440. package/src/tui/memoryurl.ts +22 -0
  441. package/src/tui/model.ts +36 -2
  442. package/src/tui/prpause.ts +11 -2
  443. package/src/tui/remote.ts +9 -1
  444. package/src/tui/route.ts +173 -0
  445. package/src/tui/setupstate.ts +56 -0
  446. package/src/tui/sshtriage.ts +127 -6
  447. package/src/tui/theme.ts +2 -1
  448. package/src/tui/unwedge.ts +2 -14
  449. package/src/verdicts.ts +23 -5
  450. package/src/version.ts +1 -1
  451. package/src/webhook.ts +10 -1
  452. package/src/wire.ts +42 -9
  453. package/src/workerworld.ts +16 -2
  454. package/dist/src/live/projection.js +0 -450
  455. package/dist/src/live/projection.js.map +0 -1
  456. package/dist/src/live/read.js +0 -60
  457. package/dist/src/live/read.js.map +0 -1
  458. package/dist/src/onboard/launch.js +0 -83
  459. package/dist/src/onboard/launch.js.map +0 -1
  460. package/dist/src/setup/ledger.js +0 -207
  461. package/dist/src/setup/ledger.js.map +0 -1
  462. package/dist/src/setup/stage2.js +0 -617
  463. package/dist/src/setup/stage2.js.map +0 -1
  464. package/dist/src/setup/textsniff.js +0 -89
  465. package/dist/src/setup/textsniff.js.map +0 -1
  466. package/src/live/projection.ts +0 -491
  467. package/src/live/read.ts +0 -86
  468. package/src/onboard/launch.ts +0 -115
  469. package/src/setup/ledger.ts +0 -324
  470. package/src/setup/stage2.ts +0 -926
  471. package/src/setup/textsniff.ts +0 -95
@@ -0,0 +1,213 @@
1
+ // Switch-on's login step: one OpenAI login per box. The daemon's
2
+ // container reviews on the login the home signed in to, the host pi home's
3
+ // auth.json, instead of a login of its own.
4
+ //
5
+ // .env QCR_PI_LOGIN_DIR = the home's pi agent dir. docker-compose.yml
6
+ // mounts it at /opt/qcr/login and names it to the daemon
7
+ // (QCR_LOGIN_DIR), so the refresher keeps that one file and every
8
+ // worker borrows it; pi's settings stay in the container's own
9
+ // pi home, never the person's.
10
+ // config [login_refresh] enabled = true, so the daemon runs its single
11
+ // refresher on that file while auto-review runs. The config must
12
+ // still load with it (its margin outlasts the longest worker
13
+ // cap), or nothing is written.
14
+ // restart a stack brought up before is recreated, so the daemon has the
15
+ // mount and reads the config at boot (its volumes, so its data,
16
+ // are kept). A first switch-on's bring-up starts it this way.
17
+ // proof a stack brought up before keeps its image pin and its extracted
18
+ // docker-compose.yml, which may be an older release's. So the
19
+ // compose file must define the mount before anything is written,
20
+ // and the running daemon must show it reviews on the login (its
21
+ // QCR_LOGIN_DIR, the login in the mount, an image whose
22
+ // refresher reads that dir) before the step says so. Until then
23
+ // the step is not done, and the next switch-on runs it again.
24
+ //
25
+ // The hand-over needs nothing more: while the refresher runs it refreshes far
26
+ // ahead of pi's own window, so the home's pi, a borrower now, never has a
27
+ // token to refresh; switching auto-review off stops the daemon, the refresher
28
+ // with it, and the home's pi refreshes on its own again (src/home/loginowner.ts).
29
+ // The single-instance lock lives beside the shared auth.json, so a second
30
+ // refresher on this box is refused whoever starts it.
31
+ //
32
+ // A remote server (the advanced route) never gets this step: it signs in on
33
+ // its own device login, and the host's login is never copied there.
34
+ import { existsSync, readFileSync } from "node:fs";
35
+ import { join } from "node:path";
36
+ import { parse } from "smol-toml";
37
+ import { parseConfig } from "../../config.js";
38
+ import { CONTAINER_LOGIN_DIR, LOGIN_DIR_ENV } from "../../loginrefresh/supervisor.js";
39
+ import { BROUGHT_UP_CHOICE_KEY } from "./bringup.js";
40
+ import { DAEMON_SERVICE, composeArgs, daemonExec, readEnvText, releaseVersion, rootOf, writeAtomic, } from "./compose.js";
41
+ import { assertNoDryRunEdit, patchToml } from "./configfill.js";
42
+ import { readEnvKey, setEnvKey } from "./ingress.js";
43
+ import { topologyOf } from "./topology.js";
44
+ export const LOGIN_SHARE_STEP_ID = "login_share";
45
+ /** The project .env key docker-compose.yml mounts the host's login from. */
46
+ export const PI_LOGIN_DIR_ENV = "QCR_PI_LOGIN_DIR";
47
+ const firstLine = (s) => s.trim().split("\n")[0]?.trim() || "no output";
48
+ const message = (err) => (err instanceof Error ? err.message : String(err));
49
+ /** Does the config run the refresher? null when it cannot be read. */
50
+ export function refresherEnabled(configText) {
51
+ try {
52
+ const t = parse(configText)["login_refresh"];
53
+ return (typeof t === "object" && t !== null && t["enabled"] === true);
54
+ }
55
+ catch {
56
+ return null;
57
+ }
58
+ }
59
+ /** The config with the refresher on; null when it is on already. */
60
+ export function refresherPatch(configText) {
61
+ if (refresherEnabled(configText) === true)
62
+ return null;
63
+ const edits = [{ section: "login_refresh", key: "enabled", value: "true" }];
64
+ assertNoDryRunEdit(edits);
65
+ return patchToml(configText, edits);
66
+ }
67
+ const fail = (name, detail) => ({
68
+ ok: false,
69
+ checks: [{ name, ok: false, detail }],
70
+ });
71
+ /** The upgrade a stack too old for a shared login needs, said once. */
72
+ function upgradeFix(root) {
73
+ const version = releaseVersion(root);
74
+ return (`Fix: update the stack in ${root} to a release with the shared login` +
75
+ `${version ? ` (QCR_VERSION=${version} in its .env, and that release's docker-compose.yml)` : ""}, ` +
76
+ "then switch auto-review on again");
77
+ }
78
+ /** Does the project's docker-compose.yml mount a shared login? null when
79
+ * there is no compose file yet (the bring-up places it, this release's). */
80
+ export function composeMountsLogin(root) {
81
+ let text;
82
+ try {
83
+ text = readFileSync(join(root, "docker-compose.yml"), "utf8");
84
+ }
85
+ catch {
86
+ return null;
87
+ }
88
+ return text.includes(PI_LOGIN_DIR_ENV);
89
+ }
90
+ /** The running daemon, asked whether it reviews on the shared login: the
91
+ * compose definition hands it the dir, the mount holds the login, and its
92
+ * image's refresher reads that dir. Exit codes name which failed. */
93
+ export const DAEMON_LOGIN_PROBE = [
94
+ "sh",
95
+ "-c",
96
+ `test "$${LOGIN_DIR_ENV}" = ${CONTAINER_LOGIN_DIR} || exit 3; ` +
97
+ `test -s ${CONTAINER_LOGIN_DIR}/auth.json || exit 4; ` +
98
+ `grep -q ${LOGIN_DIR_ENV} dist/src/loginrefresh/supervisor.js 2>/dev/null || exit 5`,
99
+ ];
100
+ /** Ask the running daemon (DAEMON_LOGIN_PROBE). A daemon that cannot be
101
+ * asked is not one that reviews on the login: never claimed. */
102
+ export async function daemonLoginCheck(runner, root) {
103
+ const r = await daemonExec(runner, root, DAEMON_LOGIN_PROBE);
104
+ if (r.code === 0)
105
+ return { name: "daemon", ok: true, detail: "the daemon reviews on your login, data kept" };
106
+ const why = r.code === 3
107
+ ? `the running daemon is not handed the login (its ${LOGIN_DIR_ENV} is not ${CONTAINER_LOGIN_DIR}): the stack's docker-compose.yml is an older release's`
108
+ : r.code === 4
109
+ ? `the running daemon sees no login at ${CONTAINER_LOGIN_DIR}: the stack's docker-compose.yml does not mount it`
110
+ : r.code === 5
111
+ ? "the running daemon's image predates the shared login: it would keep reviewing on a login of its own"
112
+ : `can't ask the running daemon whether it reviews on your login: ${firstLine(r.stderr || r.stdout)}`;
113
+ return { name: "daemon", ok: false, detail: `${why}. ${upgradeFix(root)}` };
114
+ }
115
+ export function loginShareStep(o = {}) {
116
+ const state = async (ctx) => {
117
+ if (o.loginDir === undefined)
118
+ return {
119
+ ok: true,
120
+ checks: [{ name: "login", ok: true, detail: "no home login to share here" }],
121
+ };
122
+ const env = readEnvKey(readEnvText(rootOf(ctx.adapters)), PI_LOGIN_DIR_ENV);
123
+ let config;
124
+ try {
125
+ config = readFileSync(ctx.adapters.paths.configPath, "utf8");
126
+ }
127
+ catch (err) {
128
+ return fail("login", `can't read ${ctx.adapters.paths.configPath}: ${message(err)}`);
129
+ }
130
+ const checks = [
131
+ env === o.loginDir
132
+ ? { name: "login", ok: true, detail: `auto-review reviews on your login in ${o.loginDir}` }
133
+ : {
134
+ name: "login",
135
+ ok: false,
136
+ detail: `the stack does not mount your login (${PI_LOGIN_DIR_ENV} is ${env === null ? "unset" : JSON.stringify(env)})`,
137
+ },
138
+ refresherEnabled(config) === true
139
+ ? { name: "refresher", ok: true, detail: "its refresher keeps the login fresh" }
140
+ : { name: "refresher", ok: false, detail: "[login_refresh] is not enabled" },
141
+ ];
142
+ return { ok: checks.every((c) => c.ok), checks };
143
+ };
144
+ return {
145
+ id: LOGIN_SHARE_STEP_ID,
146
+ title: "Share your login with auto-review",
147
+ explain: "Auto-review reviews on the OpenAI login this home signed in to: one login per machine, which its refresher keeps fresh while it runs.",
148
+ // after the config steps (memory is 60), before the daemon starts (69)
149
+ order: 66,
150
+ enabled: (choices) => topologyOf(choices) === "local",
151
+ async run(ctx) {
152
+ const dir = o.loginDir;
153
+ if (dir === undefined)
154
+ return state(ctx);
155
+ const auth = join(dir, "auth.json");
156
+ if (!existsSync(auth))
157
+ return fail("login", `there is no login at ${auth} yet: sign in in the home first, then switch auto-review on again`);
158
+ // compose expands `$` in an .env value and treats ` #` as a comment
159
+ if (/[$\n]|\s#/.test(dir))
160
+ return fail("login", `${dir} can't be passed to Docker Compose through .env (a \`$\`, a newline or a space before #): set PI_CODING_AGENT_DIR to a plainer path`);
161
+ const configPath = ctx.adapters.paths.configPath;
162
+ let config;
163
+ try {
164
+ config = readFileSync(configPath, "utf8");
165
+ }
166
+ catch (err) {
167
+ return fail("refresher", `can't read ${configPath}: ${message(err)}`);
168
+ }
169
+ const patched = refresherPatch(config);
170
+ if (patched !== null) {
171
+ try {
172
+ parseConfig(patched);
173
+ }
174
+ catch (err) {
175
+ return fail("refresher", `[login_refresh] enabled = true would not load in ${configPath}: ${message(err)} — nothing was written`);
176
+ }
177
+ }
178
+ const root = rootOf(ctx.adapters);
179
+ if (composeMountsLogin(root) === false)
180
+ return fail("daemon", `${join(root, "docker-compose.yml")} is an older release's: it does not mount a shared login, so the daemon would keep a login of its own. Nothing was written. ${upgradeFix(root)}`);
181
+ const envText = readEnvText(root);
182
+ const nextEnv = setEnvKey(envText, PI_LOGIN_DIR_ENV, dir);
183
+ if (patched !== null)
184
+ writeAtomic(configPath, patched);
185
+ if (nextEnv !== envText)
186
+ writeAtomic(join(root, ".env"), nextEnv);
187
+ const checks = [
188
+ {
189
+ name: "login",
190
+ ok: true,
191
+ detail: `auto-review reviews on your login in ${dir}, and its refresher keeps it fresh while it runs`,
192
+ },
193
+ ];
194
+ const changed = patched !== null || nextEnv !== envText;
195
+ if (typeof ctx.choices[BROUGHT_UP_CHOICE_KEY] === "string") {
196
+ if (changed) {
197
+ // the mount and the config are read when the container starts
198
+ const r = await ctx.adapters.runner.run("docker", composeArgs(root, ["up", "-d", "--no-deps", "--force-recreate", DAEMON_SERVICE]));
199
+ if (r.code !== 0)
200
+ return fail("daemon", `\`docker compose up -d --force-recreate ${DAEMON_SERVICE}\` exited ${r.code}: ${firstLine(r.stderr || r.stdout)}`);
201
+ }
202
+ // a stack brought up before says so itself, or the step is not done
203
+ const daemon = await daemonLoginCheck(ctx.adapters.runner, root);
204
+ checks.push(daemon);
205
+ if (!daemon.ok)
206
+ return { ok: false, checks };
207
+ }
208
+ return { ok: true, checks };
209
+ },
210
+ verify: state,
211
+ };
212
+ }
213
+ //# sourceMappingURL=loginshare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loginshare.js","sourceRoot":"","sources":["../../../../src/onboard/steps/loginshare.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,7 @@ import { dirname, join, resolve, sep } from "node:path";
67
67
  import { pathToFileURL } from "node:url";
68
68
  import { OPENVIKING_DEFAULTS, parseConfig } from "../../config.js";
69
69
  import { configHome, locateKeysFile, locateSecrets } from "../../install.js";
70
- import { tuiMemoryBaseUrl } from "../../tui/memory.js";
70
+ import { tuiMemoryBaseUrl } from "../../tui/memoryurl.js";
71
71
  import { shellQuote } from "../../tui/remote.js";
72
72
  import { CHOICE_KEYS, MEMORY_CHOICE_IDS } from "../choices.js";
73
73
  import { deliverConfigChange } from "./configdelivery.js";
@@ -347,6 +347,18 @@ export const DECLINED_CHECKS = [
347
347
  ];
348
348
  /** The check row that reports the daemon's on/off switch. */
349
349
  export const MEMORY_SWITCH_CHECK = "memory-switch";
350
+ /** The check row that says phase B waits on a server not answering yet. */
351
+ export const MEMORY_SERVER_CHECK = "memory-server";
352
+ /** A run that landed phase A (the root key) and stopped only because the
353
+ * server is not up yet: on a stack not running memory, the bring-up starts
354
+ * it and the memory_user_keys step finishes phase B. Any other failure is a
355
+ * failure. */
356
+ export function waitsOnServer(checks) {
357
+ const failed = checks.filter((c) => !c.ok);
358
+ return (failed.length > 0 &&
359
+ failed.every((c) => c.name === MEMORY_SERVER_CHECK) &&
360
+ checks.some((c) => c.name === "root-key" && c.ok));
361
+ }
350
362
  /**
351
363
  * Tell the DAEMON the operator's answer: `[openviking] enabled =
352
364
  * false` on a decline — its word for "off", under which memory health reports
@@ -535,6 +547,13 @@ function serverUnreachableDetail(ctx, base, why) {
535
547
  const root = shellQuote(rootOf(ctx.adapters));
536
548
  const flags = forwardFlags(ctx);
537
549
  const cmd = (sub) => `\`cd ${root} && node scripts/companion-memory-forward.mjs ${sub} ${flags}\``;
550
+ if (topologyOf(ctx.choices) !== "vm")
551
+ return (`no OpenViking answering at ${base} (${why}). The root key is in place, which is what the daemon needs at boot. ` +
552
+ "Before the bring-up that is expected, and nothing is needed from you: the bring-up step starts the memory engine, " +
553
+ "and the memory_user_keys step after it reaches it through a memory forward the wizard opens itself, then mints " +
554
+ "the two user keys. If the stack is already up, the memory container is the thing to check " +
555
+ "(`docker compose ps memory`, `docker compose logs memory`); a forward that stays up outside the wizard is " +
556
+ `${cmd("install")} (the systemd unit) or \`qcr tui\`, which starts one.`);
538
557
  return (`no OpenViking answering at ${base} (${why}). The root key is in place, which is what the daemon needs at boot. ` +
539
558
  "The memory engine listens only on its own container's loopback (the memory sidecar on the laptop route), so this machine reaches it through the memory " +
540
559
  "forward: bring the stack up if it is not, then start the forward in another terminal, from the repo root — " +
@@ -716,7 +735,7 @@ export function memoryStep(opts = {}) {
716
735
  matrix: opts.loadMatrix ?? fallback.matrix,
717
736
  };
718
737
  };
719
- return {
738
+ const step = {
720
739
  id: MEMORY_STEP_ID,
721
740
  title: "Memory: mint, place and confine the OpenViking keys",
722
741
  explain: "Memory is what lets the reviewer remember what it learned about your repo. Three keys make it work, and where each " +
@@ -811,7 +830,7 @@ export function memoryStep(opts = {}) {
811
830
  const ready = await serverReady(ctx.adapters.fetch, base, prov);
812
831
  if (!ready.ok) {
813
832
  checks.push({
814
- name: "memory-server",
833
+ name: MEMORY_SERVER_CHECK,
815
834
  ok: false,
816
835
  detail: ready.answering
817
836
  ? `OpenViking answers at ${base} but is not ready (${ready.detail}). Check the engine and embedder logs, then run this step again; the memory forward already reaches it.`
@@ -992,6 +1011,51 @@ export function memoryStep(opts = {}) {
992
1011
  return { ok: checks.every((c) => c.ok), checks };
993
1012
  },
994
1013
  };
1014
+ // On the compose route the engine is reachable from this machine only
1015
+ // through the memory forward, and the wizard runs before any TUI has opened
1016
+ // one: each call holds one open for its own duration (adopting a running
1017
+ // forward, closing one it started). A declined memory needs no server.
1018
+ const withForward = async (ctx, body) => {
1019
+ const open = ctx.adapters.memoryForward;
1020
+ const declined = ctx.input.choice === "declined" ||
1021
+ (ctx.input.choice === undefined && ctx.choices[MEMORY_CHOICE_KEY] === "declined");
1022
+ if (!open || declined || topologyOf(ctx.choices) === "vm")
1023
+ return body();
1024
+ const facts = remoteFactsFor(ctx.adapters, ctx.choices);
1025
+ let forward = null;
1026
+ try {
1027
+ forward = await open({
1028
+ baseUrl: resolvePaths(opts, ctx).base,
1029
+ repoRoot: rootOf(ctx.adapters),
1030
+ container: facts.memoryContainer,
1031
+ sudoDocker: facts.sudo,
1032
+ log: (line) => ctx.adapters.log?.(line),
1033
+ });
1034
+ }
1035
+ catch {
1036
+ forward = null;
1037
+ }
1038
+ try {
1039
+ const report = await body();
1040
+ return forward?.started
1041
+ ? {
1042
+ ...report,
1043
+ checks: [
1044
+ { name: "memory-forward", ok: true, detail: forward.detail },
1045
+ ...report.checks,
1046
+ ],
1047
+ }
1048
+ : report;
1049
+ }
1050
+ finally {
1051
+ forward?.stop();
1052
+ }
1053
+ };
1054
+ return {
1055
+ ...step,
1056
+ run: (ctx) => withForward(ctx, () => step.run(ctx)),
1057
+ verify: (ctx) => withForward(ctx, () => step.verify(ctx)),
1058
+ };
995
1059
  }
996
1060
  /**
997
1061
  * The four-cell confinement matrix as onboarding checks.
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../src/onboard/steps/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../src/onboard/steps/memory.ts"],"names":[],"mappings":"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"}