{"repo":"NousResearch/hermes-agent","public_id":"112420","display_label":"Compression stall loop fixes and cooldown logic","summary":"A bug where compaction made no progress caused repeated stalling and context rebuilding each turn. These members address recovery via fallback chains, deterministic fallback summaries, cooldown flooring, and skipping retries during cooldown.","subsystem":null,"counts":{"members":5,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":2,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":113157},"resolution":{"state":"resolved","by":"pr-113813"},"freshness":{"state":"verified","last_verified_at":"2026-09-17T15:59:52+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[{"issue_number":112387,"pr_number":113157,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":112420,"pr_number":113157,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":112420,"pr_number":113813,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":112420,"title":"[Bug]: Compaction stall (\"made no progress\") continues without compression — oversized context re-triggers compaction every turn; drifted system prompt rebuilt repeatedly","url":null,"state":"closed"},{"kind":"pr","number":112422,"title":"fix(compression): skip automatic retries during cooldown","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#113157","number":113157},{"kind":"pr","value":"#113813","number":113813},{"kind":"pr","value":"#113157","number":113157},{"kind":"pr","value":"#112420","number":112420},{"kind":"pr","value":"#113813","number":113813},{"kind":"pr","value":"#112420","number":112420}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":112504,"title":"fix(compression): floor stall cooldown at idle window and prune on no-progress","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"f59d973af6","number":0},{"kind":"commit","value":"0023b904e4a1","number":0},{"kind":"commit","value":"07c92d675a82","number":0},{"kind":"commit","value":"2d333e68b21a","number":0},{"kind":"pr","value":"#112420","number":112420},{"kind":"pr","value":"#113157","number":113157},{"kind":"pr","value":"#113813","number":113813},{"kind":"pr","value":"#114918","number":114918}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":113157,"title":"fix(compression): stalled summary route recovers on fallback_chain in the same turn; stall cooldown covers the idle window (#112387, #112420, salvage #112389, #112504)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/compression_facade.py","agent/context_compressor.py","agent/conversation_compression.py","run_agent.py","tests/agent/test_compression_attempt_lifecycle.py","tests/agent/test_compression_stall_fallback.py","website/docs/developer-guide/context-compression-and-caching.md"]},{"kind":"pr","number":113813,"title":"fix(compression): repeated summary stall commits the deterministic fallback summary instead of looping (closes remaining atoms of #112420)","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/AGENTS.md","agent/context_compressor.py","agent/context_compressor_summary.py","agent/conversation_compression.py","tests/agent/test_compression_stall_deterministic_fallback.py","website/docs/developer-guide/context-compression-and-caching.md"]}],"trust":{"default_tier":"verified","includes_suggested":false}}