{"repo":"NousResearch/hermes-agent","public_id":"107440","display_label":"Hermes state.db writer conflicts and uninspectable-holder scoping","summary":"These items address a bug where the uninspectable-holder fallback incorrectly identifies Hermes instances under different HERMES_HOME paths, and related work to prevent multiple unintended writers to state.db from various system components.","subsystem":null,"counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":108076,"merged_at":"2026-09-11T13:21:49+00:00"},"resolution":{"state":"resolved","by":"pr-108076"},"freshness":{"state":"verified","last_verified_at":"2026-09-11T13:21:49+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":102120,"pr_number":108076,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-11T13:21:49+00:00"},{"issue_number":102589,"pr_number":108076,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-11T13:21:49+00:00"},{"issue_number":107440,"pr_number":108076,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-11T13:21:49+00:00"},{"issue_number":107688,"pr_number":108076,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-11T13:21:49+00:00"}],"members":[{"kind":"issue","number":107440,"title":"[Bug]: uninspectable-holder fallback counts a genuine second Hermes instance under a different HERMES_HOME as a state.db holder, permanently deferring stale-FTS repair","url":null,"state":"closed"},{"kind":"pr","number":105428,"title":"fix(state): scope uninspectable-holder fallback to the instance's own HERMES_HOME","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"902eccae3f","number":0},{"kind":"pr","value":"#108076","number":108076}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":108076,"title":"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)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["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"]}],"trust":{"default_tier":"verified","includes_suggested":false}}