{"repo":"NousResearch/hermes-agent","public_id":"41448","display_label":"Kanban dispatcher singleton and concurrency fixes","summary":"These issues and pull requests address a concurrency problem where multiple gateway instances can run competing kanban dispatchers simultaneously, leading to claim-reclaim churn and potential database corruption. Proposed fixes involve machine-global singleton locks and flock-based guards to enforce a single active dispatcher.","subsystem":"gateway","counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":49068,"merged_at":"2026-06-19T14:35:33+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-06-19T14:35:33+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":41448,"pr_number":49068,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-06-19T14:35:33+00:00"}],"members":[{"kind":"issue","number":41448,"title":"[Bug]: kanban dispatcher: gateway embeds dispatcher without singleton guard — two gateway instances cause claim-reclaim churn","url":null,"state":"closed"},{"kind":"pr","number":41679,"title":"fix(gateway): add flock-based singleton guard to kanban dispatcher","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"dfa561092","number":0},{"kind":"commit","value":"226e9322e","number":0},{"kind":"pr","value":"#44919","number":44919}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":44919,"title":"fix(kanban): machine-global singleton lock for the embedded dispatcher (#41448)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"dfa561092a","number":0},{"kind":"commit","value":"226e9322e1","number":0},{"kind":"pr","value":"#49068","number":49068}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":49068,"title":"fix(kanban): machine-global singleton lock for the embedded dispatcher (#41448)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/kanban_watchers.py","scripts/release.py","tests/gateway/test_kanban_watchers_mixin.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}