abdb31cd99
`/model` fed `validate_requested_model()` a key resolved through `agent.secret_scope.get_secret`, which (multiplexing off) reads only `os.environ`. Hermes does not export `$HERMES_HOME/.env` into the process environment, so a `custom_providers` entry whose `key_env` lives only in `.env` probed `/v1/models` unauthenticated, got 401 and printed a spurious "could not reach this custom endpoint's model listing" note while chat worked fine. Resolve through `get_env_prefer_dotenv` — the chain `client_lifecycle` uses for the real request — when no profile scope is installed. With a scope installed or multiplexing active the scope stays authoritative: a scoped miss still returns "" and never borrows another profile's `.env`/process value. Slimmed from the contributor's two commits (same mechanism, fewer branches, tests trimmed to two invariants). Fixes #109315