Skip to content

fix(cli): prefer active checkout for update banner - #7303

Closed
MadKangYu wants to merge 7 commits into
NousResearch:mainfrom
MadKangYu:fix/update-banner-runtime
Closed

fix(cli): prefer active checkout for update banner#7303
MadKangYu wants to merge 7 commits into
NousResearch:mainfrom
MadKangYu:fix/update-banner-runtime

Conversation

@MadKangYu

@MadKangYu MadKangYu commented Apr 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • prefer the currently executing Hermes checkout when resolving update-banner git state
  • keep ~/.hermes/hermes-agent as a fallback for default installs
  • add split-runtime regression coverage so a stale contributor checkout cannot poison the banner
  • fix the Linux systemd update-restart test to patch is_linux explicitly on macOS runners

Notes

  • This PR is the correctness follow-up to fix(cli): add update check mode #7299.
  • It matters when operators keep a clean runtime checkout and a separate contributor checkout under ~/.hermes/hermes-agent.

Testing

  • cd /Users/yu/.hermes/hermes-agent-update-banner && /Users/yu/.hermes/hermes-agent/venv/bin/python -m pytest -q tests/hermes_cli/test_cmd_update.py tests/hermes_cli/test_update_check.py tests/hermes_cli/test_update_gateway_restart.py
  • result: 43 passed

@MadKangYu
MadKangYu force-pushed the fix/update-banner-runtime branch from 6297347 to abb6dd2 Compare April 10, 2026 18:37
@MadKangYu
MadKangYu marked this pull request as ready for review April 10, 2026 18:47
@MadKangYu

Copy link
Copy Markdown
Contributor Author

Maintainer note: local targeted verification for this branch is green. Command run: pytest -q tests/hermes_cli/test_cmd_update.py tests/hermes_cli/test_update_check.py tests/hermes_cli/test_update_gateway_restart.py. Result: 43 passed. The failing GitHub test run looks like broader repo baseline instability (AIAgent.request_overrides, GatewayRunner._session_model_overrides, voice-mode/config-version failures) rather than a regression from this banner/runtime-correctness follow-up.

@alt-glitch alt-glitch added type/bug Something isn't working P3 Low — cosmetic, nice to have comp/cli CLI entry point, hermes_cli/, setup wizard labels Apr 29, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Related to #11225 and #6330 — same update-banner checkout resolution issue.

@alt-glitch

Copy link
Copy Markdown
Collaborator

Related to #11225 and #6330.

@teknium1

Copy link
Copy Markdown
Contributor

Thanks for the focused regression report. This is already implemented on main, so this PR is being closed as implemented.

  • hermes_cli/banner.py:351-360 now resolves the executing checkout first and only falls back to $HERMES_HOME/hermes-agent when the runtime location is not a git checkout.
  • hermes_cli/banner.py:372-383 applies the same ordering to banner git-state and release-tag resolution.
  • Commit cca2869d78388e049ff1116e420b7209643a9c15 shipped this exact stale-profile-checkout fix; it is contained in release v2026.5.16.
  • The member references to fix: use active checkout for update checks #11225 and fix(banner): prefer installed repo path in check_for_updates #6330 describe the same resolved checkout-selection behavior.

Automated hermes-sweeper review.

@teknium1 teknium1 closed this Jul 12, 2026
@teknium1 teknium1 added the sweeper:implemented-on-main Sweeper: behavior already present on current main label Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/cli CLI entry point, hermes_cli/, setup wizard P3 Low — cosmetic, nice to have sweeper:implemented-on-main Sweeper: behavior already present on current main type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants