Repository navigation
feat(paseo): bump pinned Paseo CLI to 0.15.0 - #560
Conversation
Advance the pinned `@getpaseo/cli` version from 0.12.0 to 0.14.0 (the current latest stable release published to the npm registry on 2026-10-31). Two-value edit per the kit's documented upgrade procedure (see `integrations/isolation/acq-kits/paseo/docs/decisions/install-at-startup.md`): - `spec.yaml`: `PASEO_CLI_VERSION="0.14.0"` - `paseo-start.sh`: comment + fallback default both updated Verified locally: - `npm install -g --ignore-scripts @getpaseo/[email protected]` installs cleanly - `paseo --version` reports `0.14.0` - Version-match check (installed == pinned) passes → no reinstall on warm start - All 16 paseo kit Node.js tests pass - `make validate` passes (47/47 patterns) Co-authored-by: OpenCode Agent <[email protected]>
basiliskus
left a comment
There was a problem hiding this comment.
Verdict: comment — 828c5bc1b8764b218a05f662d919be1a358d6151
No must-fix code findings. Minor: the PR body's version-match example uses unescaped capture parentheses with basic sed, so it fails with invalid reference \1 rather than producing the claimed match. Please paste the actual expression from integrations/isolation/acq-kits/paseo/files/home/paseo-start.sh:84, which correctly parses 0.14.0, and correct the verification transcript.
The 16 kit tests pass, but live 0.14.0 installation, daemon/UI startup, and project registration remain unverified. Repository validation was blocked by missing Python dependencies; GitHub reports no checks on this head.
Assisted-by: OpenCode [GPT 6.1 Sol] skill:change-review
Take main's current paseo kit files as the base (pin 0.13.0); the version bump is re-applied in the following commit.
Update PASEO_CLI_VERSION in the kit spec and the paseo-start.sh fallback default/header, plus the version-match test stubs. Co-authored-by: OpenCode Agent <[email protected]>
The bump edit dropped mode 100755; restore it so the file matches main. Co-authored-by: OpenCode Agent <[email protected]>
basiliskus
left a comment
There was a problem hiding this comment.
Verdict: approve — da9feb9c7a78678abda2c16a11fce5b95c3752b6
Must fix before merge: none. No findings.
Prior finding resolved: the verification example now matches integrations/isolation/acq-kits/paseo/files/home/paseo-start.sh:255 and independently returns 0.15.0.
Not verified: live installation, proxy/provider traffic, sandbox boot, upgrade/rollback and restart persistence. Local Python validation is dependency-blocked; raw CI confirms validation and tests on this head's merge commit.
Assisted-by: OpenCode [GPT 6.1 Sol] skill:change-review
🤖 I have created a release *beep* *boop* --- ## [1.19.0](v1.18.0...v1.19.0) (2026-11-05) ### Features * **oci-engine:** qualify bounded rootless resource controls ([#562](#562)) ([cf6d7a5](cf6d7a5)) * **opencode:** add live image-capability verification script (not yet run) ([#572](#572)) ([f0a951f](f0a951f)) * **paseo:** bump pinned Paseo CLI to 0.15.0 ([#560](#560)) ([0c4e1a8](0c4e1a8)) * **usai-catalog:** carry verified capability metadata through a catalog refresh ([#578](#578)) ([fcd94e5](fcd94e5)) * **usai-catalog:** publish verified image input modality for 12 USAi models ([#575](#575)) ([907d486](907d486)) * **usai-catalog:** single refresh entrypoint for the catalog and neutral artifacts ([#573](#573)) ([0c1b145](0c1b145)) ### Bug Fixes * **ci:** validate pending release comparisons against their commit ([#570](#570)) ([0961019](0961019)) * **deps:** update Ruff package and hook together to 0.17.3 ([#568](#568)) ([a6266dd](a6266dd)) * **opencode:** prepare agent-owned sandbox scratch directory ([#561](#561)) ([89a66b2](89a66b2)) * **paseo:** launch real opencode outside PID 1 ([#559](#559)) ([ce4aa08](ce4aa08)) * **paseo:** verify runtime identity without false orphan verdicts ([#567](#567)) ([1062244](1062244)) * **usai-catalog:** allow summary and title roles in catalog recommendations schema ([#551](#551)) ([ad2aadd](ad2aadd)) * **usai:** retire stale references to the removed model sync script ([#552](#552)) ([95be9b9](95be9b9)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
🤖: AI agent (First Mate), AI-assisted change (OpenCode). Human review required before merge.
Summary
Bumps the pinned
@getpaseo/cliversion in the Paseo acq-kit from 0.13.0 (currentmain) to 0.15.0 (npmlatest, published 2026-11-03). The PR began as a 0.12.0 -> 0.14.0 bump; it was brought up to date withmain(plaingit merge origin/main, no rebase/force-push) and retargeted to 0.15.0.Content Type
What changed
Per the kit's documented upgrade procedure (
integrations/isolation/acq-kits/paseo/docs/decisions/install-at-startup.md: "bump both together"):integrations/isolation/acq-kits/paseo/spec.yaml-PASEO_CLI_VERSION="0.15.0"integrations/isolation/acq-kits/paseo/files/home/paseo-start.sh- header comment and${PASEO_CLI_VERSION:-0.15.0}fallback default (exec bit preserved, mode 100755)integrations/isolation/acq-kits/paseo/tests/paseo-cli-path.test.mjs,tests/paseo-timing.test.mjs- the stubbedpaseo --versionoutput tracks the pin so the version-match (no-reinstall) paths are still exercisedgit diff origin/maintouches exactly these 4 files (5 lines +/-).Left alone on purpose:
PLAYBOOK_REF="v0.14.0"(playbook kits, unrelated),CHANGELOG.md(release-please), historical ADR text, andTROUBLESHOOTING.mdlines 338-346, which mention an old "pinned 0.3.1" (stale before this PR; not part of the pin procedure).Upstream changes 0.13.0 -> 0.15.0 (from the getpaseo/paseo GitHub release notes)
Nothing breaking for the kit was found, and the kit's interfaces behaved identically in the live run below.
0.13.1/0.13.2are mobile/UI fixes.0.14.0and0.15.0are mostly plugin, chat and mobile UI work. Items worth a reviewer's eye:HTTP_PROXY/HTTPS_PROXY/NO_PROXYsupport. The kit's daemon runs in sandboxes that set proxy variables, so outbound daemon traffic may now go through the proxy. Not exercised here (the isolated run had no proxy).config.json(new keys: speech/idle-cleanup, agent-resume, usage-check). A rollback of this PR on an existing sandbox should therefore remove or restore~/.paseo/config.json. The kit only writesdaemon.listen,daemon.relay.enabled,features.webUi.enabled,worktrees.root.bin/paseo,dist/utils/client.js(connectToDaemon,addProject), and the nested@getpaseo/server/dist/server/web-uibundle.Verification (what was actually run)
Isolated environment: separate
HOME,XDG_*,PASEO_HOMEand npm prefix under the worktreetmp/, a spare port (127.0.0.1:16767), a PID namespace (unshare --user --pid), no proxy, and no credentials. The live Paseo daemon was not touched.Install:
npm install -g --ignore-scripts --prefix <tmp>/npm-global @getpaseo/[email protected]->added 312 packages;paseo --version->0.15.0.Version-match logic, the exact expression from
paseo-start.shline 255 (POSIX basic sed with escaped groups):Live run of the real
paseo-start.sh(copied unmodified into the isolatedHOME), withPASEO_KIT_TIMING=1:install_begin->install_end(npm install of 0.15.0 by the script itself), thenconfig_end->supervisor_spawn.GET /api/health->{"status":"ok",...};GET /(web UI) -> HTTP 200 (3481 bytes).paseo daemon status:localDaemon: running,daemonVersion: 0.15.0,listen: 127.0.0.1:16767, relayenabled:false. The persistedconfig.jsonheld the kit's expected values (daemon.listen,daemon.relay.enabled=false,features.webUi.enabled=true).paseo-register-mounts.mjsran after health and loggedregistered prj_...for 6 project directories from the sandbox's real virtiofs mount, through 0.15.0'sdist/utils/client.jsconnectToDaemonandaddProject. A directaddProjectpluslistProjectscall also succeeded.install_beginevent, so no reinstall.paseo daemon stop->stopped, then the supervisor loop was killed; the port closed and no daemon processes were left.node --test integrations/isolation/acq-kits/paseo/tests/*.mjs-> 87 pass, 0 fail (re-run after the final commit).Python tooling in a venv outside the repo (
tmp/venv,pip install -e '.[dev]'):make validatein a clean checkout of this branch: all validators passed. (In the working tree it also scanned my gitignoredtmp/npm install and failed on third-party SKILL.md files; that is an artifact of the scratch dir, not of this change.)make validate-kits: all 11 acq-kits and 2 templates valid.make validate-provider-input-contract: OK.make scan-shell: 0 errors, 0 warnings.make generate-check: INDEX.yaml and CATALOG.md up to date.make test-kits: opencode 62/62, usai-provider 18/18, paseo 87/87, providers/usai 153/153.pytest -q: 779 passed.ruff check .reports 6 errors andruff format --check .reports 9 files to reformat. These are identical onorigin/main(checked on a cleanorigin/maincheckout, same ruff 0.17.3) and none are in files touched by this PR (they are inoci-engine/scripts/verify_resources.py,.agents/skills/secure-code-review/tests/fixtures/sample-code.py, and others).Not run: anything with a proxy (the daemon-wide proxy support above), a real
acq/microsandbox sandbox boot, agent sessions against a provider, terminal persistence across restart, and the 0.14.0 -> 0.15.0 in-place upgrade of an existing sandbox. The live check used the sandbox's own Linux environment, not a PID-1acq create.Safety Checklist
make validatepasses (clean checkout)Quality Checklist
Rollback
Revert this PR (pin returns to 0.13.0). On a sandbox that already ran 0.15.0, restore or remove
~/.paseo/config.jsonfirst, since upstream says newer config keys are not read by older versions.Security Impact
None to authentication, authorization or data handling in the kit. The install still runs with
--ignore-scriptsfrom the npm registry, with a pinned exact version; there are no new dependencies of our own. The 0.15.0 package adds no new direct dependencies compared with 0.14.0.Approval
Co-authored-by: OpenCode Agent [email protected]