{"repo":"NousResearch/hermes-agent","public_id":"69120","display_label":"Desktop streaming performance and transcript length costs","summary":"These issues and pull requests address performance problems in desktop streaming sessions, specifically that processing costs grew with transcript/history length. Work focuses on reducing redundant computation during streaming, such as re-extracting settled prompts and running timeline work unnecessarily.","subsystem":"apps/desktop","counts":{"members":6,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":3,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":71780},"resolution":{"state":"resolved","by":"pr-71835"},"freshness":{"state":"verified","last_verified_at":"2026-07-26T08:56:06+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[{"issue_number":69120,"pr_number":71780,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":69120,"pr_number":71789,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false},{"issue_number":69120,"pr_number":71835,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":69120,"title":"Desktop streaming cost grows with transcript length","url":null,"state":"closed"},{"kind":"pr","number":69151,"title":"fix(desktop): reduce long-history streaming work","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#71835","number":71835},{"kind":"pr","value":"#71789","number":71789},{"kind":"pr","value":"#71780","number":71780}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":71780,"title":"perf(desktop): make multitab streaming sessions fast","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/scripts/perf/scenarios/index.mjs","apps/desktop/scripts/perf/scenarios/multitab.mjs","apps/desktop/src/app/chat/index.tsx","apps/desktop/src/components/assistant-ui/thread/timeline.tsx","apps/desktop/src/components/pane-shell/pane-visibility.ts","apps/desktop/src/components/pane-shell/tree/renderer/tree-group.tsx"]},{"kind":"pr","number":71789,"title":"perf(desktop): stop the thread timeline working when nothing can see it","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/src/components/assistant-ui/thread/timeline-data.test.ts","apps/desktop/src/components/assistant-ui/thread/timeline-data.ts","apps/desktop/src/components/assistant-ui/thread/timeline-idle.test.tsx","apps/desktop/src/components/assistant-ui/thread/timeline.tsx"]},{"kind":"pr","number":71835,"title":"perf(desktop): make streaming cost independent of transcript length","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/scripts/perf/scenarios/index.mjs","apps/desktop/scripts/perf/scenarios/stream-history.mjs","apps/desktop/scripts/perf/scenarios/stream.mjs","apps/desktop/src/app/chat/runtime-repository.ts","apps/desktop/src/app/session/hooks/use-message-stream/index.ts","apps/desktop/src/app/session/hooks/use-message-stream/stream-flush.test.tsx","apps/desktop/src/lib/incremental-external-store-runtime.test.ts","apps/desktop/src/lib/incremental-external-store-runtime.ts"]},{"kind":"pr","number":128818,"title":"perf(desktop): stop re-extracting every settled prompt per streamed delta","url":null,"state":"closed","close_reason":{"category":"uncategorized","implication":"needs_llm"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}