SQLite state.db concurrent-write and locking fixes
Cluster 102589. Data as of
Nothing open on GitHub. Fix merged in #108076 on 11 Sep 2026. Check it covers your case.
The short answer
- Known?
- Yes. 4 related items grouped here, 1 issue already closed.
- Fix event
- A fix was merged to main in PR #108076. Check it covers your case. No release data is tracked.
- Tracker
- The maintainers' tracker marks this
resolved, deciding PR #108076. That is separate from the fix event. - Still open
- Nothing open on GitHub.
These issues and fixes address multiple sources of unintended concurrent writes and lock conflicts on state.db, including lifecycle guard raw-opens bypassing POSIX locks, WAL split-brain conditions, and serialization of SQLite access across cron, gateways, dashboard, and doctor.
Open issues0
Open PRs0
Fixes on record
-
#108076 state.db no longer gets a second writer from profile gateways, the dashboard, the lifecycle guard or doctor --fix (#102120 #107688 #102589 #107440; salvage #103489 #102682 #108012 #105428)
files:
contributors/emails/[redacted:email],cron/lifecycle_guard.py,gateway/hosted_room_policy_checkpoint.py,gateway/hosted_rooms.py,hermes_cli/doctor_state.py,hermes_cli/web_server_lifecycle.py,hermes_state_holders.py,tests/cron/test_lifecycle_guard_live_db.py,tests/gateway/test_hosted_rooms.py,tests/hermes_cli/test_doctor_wal_holder_guard.py,tests/hermes_cli/test_web_server.py,tests/state/test_fts_holder_instance_scope.py,tests/tui_gateway/test_groups_methods.py,tests/tui_gateway/test_hosted_room_service.py,tui_gateway/hosted_room_service.py
2 PRs closed without merging
From the close comments: done elsewhere 1 · merged via another change 1
Closed issues · 1
- Closed#102589cron/lifecycle_guard raw-opens state.db when a command mentions its path, dropping the gateway's POSIX locks -> WAL split-brain
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.50: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36.1.00means 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 LabAt a glance
- Merged PRs
- #108076
- Closed issues
- 1
- Attempts
- 2 PRs closed without merging
- Fix link checked
- 11 Sep 2026