{"repo":"NousResearch/hermes-agent","public_id":"120630","display_label":"Fix background job cleanup keyed by owner not container","summary":"A bug where `/stop`, `/new`, and the inactivity watchdog were failing to reap abandoned turn background jobs because cleanup was keyed on container rather than owner. The fix changes job reaping to use owner identity instead.","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":121380,"merged_at":"2026-09-24T10:34:07+00:00"},"resolution":{"state":"resolved","by":"pr-121380"},"freshness":{"state":"verified","last_verified_at":"2026-09-24T10:34:07+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":120630,"pr_number":121380,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-24T10:34:07+00:00"}],"members":[{"kind":"issue","number":120630,"title":"[Bug]: /stop, /new and the inactivity watchdog never reap the abandoned turn's background jobs (container key vs owner id)","url":null,"state":"closed"},{"kind":"pr","number":120631,"title":"fix(gateway): reap an abandoned turn's background jobs by owner, not container key","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"c2e0a745e0","number":0}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":121380,"title":"/stop and /new reap a turn's background jobs by owner (#120630, salvage #120631)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["tests/gateway/test_abandoned_turn_process_cleanup.py","tests/tools/test_oneshot_completion_linger.py","tools/process_registry.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}