Skip to content

fix: resolve runtime stability issues across core, web, delegate, and browser tools (salvage #4828)#4843

Merged
teknium1 merged 2 commits into
mainfrom
hermes/hermes-a82207c8
Apr 3, 2026
Merged

fix: resolve runtime stability issues across core, web, delegate, and browser tools (salvage #4828)#4843
teknium1 merged 2 commits into
mainfrom
hermes/hermes-a82207c8

Conversation

@teknium1

@teknium1 teknium1 commented Apr 3, 2026

Copy link
Copy Markdown
Contributor

Summary

Salvage of PR #4828 by @Dusk1e with completion of the browser_tool profile isolation fix.

Four surgical bugfixes for runtime stability issues found during a stability audit:

Changes (from #4828)

1. Fix unbounded WAL file growth on SessionDB.close() (hermes_state.py)
A duplicate close() at line 352 silently overrode the WAL-checkpointing version at line 238. Python uses the last definition, so the checkpoint was never performed. Removed the duplicate.

2. Fix TypeError crash in chunked web content synthesis (tools/web_tools.py)
When both synthesis LLM calls return reasoning-only responses, final_summary stays None and len(final_summary) crashes. Added explicit None guard with fallback to concatenated chunk summaries.

3. Fix silent memory loss in single-task delegation (tools/delegate_tool.py)
Memory notification referenced tasks (raw input, None in single-task mode) instead of task_list (normalized list). TypeError silently swallowed by except Exception: pass — memory provider notifications never fired for single-task delegations.

4. Fix profile isolation in browser tool config (tools/browser_tool.py)
Hardcoded Path(os.environ.get("HERMES_HOME", Path.home() / ".hermes")) pattern instead of get_hermes_home(). Breaks profile isolation when using hermes -p <profile>.

Follow-up fix (our addition)

The original PR fixed 4 of 7 hardcoded HERMES_HOME instances in browser_tool.py. Our follow-up commit completes the remaining 3:

  • _launch_local_browser() PATH setup
  • _start_recording() config read
  • _cleanup_old_recordings() path

Test results

  • 383 directly related tests: all passed
  • Full suite: 7,894 passed, 19 failed (all pre-existing, unrelated)

Closes #4828

Dusk1e and others added 2 commits April 3, 2026 12:27
…rdcoded HERMES_HOME instances

The original PR fixed 4 of 7 instances. This fixes the remaining 3:
- _launch_local_browser() PATH setup (line 908)
- _start_recording() config read (line 1545)
- _cleanup_old_recordings() path (line 1834)
@teknium1 teknium1 merged commit 4979d77 into main Apr 3, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants