NousResearch/hermes-agent

WAL/close race bugs and serialization fixes

Cluster 105567. Data as of

Nothing open on GitHub. Fix merged in #108082 on 11 Sep 2026. Check it covers your case.

The short answer

0open issues
0open PRs
3items grouped
Known?
Yes. 3 related items grouped here, 1 issue already closed.
Fix event
A fix was merged to main in PR #108082. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this resolved, deciding PR #108082. That is separate from the fix event.
Still open
Nothing open on GitHub.

These items address race conditions and false errors involving WAL generation probes, SessionDB close(), and related state.db locking or I/O error scenarios. They include a bug report, a serialization fix, and a broader remediation effort targeting several interconnected WAL-related issues.

Open issues0

No open issues.

Open PRs0

No open pull requests.

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #108082 state.db no longer wedges on a healthy WAL: OpenZFS/close() false DeletedWalGenerationError, unconfirmed-WAL read pool, transient read IOERR, stale lock banner (#107401 #105567 #86515 #100871 #108031, salvage #107411 #105578 #105711 #106958)

    merged to main

    files: agent/turn_explainers.py, contributors/emails/[redacted:email], contributors/emails/[email protected], gateway/run_notifications.py, hermes_state.py, hermes_state_dbfile.py, hermes_state_errors.py, hermes_state_readpool.py, hermes_state_wal.py, tests/gateway/test_session_db_warning_recheck.py, tests/hermes_state/test_deleted_wal_generation_guard.py, tests/hermes_state/test_read_path_transient_ioerr.py, tests/hermes_state/test_wal_active_confirmed.py, tests/run_agent/test_turn_completion_explainer.py, tests/test_hermes_state_wal_fallback.py

1 PR closed without merging

From the close comments: merged via another change 1

  • #105578 fix(state): serialize replaced/generation probe with close() in _execute_write (#105567) · merged via another change → d956e05, #108082
Closed issues · 1
  • Closed#105567[Bug]: clean SessionDB.close() racing append_message can trigger sticky DeletedWalGenerationError (synthetic repro)
How this cluster was grouped
  • Link evidence (structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
  • Pairwise link density 0.67: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. 1.00 means every pair is linked.

Pick up a Lab task

Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.

Open the Lab

At a glance

Merged PRs
#108082
Closed issues
1
Attempts
1 PR closed without merging
Fix link checked
11 Sep 2026

For your agent

The same facts, typed.