{"repo":"NousResearch/hermes-agent","public_id":"36644","display_label":"Kanban connect() flock hang fix iterations","summary":"A bug was identified where kanban_db.connect() could hang indefinitely due to an unbounded fcntl.flock(LOCK_EX) call under concurrent access. Several follow-up fixes iterated on bounding, salvaging, and ultimately skipping the cross-process init lock to address the hang.","subsystem":"gateway","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":50353,"merged_at":"2026-06-21T19:43:41+00:00"},"resolution":{"state":"resolved","by":"pr-50353"},"freshness":{"state":"verified","last_verified_at":"2026-06-21T19:43:41+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":36644,"pr_number":50353,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-06-21T19:43:41+00:00"}],"members":[{"kind":"issue","number":36644,"title":"[Bug]: Kanban dispatcher hangs forever on an unbounded fcntl.flock(LOCK_EX) in kanban_db.connect() under concurrent board access","url":null,"state":"closed"},{"kind":"pr","number":37216,"title":"fix(kanban): skip cross-process flock on steady-state connect() (#36644)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"84ba83b09ad1f480dbf4186ec7812798853eeac9","number":0},{"kind":"pr","value":"#36644","number":36644}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":50353,"title":"fix(kanban): bound the cross-process init lock so connect() can't hang forever","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/kanban_db.py","tests/hermes_cli/test_kanban_db.py","tests/hermes_cli/test_kanban_init_lock_bounded.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}