{"repo":"NousResearch/hermes-agent","public_id":"93053","display_label":"Fix cancellation source reporting for interrupted tools","summary":"These items address a bug where interrupted or cancelled tool/code executions reported incorrect cancellation sources, and includes a bound on background review replay. The fix ensures the real cancellation reason is surfaced accurately.","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":93354,"merged_at":"2026-08-24T01:25:20+00:00"},"resolution":{"state":"resolved","by":"pr-93354"},"freshness":{"state":"verified","last_verified_at":"2026-08-24T01:25:20+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":1.0},"fix_edges":[{"issue_number":93053,"pr_number":93354,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T01:25:20+00:00"},{"issue_number":93057,"pr_number":93354,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T01:25:20+00:00"}],"members":[{"kind":"issue","number":93053,"title":"execute_code reports 'user sent a new message' when no user message exists (background review cancellation interference)","url":null,"state":"closed"},{"kind":"pr","number":93089,"title":"fix(code-exec): report the real cancellation source for interrupted runs","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#93354","number":93354}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":93354,"title":"fix(agent): interrupted tools report the real cancellation source; background review replay is bounded (#93053, #93057)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/background_review.py","agent/conversation_loop.py","agent/interrupt_compat.py","agent/subagent_lifecycle.py","agent/tool_executor.py","agent/turn_context.py","hermes_cli/config_defaults.py","run_agent.py","tests/agent/test_compression_concurrent_fork.py","tests/agent/test_interrupt_compat.py","tests/agent/test_subagent_lifecycle.py","tests/run_agent/test_background_review_input_budget.py","tests/run_agent/test_interrupt_propagation.py","tests/run_agent/test_sequential_tool_timeout.py","tests/tools/test_approved_command_clean_slate.py","tests/tools/test_code_execution.py","tools/code_execution_tool.py","tools/interrupt.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}