{"repo":"NousResearch/hermes-agent","public_id":"69645","display_label":"Desktop RAF loop and render churn fixes","summary":"These items address continuous animation frame loops running unnecessarily on desktop, particularly when terminal and pet roam features are active. The work includes stopping idle RAF loops and reducing render churn to maintain smoother frame rates under load.","subsystem":"apps/desktop","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":72388,"merged_at":"2026-07-27T02:44:52+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-07-27T02:44:52+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":69016,"pr_number":72388,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-07-27T02:44:52+00:00"},{"issue_number":69645,"pr_number":72388,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-07-27T02:44:52+00:00"}],"members":[{"kind":"issue","number":69645,"title":"Desktop keeps continuous RAF loops alive with terminal and pet roam enabled","url":null,"state":"closed"},{"kind":"pr","number":69827,"title":"fix(desktop): stop idle animation frame loops","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#72388","number":72388}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":72388,"title":"perf(desktop): hold 60fps under load — salvage three render-churn fixes + finish the selector sweep","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/electron/main.ts","apps/desktop/electron/session-windows.test.ts","apps/desktop/electron/session-windows.ts","apps/desktop/src/app/chat/composer/status-stack/index.tsx","apps/desktop/src/app/chat/session-tile.tsx","apps/desktop/src/app/model-picker-overlay.tsx","apps/desktop/src/app/pet-overlay/pet-overlay-app.tsx","apps/desktop/src/app/right-sidebar/terminal/persistent.test.tsx","apps/desktop/src/app/right-sidebar/terminal/persistent.tsx","apps/desktop/src/app/session/hooks/use-message-stream/delta-flush.test.tsx","apps/desktop/src/app/session/hooks/use-session-state-cache.ts","apps/desktop/src/app/shell/hooks/use-statusbar-items.tsx","apps/desktop/src/components/assistant-ui/thread-remount.test.tsx","apps/desktop/src/components/assistant-ui/thread/index.tsx","apps/desktop/src/components/pet/pet-sprite.test.tsx","apps/desktop/src/components/pet/pet-sprite.tsx","apps/desktop/src/components/pet/use-pet-roam.test.tsx","apps/desktop/src/components/pet/use-pet-roam.ts","apps/desktop/src/global.d.ts","apps/desktop/src/lib/renderer-loop-pause.ts","apps/desktop/src/store/composer-status.ts","apps/desktop/src/store/session-states.ts"]}],"trust":{"default_tier":"verified","includes_suggested":false}}