{"repo":"NousResearch/hermes-agent","public_id":"58327","display_label":"Tool call ID duplication after context compression on strict providers","summary":"These members center on one theme: context compression or compaction can leave the tool message chain invalid, with an error about 'tool' messages needing a preceding 'tool_calls' message, or with duplicate tool_call_ids on strict providers. One is a bug report and the others are pull requests proposing deduplication of tool_call_ids, with two having identical titles.","subsystem":null,"counts":{"members":5,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":3},"landed_fix":null,"resolution":{"state":"resolved","by":"pr-58350"},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[],"members":[{"kind":"issue","number":58327,"title":"[Bug]: Context compression breaks tool message chain, causing \"role 'tool' must be a response to a preceding message with 'tool_calls'\" on strict providers","url":null,"state":"closed"},{"kind":"pr","number":58350,"title":"fix(agent): deduplicate tool_call_id across pre-API sanitizers (#58327)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":58362,"title":"fix(agent): dedup duplicate tool_call_id after compaction (#58327)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#58350","number":58350},{"kind":"pr","value":"#58327","number":58327}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":60270,"title":"fix(compression): dedup duplicate tool_call_ids to prevent HTTP 400 on strict providers","url":null,"state":"closed","close_reason":{"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":60398,"title":"fix(compression): dedup duplicate tool_call_ids to prevent HTTP 400 on strict providers","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"dba585c1794e0c5dc4409c6c60996046e2005063","number":0},{"kind":"pr","value":"#58350","number":58350},{"kind":"pr","value":"#58327","number":58327}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}