fix(bootstrap): clarify shebang fallback precedence + tighten test setup
Addresses review feedback on PR #1817: 1. Extend the `_agent_dir_from_hermes_cli` docstring to spell out that the shebang fallback is a last-resort discovery step, not an override. Stale clones in known candidate paths still win — same precedence as today, but now documented so a future maintainer doesn't get the wrong idea. 2. Drop the misleading "install exists but no run_agent.py" comment in `test_returns_none_when_shebang_interpreter_does_not_walk_to_run_agent`. The test exercises a shebang pointing at /usr/bin/python3 whose parents never reach a run_agent.py — it doesn't actually need a fake install dir at all. Renamed for accuracy and removed the unused _make_agent_install call.
This commit is contained in:
committed by
nesquena-hermes
parent
9f72472896
commit
b7ed4dca3e
@@ -102,6 +102,12 @@ def _agent_dir_from_hermes_cli() -> Path | None:
|
||||
`run_agent.py` recovers the install root regardless of where the user
|
||||
chose to clone the agent (e.g. ~/Projects/GitHub/hermes-agent), which
|
||||
the hard-coded candidate list in :func:`discover_agent_dir` cannot.
|
||||
|
||||
Last-resort only: this is invoked after every explicit candidate
|
||||
(`HERMES_WEBUI_AGENT_DIR`, `$HERMES_HOME/hermes-agent`, etc.) has missed.
|
||||
A stale clone in a known location still wins over the live `hermes` CLI
|
||||
— that's intentional, since the candidate list is treated as
|
||||
authoritative when present, and matches existing behavior.
|
||||
"""
|
||||
hermes_path = shutil.which("hermes")
|
||||
if not hermes_path:
|
||||
|
||||
Reference in New Issue
Block a user