Repository navigation
fix(cli): j5 follows the server after an in-app update - #415
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. 🧰 Additional context used📚 Code guidelines (2)No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour. 📝 WalkthroughWalkthroughManaged startup now attempts to repoint the default ChangesManaged CLI launcher link
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~15 minutes Change: Bug fix · Severity of issue fixed: Medium 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Review panel (Opus 5.5) finding on #415: the `T3CODE_INSTALL_BIN_DIR` branch could never take effect, because only the service's server repoints and its unit never sets that variable. The helper now looks at `~/.local/bin/j5` only, and the JSDoc, FORK.md case 51 and D25 say so. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
8300d7e to
9151e02
Compare
|
Review panel (Opus 5.5 code review, Astra live test). One finding on this PR, verified by the builder and fixed in 9151e02:
Astra confirmed live, under the real
|
Review panel (Opus 5.5) finding on #415: the `T3CODE_INSTALL_BIN_DIR` branch could never take effect, because only the service's server repoints and its unit never sets that variable. The helper now looks at `~/.local/bin/j5` only, and the JSDoc, FORK.md case 51 and D25 say so. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
9151e02 to
3660934
Compare
Review panel (Opus 5.5) finding on #415: the `T3CODE_INSTALL_BIN_DIR` branch could never take effect, because only the service's server repoints and its unit never sets that variable. The helper now looks at `~/.local/bin/j5` only, and the JSDoc, FORK.md case 51 and D25 say so. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3660934 to
f65d007
Compare
…-app update Review panel (Opus 5.5) on #415: once `j5` follows the server, it notices that the unit still names the launcher the service was installed with, and reports the service as needing `j5 service install`. Accurate, and upstream's status logic is unchanged; recorded in FORK.md case 51 and D25. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Review panel, second pass (Opus 5.5, Astra). One consequence to record, done in 1bbf438:
Astra confirmed the repoint live again, including repairing a link it had deliberately made stale. |
1bbf438 to
3ddf490
Compare
3ddf490 to
f8e5871
Compare
Only `j5 update` repointed `~/.local/bin/j5`, so updating from the app left the command on the old version: the dogfood box ran a 0.0.44 CLI against a 0.0.47 server. The background service's server now repoints the installer's link at itself once it is the committed version, which covers a committed update, a rollback, and every service restart. It reuses upstream's repointLauncher and touches only a link that already points into this home's runtime. Closes #398. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Review panel (Opus 5.5) finding on #415: the `T3CODE_INSTALL_BIN_DIR` branch could never take effect, because only the service's server repoints and its unit never sets that variable. The helper now looks at `~/.local/bin/j5` only, and the JSDoc, FORK.md case 51 and D25 say so. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…-app update Review panel (Opus 5.5) on #415: once `j5` follows the server, it notices that the unit still names the launcher the service was installed with, and reports the service as needing `j5 service install`. Accurate, and upstream's status logic is unchanged; recorded in FORK.md case 51 and D25. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
f8e5871 to
cf64133
Compare
Stack 2/5. Depends on #414.
Problem
Only
j5 updaterepointed~/.local/bin/j5. An update from the app left the command on the old version. On the dogfood box the service ran 0.0.47 whilej5 --versionprinted 0.0.44, so agents called a CLI three versions behind their server. Closes #398.What changed
When it repoints: right after a background-service server finishes the launcher handshake (
prepareTrial), it repoints the installer's link at its own executable. That point is reached by:So the link always names the version the service runs, and existing installs fix themselves on their next update.
Reuse: it uses upstream's
repointLauncherandlauncherOwnsVersionsDirunchanged. It only touches the installer's default link,~/.local/bin/j5, and only when that link already points into this home's runtime. The service's environment never carries a customT3CODE_INSTALL_BIN_DIR, so a link placed elsewhere is left alone.Unchanged: foreground servers and the desktop app never repoint;
j5 updatealready does for CLI installs.How it was checked. I built this branch's executable and ran it under the real
__service-launcherin a scratch home. It moved a stale~/.local/bin/j5fromversions/0.0.46/t3to its ownversions/0.0.47/j5.Upstream impact
apps/server/src/serverRuntimeStartup.tsgets a three-line hook afterlauncher.prepareTrial, calling J5-ownedapps/server/src/j5/cli/launcherLink.ts.t3; give-back candidate for Upstream give-back backlog (hold until V2 merges upstream) #276).Checklist
launcherLink.test.ts(a stale link moves to the running version; a server outside the home's runtime leaves it alone)FORK.md(case text and file-table row)Built by Claude Opus 5.5 (1M context) in Claude Code.
🤖 Generated with Claude Code
Summary by CodeRabbit
j5command link to point to the version it is running, when the link already targets the managed runtime. This can keep the command aligned after an update or restart.