fix: Honcho per-session uses stable session ID across WebUI turns — v0.50.155 (closes #855)
Pass gateway_session_key=session_id to AIAgent from streaming.py so Honcho per-session strategy pins to stable WebUI session ID rather than creating a new Honcho session each turn.
This commit is contained in:
parent
e151665131
commit
96cb880a12
2 changed files with 11 additions and 0 deletions
|
|
@ -1,5 +1,10 @@
|
|||
# Hermes Web UI -- Changelog
|
||||
|
||||
## [v0.50.155] — 2026-04-22
|
||||
|
||||
### Fixed
|
||||
- **Honcho per-session memory uses stable session ID across WebUI turns** — `api/streaming.py` now passes `gateway_session_key=session_id` to `AIAgent` (defensive, same pattern as `api_mode`/`credential_pool`). Without this, Honcho's `per-session` strategy created a new Honcho session on each streaming request. (`api/streaming.py`) (closes #855)
|
||||
|
||||
## [v0.50.154] — 2026-04-22
|
||||
|
||||
### Fixed
|
||||
|
|
|
|||
|
|
@ -1155,6 +1155,12 @@ def _run_agent_streaming(session_id, msg_text, model, workspace, stream_id, atta
|
|||
_agent_kwargs['acp_args'] = _rt.get('args')
|
||||
if 'credential_pool' in _agent_params:
|
||||
_agent_kwargs['credential_pool'] = _rt.get('credential_pool')
|
||||
# Pin Honcho memory sessions to the stable WebUI session ID.
|
||||
# Without this, 'per-session' Honcho strategy creates a new Honcho
|
||||
# session on every streaming request because HonchoSessionManager is
|
||||
# re-instantiated fresh each turn (#855).
|
||||
if 'gateway_session_key' in _agent_params:
|
||||
_agent_kwargs['gateway_session_key'] = session_id
|
||||
|
||||
agent = _AIAgent(**_agent_kwargs)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue