@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.
- package/README.md +137 -57
- package/bin/qcr.js +1 -1
- package/config.example.toml +60 -14
- package/deploy/ansible/README.md +20 -12
- package/deploy/ansible/inventory.example.ini +1 -1
- package/deploy/collect-secrets.sh +1 -1
- package/deploy/qcr-update.sh +1 -1
- package/dist/extensions/cli/home.js +14 -0
- package/dist/extensions/cli/home.js.map +1 -0
- package/dist/extensions/cli/login-route.js +5 -0
- package/dist/extensions/cli/login-route.js.map +1 -0
- package/dist/extensions/cli/selfimprove.js +18 -0
- package/dist/extensions/cli/selfimprove.js.map +1 -0
- package/dist/extensions/home.js +350 -0
- package/dist/extensions/home.js.map +1 -0
- package/dist/extensions/login-route.js +180 -0
- package/dist/extensions/login-route.js.map +1 -0
- package/dist/extensions/onboarding.js +35 -11
- package/dist/extensions/onboarding.js.map +1 -1
- package/dist/extensions/selfimprove.js +49 -0
- package/dist/extensions/selfimprove.js.map +1 -0
- package/dist/extensions/setup-scan.js +23 -592
- package/dist/extensions/setup-scan.js.map +1 -1
- package/dist/extensions/setup.js +2 -47
- package/dist/extensions/setup.js.map +1 -1
- package/dist/src/archive/restore.js +18 -15
- package/dist/src/archive/restore.js.map +1 -1
- package/dist/src/botworker.js +13 -2
- package/dist/src/botworker.js.map +1 -1
- package/dist/src/channelfs.js +3 -26
- package/dist/src/channelfs.js.map +1 -1
- package/dist/src/ciretry.js +2 -1
- package/dist/src/ciretry.js.map +1 -1
- package/dist/src/cli.js +54 -61
- package/dist/src/cli.js.map +1 -1
- package/dist/src/cliops.js +3 -2
- package/dist/src/cliops.js.map +1 -1
- package/dist/src/commands.js +25 -2
- package/dist/src/commands.js.map +1 -1
- package/dist/src/config.js +32 -2
- package/dist/src/config.js.map +1 -1
- package/dist/src/daemon.js +50 -8
- package/dist/src/daemon.js.map +1 -1
- package/dist/src/debuground.js +1 -0
- package/dist/src/debuground.js.map +1 -1
- package/dist/src/debugroundpi.js +6 -1
- package/dist/src/debugroundpi.js.map +1 -1
- package/dist/src/dispatch.js +5 -4
- package/dist/src/dispatch.js.map +1 -1
- package/dist/src/engine/caserunner-sdk.js +15 -251
- package/dist/src/engine/caserunner-sdk.js.map +1 -1
- package/dist/src/engine/debugpi.js +17 -5
- package/dist/src/engine/debugpi.js.map +1 -1
- package/dist/src/execboundary.js +10 -3
- package/dist/src/execboundary.js.map +1 -1
- package/dist/src/github.js +51 -16
- package/dist/src/github.js.map +1 -1
- package/dist/src/githubtoken.js +346 -0
- package/dist/src/githubtoken.js.map +1 -0
- package/dist/src/home/adapters.js +349 -0
- package/dist/src/home/adapters.js.map +1 -0
- package/dist/src/home/advanced.js +318 -0
- package/dist/src/home/advanced.js.map +1 -0
- package/dist/src/home/advancedtools.js +57 -0
- package/dist/src/home/advancedtools.js.map +1 -0
- package/dist/src/home/autoreview.js +325 -0
- package/dist/src/home/autoreview.js.map +1 -0
- package/dist/src/home/daemonstatus.js +32 -0
- package/dist/src/home/daemonstatus.js.map +1 -0
- package/dist/src/home/devicelogin.js +61 -0
- package/dist/src/home/devicelogin.js.map +1 -0
- package/dist/src/home/launch.js +202 -0
- package/dist/src/home/launch.js.map +1 -0
- package/dist/src/home/loginowner.js +205 -0
- package/dist/src/home/loginowner.js.map +1 -0
- package/dist/src/home/memory.js +122 -0
- package/dist/src/home/memory.js.map +1 -0
- package/dist/src/home/model.js +811 -0
- package/dist/src/home/model.js.map +1 -0
- package/dist/src/home/panel.js +520 -0
- package/dist/src/home/panel.js.map +1 -0
- package/dist/src/home/ports.js +19 -0
- package/dist/src/home/ports.js.map +1 -0
- package/dist/src/home/review.js +163 -0
- package/dist/src/home/review.js.map +1 -0
- package/dist/src/home/reviews.js +478 -0
- package/dist/src/home/reviews.js.map +1 -0
- package/dist/src/home/setup.js +507 -0
- package/dist/src/home/setup.js.map +1 -0
- package/dist/src/home/setupadapters.js +214 -0
- package/dist/src/home/setupadapters.js.map +1 -0
- package/dist/src/home/setupcard.js +199 -0
- package/dist/src/home/setupcard.js.map +1 -0
- package/dist/src/home/setuptools.js +45 -0
- package/dist/src/home/setuptools.js.map +1 -0
- package/dist/src/home/spend.js +160 -0
- package/dist/src/home/spend.js.map +1 -0
- package/dist/src/home/switches.js +209 -0
- package/dist/src/home/switches.js.map +1 -0
- package/dist/src/home/switchon.js +439 -0
- package/dist/src/home/switchon.js.map +1 -0
- package/dist/src/home/toolnames.js +41 -0
- package/dist/src/home/toolnames.js.map +1 -0
- package/dist/src/home/tune.js +341 -0
- package/dist/src/home/tune.js.map +1 -0
- package/dist/src/home/words.js +7 -0
- package/dist/src/home/words.js.map +1 -0
- package/dist/src/homes.js +14 -0
- package/dist/src/homes.js.map +1 -1
- package/dist/src/install.js +1 -1
- package/dist/src/install.js.map +1 -1
- package/dist/src/ipc/workerspec.js +8 -0
- package/dist/src/ipc/workerspec.js.map +1 -1
- package/dist/src/live/publish.js +1 -1
- package/dist/src/live/publish.js.map +1 -1
- package/dist/src/livecli.js +1 -1
- package/dist/src/livecli.js.map +1 -1
- package/dist/src/loginhint.js +8 -3
- package/dist/src/loginhint.js.map +1 -1
- package/dist/src/loginrefresh/handover.js +121 -0
- package/dist/src/loginrefresh/handover.js.map +1 -0
- package/dist/src/loginrefresh/lock.js +54 -3
- package/dist/src/loginrefresh/lock.js.map +1 -1
- package/dist/src/loginrefresh/pirefresh.js +3 -0
- package/dist/src/loginrefresh/pirefresh.js.map +1 -1
- package/dist/src/loginrefresh/refresher.js +33 -5
- package/dist/src/loginrefresh/refresher.js.map +1 -1
- package/dist/src/loginrefresh/supervisor.js +18 -1
- package/dist/src/loginrefresh/supervisor.js.map +1 -1
- package/dist/src/npmverbs.js +46 -14
- package/dist/src/npmverbs.js.map +1 -1
- package/dist/src/onboard/choices.js +35 -4
- package/dist/src/onboard/choices.js.map +1 -1
- package/dist/src/onboard/engine.js +32 -306
- package/dist/src/onboard/engine.js.map +1 -1
- package/dist/src/onboard/pipin.js +22 -0
- package/dist/src/onboard/pipin.js.map +1 -0
- package/dist/src/onboard/stepforward.js +41 -0
- package/dist/src/onboard/stepforward.js.map +1 -0
- package/dist/src/onboard/steps/appslug.js +4 -1
- package/dist/src/onboard/steps/appslug.js.map +1 -1
- package/dist/src/onboard/steps/bringup.js +3 -2
- package/dist/src/onboard/steps/bringup.js.map +1 -1
- package/dist/src/onboard/steps/compose.js +29 -0
- package/dist/src/onboard/steps/compose.js.map +1 -1
- package/dist/src/onboard/steps/configfill.js +120 -39
- package/dist/src/onboard/steps/configfill.js.map +1 -1
- package/dist/src/onboard/steps/githubaccount.js +595 -0
- package/dist/src/onboard/steps/githubaccount.js.map +1 -0
- package/dist/src/onboard/steps/githubapp.js +65 -7
- package/dist/src/onboard/steps/githubapp.js.map +1 -1
- package/dist/src/onboard/steps/golive.js +2 -0
- package/dist/src/onboard/steps/golive.js.map +1 -1
- package/dist/src/onboard/steps/index.js +11 -0
- package/dist/src/onboard/steps/index.js.map +1 -1
- package/dist/src/onboard/steps/ingress.js +80 -25
- package/dist/src/onboard/steps/ingress.js.map +1 -1
- package/dist/src/onboard/steps/llmauth.js +103 -30
- package/dist/src/onboard/steps/llmauth.js.map +1 -1
- package/dist/src/onboard/steps/loginshare.js +213 -0
- package/dist/src/onboard/steps/loginshare.js.map +1 -0
- package/dist/src/onboard/steps/memory.js +67 -3
- package/dist/src/onboard/steps/memory.js.map +1 -1
- package/dist/src/onboard/steps/proof.js +366 -56
- package/dist/src/onboard/steps/proof.js.map +1 -1
- package/dist/src/onboard/steps/repoconfig.js +72 -0
- package/dist/src/onboard/steps/repoconfig.js.map +1 -0
- package/dist/src/onboard/steps/topology.js +6 -6
- package/dist/src/onboard/steps/topology.js.map +1 -1
- package/dist/src/onboard/steps/transport.js +9 -1
- package/dist/src/onboard/steps/transport.js.map +1 -1
- package/dist/src/onboard/steps/tuiroute.js +102 -0
- package/dist/src/onboard/steps/tuiroute.js.map +1 -0
- package/dist/src/onboard/steps/verifyup.js +17 -1
- package/dist/src/onboard/steps/verifyup.js.map +1 -1
- package/dist/src/onboard/toolnames.js +30 -0
- package/dist/src/onboard/toolnames.js.map +1 -0
- package/dist/src/operatorwrite.js +23 -0
- package/dist/src/operatorwrite.js.map +1 -0
- package/dist/src/outcomes.js +4 -1
- package/dist/src/outcomes.js.map +1 -1
- package/dist/src/piagentdir.js +13 -0
- package/dist/src/piagentdir.js.map +1 -0
- package/dist/src/pilogin.js +31 -16
- package/dist/src/pilogin.js.map +1 -1
- package/dist/src/posting-journal.js +2 -1
- package/dist/src/posting-journal.js.map +1 -1
- package/dist/src/posting-outbox.js +6 -2
- package/dist/src/posting-outbox.js.map +1 -1
- package/dist/src/posting-receipt.js +14 -1
- package/dist/src/posting-receipt.js.map +1 -1
- package/dist/src/qcrbin.js +16 -11
- package/dist/src/qcrbin.js.map +1 -1
- package/dist/src/recheck.js +2 -1
- package/dist/src/recheck.js.map +1 -1
- package/dist/src/reconcile.js +22 -2
- package/dist/src/reconcile.js.map +1 -1
- package/dist/src/reviewargs.js +122 -0
- package/dist/src/reviewargs.js.map +1 -0
- package/dist/src/reviewcli.js +7 -161
- package/dist/src/reviewcli.js.map +1 -1
- package/dist/src/reviewdetach.js +76 -11
- package/dist/src/reviewdetach.js.map +1 -1
- package/dist/src/reviewhistory.js +32 -6
- package/dist/src/reviewhistory.js.map +1 -1
- package/dist/src/reviewnow.js +45 -0
- package/dist/src/reviewnow.js.map +1 -0
- package/dist/src/scancli.js +39 -691
- package/dist/src/scancli.js.map +1 -1
- package/dist/src/selfimprove.js +66 -0
- package/dist/src/selfimprove.js.map +1 -0
- package/dist/src/setup/adapters.js +5 -223
- package/dist/src/setup/adapters.js.map +1 -1
- package/dist/src/setup/caserunner.js +15 -249
- package/dist/src/setup/caserunner.js.map +1 -1
- package/dist/src/setup/engine.js +32 -341
- package/dist/src/setup/engine.js.map +1 -1
- package/dist/src/setup/facts.js +3 -592
- package/dist/src/setup/facts.js.map +1 -1
- package/dist/src/setup/findings.js +3 -947
- package/dist/src/setup/findings.js.map +1 -1
- package/dist/src/setup/presentation.js +3 -8
- package/dist/src/setup/presentation.js.map +1 -1
- package/dist/src/setup/scan.js +3 -724
- package/dist/src/setup/scan.js.map +1 -1
- package/dist/src/setup/scanbuild.js +9 -92
- package/dist/src/setup/scanbuild.js.map +1 -1
- package/dist/src/setup/scanlease.js +3 -250
- package/dist/src/setup/scanlease.js.map +1 -1
- package/dist/src/setup/scanreport.js +3 -288
- package/dist/src/setup/scanreport.js.map +1 -1
- package/dist/src/setup/scanrun.js +3 -1732
- package/dist/src/setup/scanrun.js.map +1 -1
- package/dist/src/setup/scantree.js +3 -256
- package/dist/src/setup/scantree.js.map +1 -1
- package/dist/src/setup/stage2request.js +3 -258
- package/dist/src/setup/stage2request.js.map +1 -1
- package/dist/src/setup/unitcut.js +3 -436
- package/dist/src/setup/unitcut.js.map +1 -1
- package/dist/src/state.js +2 -0
- package/dist/src/state.js.map +1 -1
- package/dist/src/statemachine.js +4 -1
- package/dist/src/statemachine.js.map +1 -1
- package/dist/src/takeover.js +1 -0
- package/dist/src/takeover.js.map +1 -1
- package/dist/src/takeoverpi.js +15 -1
- package/dist/src/takeoverpi.js.map +1 -1
- package/dist/src/tui/app.js +49 -0
- package/dist/src/tui/app.js.map +1 -1
- package/dist/src/tui/board.js +88 -12
- package/dist/src/tui/board.js.map +1 -1
- package/dist/src/tui/cmdbar.js +4 -1
- package/dist/src/tui/cmdbar.js.map +1 -1
- package/dist/src/tui/companion.js +76 -11
- package/dist/src/tui/companion.js.map +1 -1
- package/dist/src/tui/connect.js +7 -1
- package/dist/src/tui/connect.js.map +1 -1
- package/dist/src/tui/deploytab.js +2 -2
- package/dist/src/tui/deploytab.js.map +1 -1
- package/dist/src/tui/filters.js +5 -2
- package/dist/src/tui/filters.js.map +1 -1
- package/dist/src/tui/ghread.js +61 -5
- package/dist/src/tui/ghread.js.map +1 -1
- package/dist/src/tui/index.js +109 -20
- package/dist/src/tui/index.js.map +1 -1
- package/dist/src/tui/memforward.js +39 -2
- package/dist/src/tui/memforward.js.map +1 -1
- package/dist/src/tui/memory.js +3 -16
- package/dist/src/tui/memory.js.map +1 -1
- package/dist/src/tui/memoryurl.js +22 -0
- package/dist/src/tui/memoryurl.js.map +1 -0
- package/dist/src/tui/model.js +25 -0
- package/dist/src/tui/model.js.map +1 -1
- package/dist/src/tui/prpause.js +7 -0
- package/dist/src/tui/prpause.js.map +1 -1
- package/dist/src/tui/remote.js +7 -1
- package/dist/src/tui/remote.js.map +1 -1
- package/dist/src/tui/route.js +143 -0
- package/dist/src/tui/route.js.map +1 -0
- package/dist/src/tui/setupstate.js +32 -0
- package/dist/src/tui/setupstate.js.map +1 -0
- package/dist/src/tui/sshtriage.js +102 -5
- package/dist/src/tui/sshtriage.js.map +1 -1
- package/dist/src/tui/theme.js +2 -1
- package/dist/src/tui/theme.js.map +1 -1
- package/dist/src/tui/unwedge.js +2 -12
- package/dist/src/tui/unwedge.js.map +1 -1
- package/dist/src/verdicts.js +17 -5
- package/dist/src/verdicts.js.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/dist/src/webhook.js +12 -1
- package/dist/src/webhook.js.map +1 -1
- package/dist/src/wire.js +34 -8
- package/dist/src/wire.js.map +1 -1
- package/dist/src/workerworld.js +11 -1
- package/dist/src/workerworld.js.map +1 -1
- package/docker/README.md +1 -1
- package/docker/companion/entrypoint.sh +20 -1
- package/docker/entrypoint.sh +57 -6
- package/docker-compose.yml +16 -1
- package/extensions/cli/home.ts +14 -0
- package/extensions/cli/login-route.ts +10 -0
- package/extensions/cli/selfimprove.ts +18 -0
- package/extensions/home.ts +484 -0
- package/extensions/login-route.ts +220 -0
- package/extensions/onboarding.ts +41 -11
- package/extensions/selfimprove.ts +65 -0
- package/extensions/setup-scan.ts +79 -766
- package/extensions/setup.ts +14 -70
- package/package.json +6 -4
- package/prompts/onboarding.md +58 -18
- package/schemas/review-result.v1.json +60 -0
- package/scripts/deploy.sh +8 -6
- package/scripts/mint-token.sh +25 -4
- package/scripts/qcr-host.sh +28 -5
- package/scripts/vm-ghcr-login.sh +7 -4
- package/src/archive/restore.ts +18 -21
- package/src/botworker.ts +13 -2
- package/src/channelfs.ts +3 -26
- package/src/ciretry.ts +2 -1
- package/src/cli.ts +59 -67
- package/src/cliops.ts +3 -2
- package/src/commands.ts +28 -2
- package/src/config.ts +62 -4
- package/src/daemon.ts +58 -7
- package/src/debuground.ts +3 -0
- package/src/debugroundpi.ts +12 -1
- package/src/dispatch.ts +5 -4
- package/src/engine/caserunner-sdk.ts +29 -314
- package/src/engine/debugpi.ts +17 -5
- package/src/execboundary.ts +16 -4
- package/src/github.ts +57 -15
- package/src/githubtoken.ts +435 -0
- package/src/home/adapters.ts +418 -0
- package/src/home/advanced.ts +421 -0
- package/src/home/advancedtools.ts +96 -0
- package/src/home/autoreview.ts +385 -0
- package/src/home/daemonstatus.ts +55 -0
- package/src/home/devicelogin.ts +107 -0
- package/src/home/launch.ts +257 -0
- package/src/home/loginowner.ts +248 -0
- package/src/home/memory.ts +176 -0
- package/src/home/model.ts +965 -0
- package/src/home/panel.ts +666 -0
- package/src/home/ports.ts +338 -0
- package/src/home/review.ts +206 -0
- package/src/home/reviews.ts +565 -0
- package/src/home/setup.ts +689 -0
- package/src/home/setupadapters.ts +217 -0
- package/src/home/setupcard.ts +288 -0
- package/src/home/setuptools.ts +57 -0
- package/src/home/spend.ts +194 -0
- package/src/home/switches.ts +293 -0
- package/src/home/switchon.ts +554 -0
- package/src/home/toolnames.ts +46 -0
- package/src/home/tune.ts +405 -0
- package/src/home/words.ts +8 -0
- package/src/homes.ts +17 -0
- package/src/install.ts +1 -1
- package/src/ipc/workerspec.ts +15 -0
- package/src/live/publish.ts +4 -1
- package/src/livecli.ts +6 -1
- package/src/loginhint.ts +8 -3
- package/src/loginrefresh/handover.ts +138 -0
- package/src/loginrefresh/lock.ts +72 -3
- package/src/loginrefresh/pirefresh.ts +3 -0
- package/src/loginrefresh/refresher.ts +34 -5
- package/src/loginrefresh/supervisor.ts +25 -2
- package/src/npmverbs.ts +55 -13
- package/src/onboard/choices.ts +40 -4
- package/src/onboard/engine.ts +70 -421
- package/src/onboard/pipin.ts +31 -0
- package/src/onboard/stepforward.ts +61 -0
- package/src/onboard/steps/appslug.ts +4 -1
- package/src/onboard/steps/bringup.ts +3 -2
- package/src/onboard/steps/compose.ts +31 -0
- package/src/onboard/steps/configfill.ts +144 -40
- package/src/onboard/steps/githubaccount.ts +716 -0
- package/src/onboard/steps/githubapp.ts +92 -8
- package/src/onboard/steps/golive.ts +2 -0
- package/src/onboard/steps/index.ts +11 -0
- package/src/onboard/steps/ingress.ts +98 -31
- package/src/onboard/steps/llmauth.ts +114 -29
- package/src/onboard/steps/loginshare.ts +258 -0
- package/src/onboard/steps/memory.ts +76 -3
- package/src/onboard/steps/proof.ts +473 -55
- package/src/onboard/steps/repoconfig.ts +85 -0
- package/src/onboard/steps/topology.ts +7 -6
- package/src/onboard/steps/transport.ts +15 -0
- package/src/onboard/steps/tuiroute.ts +119 -0
- package/src/onboard/steps/verifyup.ts +20 -1
- package/src/onboard/toolnames.ts +34 -0
- package/src/operatorwrite.ts +25 -0
- package/src/outcomes.ts +8 -1
- package/src/piagentdir.ts +12 -0
- package/src/pilogin.ts +32 -16
- package/src/posting-journal.ts +6 -1
- package/src/posting-outbox.ts +10 -2
- package/src/posting-receipt.ts +17 -0
- package/src/qcrbin.ts +16 -11
- package/src/recheck.ts +2 -1
- package/src/reconcile.ts +29 -3
- package/src/reviewargs.ts +119 -0
- package/src/reviewcli.ts +6 -167
- package/src/reviewdetach.ts +107 -13
- package/src/reviewhistory.ts +20 -6
- package/src/reviewnow.ts +76 -0
- package/src/scancli.ts +75 -826
- package/src/selfimprove.ts +90 -0
- package/src/setup/adapters.ts +13 -221
- package/src/setup/caserunner.ts +34 -273
- package/src/setup/engine.ts +62 -496
- package/src/setup/facts.ts +3 -627
- package/src/setup/findings.ts +3 -1264
- package/src/setup/presentation.ts +3 -18
- package/src/setup/scan.ts +3 -1033
- package/src/setup/scanbuild.ts +20 -114
- package/src/setup/scanlease.ts +3 -297
- package/src/setup/scanreport.ts +3 -373
- package/src/setup/scanrun.ts +3 -2268
- package/src/setup/scantree.ts +3 -259
- package/src/setup/stage2request.ts +3 -347
- package/src/setup/unitcut.ts +3 -523
- package/src/state.ts +43 -0
- package/src/statemachine.ts +4 -1
- package/src/takeover.ts +5 -0
- package/src/takeoverpi.ts +16 -2
- package/src/tui/app.ts +47 -0
- package/src/tui/board.ts +111 -14
- package/src/tui/cmdbar.ts +4 -1
- package/src/tui/companion.ts +80 -11
- package/src/tui/connect.ts +7 -1
- package/src/tui/deploytab.ts +2 -2
- package/src/tui/filters.ts +7 -3
- package/src/tui/ghread.ts +74 -7
- package/src/tui/index.ts +117 -23
- package/src/tui/memforward.ts +52 -3
- package/src/tui/memory.ts +3 -15
- package/src/tui/memoryurl.ts +22 -0
- package/src/tui/model.ts +36 -2
- package/src/tui/prpause.ts +11 -2
- package/src/tui/remote.ts +9 -1
- package/src/tui/route.ts +173 -0
- package/src/tui/setupstate.ts +56 -0
- package/src/tui/sshtriage.ts +127 -6
- package/src/tui/theme.ts +2 -1
- package/src/tui/unwedge.ts +2 -14
- package/src/verdicts.ts +23 -5
- package/src/version.ts +1 -1
- package/src/webhook.ts +10 -1
- package/src/wire.ts +42 -9
- package/src/workerworld.ts +16 -2
- package/dist/src/live/projection.js +0 -450
- package/dist/src/live/projection.js.map +0 -1
- package/dist/src/live/read.js +0 -60
- package/dist/src/live/read.js.map +0 -1
- package/dist/src/onboard/launch.js +0 -83
- package/dist/src/onboard/launch.js.map +0 -1
- package/dist/src/setup/ledger.js +0 -207
- package/dist/src/setup/ledger.js.map +0 -1
- package/dist/src/setup/stage2.js +0 -617
- package/dist/src/setup/stage2.js.map +0 -1
- package/dist/src/setup/textsniff.js +0 -89
- package/dist/src/setup/textsniff.js.map +0 -1
- package/src/live/projection.ts +0 -491
- package/src/live/read.ts +0 -86
- package/src/onboard/launch.ts +0 -115
- package/src/setup/ledger.ts +0 -324
- package/src/setup/stage2.ts +0 -926
- package/src/setup/textsniff.ts +0 -95
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
// onboarding — the wizard's tool belt. Loaded ONLY by
|
|
2
|
-
//
|
|
3
|
-
//
|
|
1
|
+
// onboarding — the wizard's tool belt. Loaded ONLY by a pi started with it
|
|
2
|
+
// named by path (its env shim, extensions/cli/onboarding.ts, as `-e` alongside
|
|
3
|
+
// --no-extensions, so no ambient extension rides that session), never
|
|
4
|
+
// registered globally. No qcr verb starts such a session any more: the home
|
|
5
|
+
// runs the wizard's steps itself (src/home/switchon.ts, Advanced). pi jiti-loads this TS source
|
|
4
6
|
// on the HOST, so it imports the OnboardingEngine source directly and runs it
|
|
5
7
|
// in-process: pi talks, these deterministic tools act, and the LLM never
|
|
6
8
|
// freestyles a shell command (the built-in belt is read-only by argv).
|
|
@@ -11,8 +13,7 @@
|
|
|
11
13
|
// - finish_and_exit: re-runs the FULL verification; anything red comes back
|
|
12
14
|
// as the tool result (no exit, ever, while red); all green marks the
|
|
13
15
|
// checklist complete, writes the companion's first-run marker
|
|
14
|
-
// (state/companion/first-run.json), and triggers pi's deferred shutdown
|
|
15
|
-
// the `qcr onboard` process then opens the TUI.
|
|
16
|
+
// (state/companion/first-run.json), and triggers pi's deferred shutdown.
|
|
16
17
|
//
|
|
17
18
|
// Convention notes (same shape as companion-guard/tui-view): degrade, never
|
|
18
19
|
// wedge — a pi without registerTool registers nothing and says so; a missing
|
|
@@ -23,7 +24,10 @@ import { join } from "node:path";
|
|
|
23
24
|
import { registerQcrTool, textResult as text, } from "@quickchatai/pi-quickreview/extensions/pi-tool.js";
|
|
24
25
|
import { OnboardingEngine, } from "../src/onboard/engine.js";
|
|
25
26
|
import { defaultSteps } from "../src/onboard/steps/index.js";
|
|
27
|
+
import { openStepMemoryForward } from "../src/onboard/stepforward.js";
|
|
26
28
|
import { locateConfig } from "../src/install.js";
|
|
29
|
+
import { registerLoginRoute } from "./login-route.js";
|
|
30
|
+
import { ONBOARD_FINISH_TOOL, ONBOARD_STATUS_TOOL, onboardStepToolName, } from "../src/onboard/toolnames.js";
|
|
27
31
|
const NO_PARAMS = { type: "object", properties: {} };
|
|
28
32
|
// ---- real adapters ----------------------------------------------------------
|
|
29
33
|
/** The one real adapter assembly. Steps see the host only through this. */
|
|
@@ -52,6 +56,7 @@ export function realAdapters(root) {
|
|
|
52
56
|
// $QCR_CONFIG, else the install's config home (never the checkout's).
|
|
53
57
|
paths: { stateDir: join(root, "state"), configPath: locateConfig().path },
|
|
54
58
|
log: (line) => console.error(line),
|
|
59
|
+
memoryForward: (req) => openStepMemoryForward(req),
|
|
55
60
|
};
|
|
56
61
|
}
|
|
57
62
|
export function buildEngine(root) {
|
|
@@ -63,7 +68,13 @@ export function renderChecks(checks) {
|
|
|
63
68
|
}
|
|
64
69
|
export function renderStatus(lines, reconciled) {
|
|
65
70
|
const rows = lines.map((l) => {
|
|
66
|
-
const mark = l.status === "done"
|
|
71
|
+
const mark = l.status === "done"
|
|
72
|
+
? "[done]"
|
|
73
|
+
: l.status === "disabled"
|
|
74
|
+
? "[skipped]"
|
|
75
|
+
: l.optional
|
|
76
|
+
? "[after setup]"
|
|
77
|
+
: "[ ]";
|
|
67
78
|
return `${mark} ${l.id} — ${l.title}${l.note ? ` (${l.note})` : ""}`;
|
|
68
79
|
});
|
|
69
80
|
const demoted = reconciled.demoted.map((d) => `re-verification demoted ${d.id}: ${d.failures.join("; ")}`);
|
|
@@ -81,7 +92,7 @@ export function renderStatus(lines, reconciled) {
|
|
|
81
92
|
*/
|
|
82
93
|
export function toolDefinitions(engine, shutdown) {
|
|
83
94
|
const stepTools = engine.stepDefs().map((step) => ({
|
|
84
|
-
name:
|
|
95
|
+
name: onboardStepToolName(step.id),
|
|
85
96
|
label: step.title,
|
|
86
97
|
description: `${step.explain} Deterministic: runs the "${step.id}" onboarding step's real checks and returns one ✓/✗ line per check. ` +
|
|
87
98
|
"Safe to re-run; a failed run leaves the step pending.",
|
|
@@ -102,7 +113,7 @@ export function toolDefinitions(engine, shutdown) {
|
|
|
102
113
|
},
|
|
103
114
|
}));
|
|
104
115
|
const status = {
|
|
105
|
-
name:
|
|
116
|
+
name: ONBOARD_STATUS_TOOL,
|
|
106
117
|
label: "Onboarding status",
|
|
107
118
|
description: "The checklist: every step in order with its status. Re-verifies each claimed-done step against reality first " +
|
|
108
119
|
"(the state file is never trusted alone), so call this at the start of every session and after anything changes outside the tools.",
|
|
@@ -114,7 +125,7 @@ export function toolDefinitions(engine, shutdown) {
|
|
|
114
125
|
},
|
|
115
126
|
};
|
|
116
127
|
const finish = {
|
|
117
|
-
name:
|
|
128
|
+
name: ONBOARD_FINISH_TOOL,
|
|
118
129
|
label: "Finish onboarding",
|
|
119
130
|
description: "Re-run EVERY verification. While anything is red this refuses and returns the failures — it never exits on red. " +
|
|
120
131
|
"When all green it marks onboarding complete, writes the companion first-run marker, and shuts this session down; " +
|
|
@@ -125,7 +136,7 @@ export function toolDefinitions(engine, shutdown) {
|
|
|
125
136
|
const result = await engine.finish();
|
|
126
137
|
if (!result.ok) {
|
|
127
138
|
const red = result.results
|
|
128
|
-
.filter((r) => !r.ok)
|
|
139
|
+
.filter((r) => !r.ok && !r.optional)
|
|
129
140
|
.map((r) => `✗ ${r.id}: ${r.failures.join("; ") || "not verified"}`);
|
|
130
141
|
return text(`Not finished — these verifications are red:\n${red.join("\n")}\n` +
|
|
131
142
|
"Fix them (or run the step tools again), then call finish_and_exit once more.");
|
|
@@ -137,7 +148,8 @@ export function toolDefinitions(engine, shutdown) {
|
|
|
137
148
|
setTimeout(() => shutdown(ctx), 250);
|
|
138
149
|
return text(`Every step verified green — onboarding is complete (recorded ${result.completed_at}).\n` +
|
|
139
150
|
`${result.marker_written ? "First-run marker written for the companion greeting." : "First-run marker already present — left untouched."}\n` +
|
|
140
|
-
"This session now shuts down and the TUI opens
|
|
151
|
+
"This session now shuts down and the TUI opens: the board lists the repository's open pull requests — " +
|
|
152
|
+
"select one and press R to review it now (dry-run: nothing is posted).");
|
|
141
153
|
},
|
|
142
154
|
};
|
|
143
155
|
return [...stepTools, status, finish];
|
|
@@ -151,7 +163,19 @@ export function onboardingConfigFromEnv(env, cwd) {
|
|
|
151
163
|
export function createOnboarding(config) {
|
|
152
164
|
return (pi) => registerOnboarding(pi, config);
|
|
153
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* The onboarding session's first-run login: when pi has no usable model
|
|
168
|
+
* login, pi's own /login menu opens with a widget that says which logins work
|
|
169
|
+
* (any OpenAI one), and an OpenAI model whose provider has no login runs on
|
|
170
|
+
* the twin login that exists (extensions/login-route.ts). The wizard's
|
|
171
|
+
* session registers it with the tools; a host that builds its own onboarding
|
|
172
|
+
* extension over `toolDefinitions` + `registerQcrTool` calls it too.
|
|
173
|
+
*/
|
|
174
|
+
export function registerOnboardingSession(pi) {
|
|
175
|
+
registerLoginRoute(pi, { open: "submit" });
|
|
176
|
+
}
|
|
154
177
|
function registerOnboarding(pi, config) {
|
|
178
|
+
registerOnboardingSession(pi);
|
|
155
179
|
if (typeof pi.registerTool !== "function") {
|
|
156
180
|
// Degrade loudly, never wedge: pi still starts, the guide can only talk.
|
|
157
181
|
console.error("onboarding: pi.registerTool unavailable — no wizard tools registered; this pi cannot run onboarding.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../extensions/onboarding.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../extensions/onboarding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// /selfimprove in the app's own pi (`qcr pi`, src/npmverbs.ts): scan this
|
|
2
|
+
// repo, then have this session's agent fix the findings (src/selfimprove.ts).
|
|
3
|
+
// The plugin, loaded beside it, carries /qcr-review, /qcr-scan and /qcr-setup;
|
|
4
|
+
// this command is the app's (ADR 0001). A factory over its config: the env
|
|
5
|
+
// shim extensions/cli/selfimprove.ts reads the process.
|
|
6
|
+
import { getAgentDir, } from "@earendil-works/pi-coding-agent";
|
|
7
|
+
import { hostAuth, sessionUi } from "@quickchatai/pi-quickreview/extensions/quickreview.js";
|
|
8
|
+
import { runSelfImproveCommand } from "../src/selfimprove.js";
|
|
9
|
+
/** The extension factory: registers /selfimprove, one run at a time. */
|
|
10
|
+
export function createSelfImprove(config) {
|
|
11
|
+
return (pi) => {
|
|
12
|
+
// The current session's end: a scan in flight stops with it.
|
|
13
|
+
let shutdown = new AbortController();
|
|
14
|
+
pi.on("session_start", () => {
|
|
15
|
+
if (shutdown.signal.aborted)
|
|
16
|
+
shutdown = new AbortController();
|
|
17
|
+
});
|
|
18
|
+
pi.on("session_shutdown", () => shutdown.abort());
|
|
19
|
+
let busy = false;
|
|
20
|
+
pi.registerCommand("selfimprove", {
|
|
21
|
+
description: "QuickReview: scan this repo, then have this session's agent fix the findings",
|
|
22
|
+
handler: async (args, ctx) => {
|
|
23
|
+
if (busy) {
|
|
24
|
+
ctx.ui.notify("/selfimprove is already running in this session", "warning");
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
busy = true;
|
|
28
|
+
try {
|
|
29
|
+
const agentDir = config.agentDir ?? getAgentDir();
|
|
30
|
+
const host = {
|
|
31
|
+
cwd: ctx.cwd,
|
|
32
|
+
env: config.env,
|
|
33
|
+
home: config.home,
|
|
34
|
+
piVersion: config.piVersion ?? "",
|
|
35
|
+
agentDir,
|
|
36
|
+
auth: hostAuth(ctx, agentDir),
|
|
37
|
+
runner: config.runner,
|
|
38
|
+
shutdown: shutdown.signal,
|
|
39
|
+
};
|
|
40
|
+
await runSelfImproveCommand(args.trim(), host, sessionUi(pi, ctx, config.print));
|
|
41
|
+
}
|
|
42
|
+
finally {
|
|
43
|
+
busy = false;
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=selfimprove.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selfimprove.js","sourceRoot":"","sources":["../../extensions/selfimprove.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,8EAA8E;AAC9E,+EAA+E;AAC/E,2EAA2E;AAC3E,wDAAwD;AACxD,OAAO,EACL,WAAW,GAGZ,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,uDAAuD,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAe9D,wEAAwE;AACxE,MAAM,UAAU,iBAAiB,CAAC,MAAyB;IACzD,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,6DAA6D;QAC7D,IAAI,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YAC1B,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAAE,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAClD,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE;YAChC,WAAW,EAAE,8EAA8E;YAC3F,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,GAA4B,EAAE,EAAE;gBAC5D,IAAI,IAAI,EAAE,CAAC;oBACT,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,iDAAiD,EAAE,SAAS,CAAC,CAAC;oBAC5E,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,WAAW,EAAE,CAAC;oBAClD,MAAM,IAAI,GAAe;wBACvB,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,GAAG,EAAE,MAAM,CAAC,GAAG;wBACf,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;wBACjC,QAAQ;wBACR,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;wBAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,QAAQ,EAAE,QAAQ,CAAC,MAAM;qBAC1B,CAAC;oBACF,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACnF,CAAC;wBAAS,CAAC;oBACT,IAAI,GAAG,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
|