{"repo":"NousResearch/hermes-agent","public_id":"68979","display_label":"Desktop chat thread reordering bug after compression","summary":"These items concern a renderer-side bug where recent user messages are incorrectly re-stacked at the bottom of long threads following context compression, caused by broken ordinal matching during optimistic row preservation. The group covers the problem report and two related fixes scoping optimistic tail behavior.","subsystem":null,"counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":2,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":69682,"merged_at":"2026-07-22T23:32:20+00:00"},"resolution":{"state":"resolved","by":"pr-69682"},"freshness":{"state":"verified","last_verified_at":"2026-07-22T23:32:20+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":67603,"pr_number":69682,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-07-22T23:32:20+00:00"},{"issue_number":68979,"pr_number":69649,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-07-22T22:07:13+00:00"},{"issue_number":68979,"pr_number":69682,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-07-22T23:32:20+00:00"}],"members":[{"kind":"issue","number":68979,"title":"Desktop: long-thread reconciliation re-stacks recent user messages at thread bottom after context compression (ordinal matching breaks; renderer-only, DB is correct)","url":null,"state":"closed"},{"kind":"pr","number":68985,"title":"fix(desktop): bound optimistic user-row preservation to the in-flight tail (#68979)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#69682","number":69682},{"kind":"pr","value":"#68985","number":68985},{"kind":"pr","value":"#69649","number":69649}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":69649,"title":"fix(desktop): avoid duplicate inflight user rows on resume","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/e2e/fixtures.ts","apps/desktop/e2e/large-session-resume.spec.ts","apps/desktop/e2e/mock-server.ts","apps/desktop/e2e/scripts/seed_large_session.py","apps/desktop/src/app/session/hooks/use-session-actions/index.ts","apps/desktop/src/app/session/hooks/use-session-actions/utils.test.ts","apps/desktop/src/app/session/hooks/use-session-actions/utils.ts"]},{"kind":"pr","number":69682,"title":"fix(desktop): prevent stale optimistic tails after compression","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/src/app/session/hooks/use-session-actions/utils.test.ts","apps/desktop/src/app/session/hooks/use-session-actions/utils.ts"]}],"trust":{"default_tier":"verified","includes_suggested":false}}