[BUG] Desktop activity dashboard streak/heatmap credits the session-start date, not each active calendar day - multi-day sessions wrongly break the streak
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The activity dashboard in the Claude Code Desktop app (the "What's up next" welcome screen with Sessions / Messages / Active days / Current streak / Longest streak / heatmap) appears to attribute a session's activity to a single date rather than to every calendar day on which messages were actually sent.
Hypothesis: the streak and heatmap credit the day a session STARTS, not each day the session is active. A single long-lived session that spans multiple calendar days therefore lands entirely on its start date, leaving the intervening days blank and breaking the streak - even though messages were genuinely sent on those days.
This disproportionately affects users who run long continuous sessions, which the worktree-isolated desktop workflow actively encourages.
Evidence
- I inadvertently ran one continuous session from Jun 9 into the early hours of Jun 11.
- That session contains a message timestamped Jun 10, 2026, 9:57 PM (local) - clear activity on the 10th.
- Despite that, the 10th is not credited as an active day, and my Current streak shows 0d. My Longest streak (30d) was effectively ended by a day I was demonstrably active.
Expected Behavior
Each calendar day on which at least one message is sent should count as an active day for the heatmap and streak, regardless of which day the containing session was started.
Actual Behavior
Days on which activity occurred within an already-running session are not counted. The streak breaks despite genuine daily activity.
Possible Secondary Factor
Worth checking whether day-bucketing uses UTC vs the user's local timezone. I'm in New Zealand (UTC+12), so late-evening local activity falls near or across a UTC date boundary, which could compound the mis-bucketing.
Environment
- Product: Claude Code Desktop app (macOS)
- Hardware: Apple Silicon (M2 Max)
- App version: Claude Desktop 1.11847.5
- Timezone: Pacific/Auckland (UTC+12)
What Should Happen?
Each calendar day on which at least one message is sent should count as an active day for the heatmap and streak, regardless of which day the containing session was started.
Error Messages/Logs
N/A - no error output. This is a silent miscount in the activity dashboard display, not a crash.
Steps to Reproduce
- Start a session shortly before midnight (local time).
- Keep working in that same session past midnight, into the next calendar day (and ideally a third day).
- Open the activity dashboard.
- Observe that only the session's start date is credited in the heatmap; the later day(s) show as inactive and the current streak resets.
Claude Model
Not sure / Multiple models
Is this a regression?
No, this never worked
Last Working Version
N/A
Claude Code Version
Claude Code 2.1.114
Platform
Other
Operating System
macOS
Terminal/Shell
Other
Additional Information
Auth/platform: Claude Pro subscription via the Claude Code Desktop app (not an Anthropic API key, Bedrock, or Vertex).
Reproduced in the Claude Code Desktop app (Code tab) GUI, not a terminal session.
Worth noting the user-impact angle: a streak counter punishing you for a technicality would likely do the opposite of what gamification is for.
<img width="627" height="463" alt="Image" src="https://github.com/user-attachments/assets/56e9d4a7-594e-4bff-bc91-3a0bbed2387e" />
<img width="879" height="346" alt="Image" src="https://github.com/user-attachments/assets/9d76b1f9-9ad6-4b3d-85af-fe50ee88f5b1" />
<img width="575" height="252" alt="Image" src="https://github.com/user-attachments/assets/727e833e-90e6-40ca-a262-e29d7a0234e9" />
<img width="538" height="272" alt="Image" src="https://github.com/user-attachments/assets/d7af32c5-241c-4a7e-a45f-bdf77f2ecac3" />
<img width="570" height="250" alt="Image" src="https://github.com/user-attachments/assets/62ce0816-337f-445c-a96c-46c7661635a2" />
<img width="467" height="222" alt="Image" src="https://github.com/user-attachments/assets/e32dbc45-6db5-4bfa-8946-26b81e62fc9c" />
This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗