{"repo":"NousResearch/hermes-agent","public_id":"116682","display_label":"Prevent duplicate managed router port binding","summary":"These items address a race condition where two local runtime desktop backends booting simultaneously both attempt to bind port 18434 and start separate managed routers. The work involves serializing the managed runtime boot process across processes so only one router starts.","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":117600,"merged_at":"2026-09-20T22:53:26+00:00"},"resolution":{"state":"resolved","by":"pr-117600"},"freshness":{"state":"verified","last_verified_at":"2026-09-20T22:53:26+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":116682,"pr_number":117600,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-20T22:53:26+00:00"}],"members":[{"kind":"issue","number":116682,"title":"Local runtime: two desktop backends booting together both bind 18434 and run two managed routers (cross-process cousin of #113325)","url":null,"state":"closed"},{"kind":"pr","number":116742,"title":"fix(local-runtime): serialize managed runtime boot across processes","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"56b7a0fb37","number":0},{"kind":"pr","value":"#117600","number":117600}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":117600,"title":"fix(local-runtime): two backends booting together start one managed router, not two on 18434 (#116682, salvage #116742)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/local_runtime/bootstrap.py","tests/hermes_cli/test_local_runtime.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}