github nesquena/hermes-webui v0.51.14
v0.51.14 — 4-PR contributor batch (#1756, #1757, #1760, #1761)

2 hours ago

v0.51.14 — 4-PR contributor batch

🐛 Fixed

  • #1760 by @ai-ag2026 — Preserve pending user turn on stream errors. Closes #1361. Reconciliation in api/streaming.py: user turn is appended (with timestamp + attachments) BEFORE runtime state is cleared on apperror/outer-Exception paths. Includes dedup against eager-checkpointed messages.
  • #1761 by @dso2ng — Scope terminal stream cleanup to owner session (refs #1694). Centralizes owner-only cleanup behind helpers in static/messages.js. Auto-fix at stage: restored !INFLIGHT[S.session.session_id] permissive-fallback disjunct from PR #1753. Co-authored-by attribution added.
  • #1756 by @ng-technology-llc — Isolate profile cookie per webui instance via WEBUI_PROFILE_COOKIE_NAME env var. Closes #803. Default cookie name unchanged for backwards compat.
  • #1757 by @skspade — Tri-state gateway status. Replaces bool(identity_map) running signal with agent_health.build_agent_health_payload(). Frontend distinguishes green/amber/red states.

🧪 Tests

4642 → 4662 collected (+20 across 4 new test files). 4649 passed, 0 failed.

✅ Pre-release verification

  • All 4 PRs CI-green individually or rebased clean.
  • Auto-fix on #1761 verified by 9-test pass before merge.
  • All JS files syntax-clean.
  • Browser API sanity (11/11 endpoints) — all pass.
  • Opus advisor: SHIP all 4, 0 MUST-FIX, 0 SHOULD-FIX. Two NICE-TO-HAVE coverage gaps absorbed in-release as ~30 LOC of defensive structural-grep regression tests.

🙏 Closes

  • #803 (cookie isolation)
  • #1361 (cancel data loss)
  • #1694 (terminal cleanup ownership — narrow slice; broader umbrella stays open for follow-up)

Full Changelog: v0.51.13...v0.51.14

Don't miss a new hermes-webui release

NewReleases is sending notifications on new releases.