{"repo":"NousResearch/hermes-agent","public_id":"129123","display_label":"Compaction alternation repair drops unaccounted rows","summary":"These issues and pull requests address a bug where rows dropped or merged by the alternation repair step during in-place compaction are not properly accounted for, causing incorrect row sequencing. Multiple fix attempts or iterations are represented across the members.","subsystem":null,"counts":{"members":6,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":4},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":130672},"resolution":{"state":"resolved","by":"pr-130672"},"freshness":{"state":"verified","last_verified_at":"2026-10-03T12:47:36+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[{"issue_number":125564,"pr_number":130672,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":129123,"pr_number":130672,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":129123,"title":"[Bug]: In-place compaction re-sequences a killed turn's tool call behind the running turn (rows the alternation repair drops are not accounted for)","url":null,"state":"closed"},{"kind":"pr","number":125567,"title":"fix(compression): in-place compaction accounts for every row the alternation repair merged or dropped","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6a1a762d02","number":0},{"kind":"pr","value":"#130672","number":130672}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":129124,"title":"fix(agent): account for dropped tool rows during compaction","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6a1a762d02","number":0},{"kind":"pr","value":"#130672","number":130672}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":129162,"title":"fix(compaction): account for alternation repair dropped rows (#129123)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6a1a762d02","number":0},{"kind":"pr","value":"#130672","number":130672}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":129749,"title":"fix(compression): account for rows the alternation repair drops or merges","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"6a1a762d02","number":0},{"kind":"pr","value":"#130672","number":130672}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":130672,"title":"In-place compaction no longer re-sends old prompts or re-orders a killed turn's tool call after a reload (#125564, #129123, salvage #129749, #125567)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/agent_runtime_helpers.py","agent/conversation_compression.py","agent/conversation_compression_archive.py","agent/message_metadata.py","contributors/emails/[redacted:email]","gateway/run.py","hermes_state.py","hermes_state_coverage.py","hermes_state_messages.py","tests/agent/test_in_place_merged_user_rows.py","tests/agent/test_message_sequence_repair.py","tests/hermes_state/test_repaired_history_commit_coverage.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}