Repository navigation
fix(server,app): own the tunnel client, clearer login and npm errors, stale grants - #85
Merged
Merged
Conversation
… stale grants - The CLI now owns frpc's lifetime for its data dir: a server killed hard left its frpc running (ppid 1) through restarts and `vana server stop`. The supervisor stops any frpc on <dataDir>/tunnel/frpc.toml when the server exits and before every (re)start; `vana server stop` stops it too. - `vana login` says "Your Personal Server is not running" when this account has a data dir here or a registration at the gateway, and keeps "No Personal Server found" for new accounts. - Installing the server runtime falls back to an npm on PATH when the one beside Node is missing or broken, and otherwise explains how to fix it (exit 6) instead of crashing with `spawn .../npm ENOENT`. - `vana app requests show|list` check each grant at the gateway and report revoked or replaced grants with live: false and a new `vana app request` as next; an unreachable gateway is reported as unverified. Claude-Session: https://claude.ai/code/session_01Fcv6uEy4zcXaigzDNxeW3j
The real-process supervisor tests sent kill -9 as soon as the fake server wrote its pid file, which it does just before its ready line. On a busy runner the kill could land in between: a server that dies before it is ready is a failed first start, which is never restarted, so the test waited 10s for a restart that could not come. Wait for server-ready too. Also bound the ps that a restart waits on. Claude-Session: https://claude.ai/code/session_01Fcv6uEy4zcXaigzDNxeW3j
github-actions Bot
pushed a commit
that referenced
this pull request
Oct 7, 2026
## [0.38.10](v0.38.9...v0.38.10) (2026-10-07) ### Bug Fixes * **server,app:** own the tunnel client, clearer login and npm errors, stale grants ([#85](#85)) ([0a7c784](0a7c784))
Contributor
|
🎉 This PR is included in version 0.38.10 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Four small fixes.
vana server stop. The CLI now owns frpc's lifetime for a data dir:startLocalServerstops any frpc whose command isfrpc -c <dataDir>/tunnel/frpc.tomlwhen the server exits and before every (re)start (the data dir lock is held, so such an frpc can only be stale).vana server stopstops it too, for the stopped server's dir or, with nothing running, this account's own dirs. Other data dirs (another account, Vana Desktop) never match. New modulesrc/personal-server/local/tunnel-process.ts.vana loginsays "Your Personal Server is not running." when this account has a data dir here or the gateway lists a registration for it (next:vana server start, with--networkwhen it lives on the other network, and the existing start offer at a terminal uses that network). "No Personal Server found" stays for new accounts.nvm install <version>, or set VANA_PDPP_NODE),server-failed/npm-missing, exit 6. A failingnpm cior native module check says where the log is instead of a stack.vana app requests showandlistcheck each grantId at the gateway. Revoked (revokedAt set) or replaced (grant scopes no longer cover the request's approved scopes) reportlive: false,data.grant.stateand a reason, with nextvana app request --scopes .... Gateway unreachable: stored status kept,grant.state: unverified. Approved scopes are no longer overwritten on later refreshes.Tests: unit tests for frpc matching and stopping, a real-process supervisor test (fake entry spawns a fake frpc, kill -9, restart reaps the orphan, stop reaps the new one), login message cases, npm fallback and missing npm, revoked / replaced / unverified grants. All with temp HOME and fake processes or gateway.
pnpm validategreen (738 tests).https://claude.ai/code/session_01Fcv6uEy4zcXaigzDNxeW3j