PR tracker chips show stale state — `state` cached at PR creation, never refreshed (hover card fetches live)
Describe the bug
PRs created during a desktop-app session are tracked as chips. Each chip's open/merged state is written once at PR-creation time into the per-session store and never refreshed — merged PRs keep rendering as open indefinitely, while the same chip's hover preview does a live GitHub fetch and correctly shows "Merged".
Environment
- Claude Code CLI 2.1.187
- Desktop app 1.19367.0
- macOS (Darwin 24.6.0)
Repro / evidence
- Have Claude create a PR in a desktop session → chip appears (state open).
- Merge the PR on GitHub.
- Hours later (including across app restarts) the chip still renders as open; hovering it shows the live GitHub card saying "Merged".
Render source: ~/Library/Application Support/Claude/claude-code-sessions/<workspace>/<session>/local_<id>.json → prs[] entries keep "state": "OPEN" from creation. The app actively rewrites this file (other fields update), but never re-polls prs[].state. The adjacent CI chip IS live, which makes it extra confusing: green checks + "open" on a merged PR.
Expected
Chip state refreshed on the same cadence as the CI chip / hover preview (or at least on app focus), or merged PRs visually marked / auto-cleared.
Workaround
Dismiss chips manually (×), or edit prs[].state in the session store file.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗