github nesquena/hermes-webui v0.50.270
v0.50.270 — Bootstrap launcher import validation

latest release: v0.50.271
3 hours ago

v0.50.270 — Bootstrap launcher import validation

Single contributor PR completing the Bug #1 family from issue #1458. v0.50.269's #1478 fixed the supervisor-respawn loop; this release fixes the start-healthy-then-cryptic-fail mode.

Highlights

Validate launcher Python can import the agent (#1315 by @ccqqlo) — pre-fix, the WebUI would start, report /health 200 OK, then 500 the first chat with a cryptic AIAgent not available error if the discovered launcher Python had yaml but not run_agent.AIAgent on its import path. New _python_can_run_webui_and_agent() helper subprocess-imports both; ensure_python_has_webui_deps() prefers the agent venv when the launcher can't import AIAgent, falls back to local venv with pip install only if needed, and raises a clear RuntimeError pointing at HERMES_WEBUI_PYTHON if no interpreter on the system can do both.

Bug #1 of #1458 is now closed across both v0.50.269 (supervisor crash loop) and v0.50.270 (start-healthy-then-cryptic-fail). Bugs #2 (state.db FD leak) and #3 (HTTP-unhealthy wedge) under #1458 remain open awaiting diagnostic data.

Maintainer-applied auto-rebase + auto-fix

Three commits absorbed into ccqqlo's branch per the May 2 2026 auto-rebase policy, all preserving attribution via Co-authored-by: ccqqlo trailers:

  1. Rebase compatibility (widen test stubs from #1478)
  2. CI fix (sidestep venv.EnvBuilder.create() in fail-loud test)
  3. Opus advisor follow-up (PYTHONPATH prepend documentation comment)

Test results

  • pytest tests/ — 3849 passed (was 3847; +2 from #1315)
  • QA harness — 20/20 passed
  • CI on stage-270 — green across Python 3.11 / 3.12 / 3.13
  • Opus advisor — verdict ship as-is, all 5 verification questions checked out clean

Contributors

Thanks to @ccqqlo for the focused diagnosis on this one — the "fail loudly during bootstrap instead of starting healthy and later returning AIAgent not available" framing in the original PR description was exactly the right shape.

Don't miss a new hermes-webui release

NewReleases is sending notifications on new releases.