{"repo":"NousResearch/hermes-agent","public_id":"1144","display_label":"Gateway restart orphans background processes and delegations","summary":"Multiple issues and fixes address how hermes-gateway loses track of in-flight delegated subagents and background processes when it restarts or shuts down. Work spans SQLite persistence for delegation state, subagent cancellation on shutdown, and related recovery improvements.","subsystem":"agent","counts":{"members":13,"open_issues":3,"open_issues_distinct":3,"open_prs":0,"closed_issues":3,"merged_prs":1,"attempt_prs":6},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":1481},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"stale","last_verified_at":"2026-03-16T06:01:57+00:00","is_stale":true},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.11282051282051284},"fix_edges":[{"issue_number":1144,"pr_number":1481,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false}],"members":[{"kind":"issue","number":1144,"title":"Background processes are lost when hermes-gateway restarts","url":null,"state":"closed"},{"kind":"issue","number":16946,"title":"feat: persistent history for background tasks (finished tasks archive)","url":null,"state":"open"},{"kind":"issue","number":26315,"title":"[Bug]: Gateway restart orphans in-flight delegate subagents — 12+ min timeout","url":null,"state":"closed"},{"kind":"issue","number":31980,"title":"Background terminal processes lose tracking after gateway restart","url":null,"state":"open"},{"kind":"issue","number":48864,"title":"fix(shadow_clone): persist in-flight delegation tracking to SQLite — survive gateway restarts","url":null,"state":"open"},{"kind":"issue","number":48906,"title":"feat(delegation): shadow_clone SQLite persistence — in-flight tracking survives gateway restart","url":null,"state":"closed"},{"kind":"pr","number":1146,"title":"Fix Telegram topic routing for background process updates","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#1481","number":1481}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":1481,"title":"fix: make hermes update respect branch upstream","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/run.py","tools/terminal_tool.py"]},{"kind":"pr","number":26330,"title":"fix(gateway): interrupt delegated subagents on shutdown","url":null,"state":"closed","close_reason":{"category":"silent_close","implication":"active"},"merged":false},{"kind":"pr","number":26333,"title":"fix(gateway): cancel in-flight delegate subagents during shutdown/restart","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#26330","number":26330},{"kind":"pr","value":"#26330","number":26330},{"kind":"pr","value":"#26330","number":26330}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":26345,"title":"fix(gateway): cancel delegate subagents on shutdown to prevent orphaning","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#26345","number":26345},{"kind":"pr","value":"#26315","number":26315},{"kind":"pr","value":"#26358","number":26358},{"kind":"pr","value":"#26315","number":26315},{"kind":"pr","value":"#26330","number":26330},{"kind":"pr","value":"#26333","number":26333},{"kind":"pr","value":"#26358","number":26358},{"kind":"pr","value":"#26358","number":26358},{"kind":"pr","value":"#26358","number":26358},{"kind":"pr","value":"#26330","number":26330},{"kind":"pr","value":"#26358","number":26358},{"kind":"pr","value":"#26333","number":26333}],"category":"wontfix_bydesign","implication":"wontfix"},"merged":false},{"kind":"pr","number":26358,"title":"fix(gateway): force-release HTTP clients on shutdown to unstick orphaned subagents","url":null,"state":"closed","close_reason":{"category":"stale_abandoned","implication":"active"},"merged":false},{"kind":"pr","number":46475,"title":"feat: async shadow clone delegation (background=True) + SQLite persistence","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"a879cca8a","number":0}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true}],"trust":{"default_tier":"verified","includes_suggested":false}}