{"repo":"NousResearch/hermes-agent","public_id":"91762","display_label":"Tool results dropped by message sequence repair logic","summary":"These issues and fixes address a bug in repair_message_sequence where tool results are silently dropped when tool_call objects are SDK types rather than dicts, or when tool call IDs and call_ids appear in mismatched variants across pairing sites.","subsystem":"agent","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":93329,"merged_at":"2026-08-24T00:01:20+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-08-24T00:01:20+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":55626,"pr_number":93329,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T00:01:20+00:00"},{"issue_number":63000,"pr_number":93329,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T00:01:20+00:00"},{"issue_number":91762,"pr_number":93329,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-08-24T00:01:20+00:00"},{"issue_number":93251,"pr_number":93329,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T00:01:20+00:00"}],"members":[{"kind":"issue","number":91762,"title":"repair_message_sequence silently drops tool results when tool_calls are SDK objects (not dicts)","url":null,"state":"closed"},{"kind":"pr","number":91768,"title":"fix: repair_message_sequence drops tool results for SDK tool_call objects","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"faa2399e2b","number":0},{"kind":"pr","value":"#93329","number":93329},{"kind":"pr","value":"#56148","number":56148},{"kind":"pr","value":"#58287","number":58287},{"kind":"pr","value":"#66974","number":66974},{"kind":"pr","value":"#91768","number":91768},{"kind":"pr","value":"#93251","number":93251}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":93329,"title":"fix(agent): tool results survive divergent id/call_id variants at all four pairing sites (#93251, salvages #56148 #58287 #66974 #91768)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/agent_runtime_helpers.py","agent/context_compressor.py","tests/agent/test_context_compressor.py","tests/run_agent/test_message_sequence_repair.py","tests/run_agent/test_run_agent.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}