Skip to content

Usage % panel stuck at 0% (Current session / Weekly limit never update) — LastUsageTimestamp frozen in claudecode-settings.json #111

Description

@predragx-svg

Environment

  • Claude Code Extension for Visual Studio: v74.0
  • Visual Studio 2022
  • Windows 11

Summary
The usage panel ("Claude Code - Sonnet") showing "Current session" and "Weekly limit" has been stuck at 0%/0% for about 3 weeks, even though actual usage exists (visible on claude.ai/usage) and dozens of prompts have been sent through the extension in that time.

Steps already tried (none fixed it)

  • Full Visual Studio restart
  • devenv /clearcache and devenv /updateconfiguration
  • Updating the extension to the latest version (74.0)
  • Disabling → restarting VS → re-enabling the extension (this DID fix a separate, related issue: prompt sending was failing with Error sending prompt: Method not found: 'System.String Newtonsoft.Json.Linq.JToken.ToString(Newtonsoft.Json.Formatting)' — disable/enable cycle resolved that one)
  • Clicking the refresh icon on the usage panel
  • Sending test prompts to trigger a refresh

Technical findings from %LOCALAPPDATA%\ClaudeCodeExtension\claudecode-settings.json

  • LastUsageTimestamp is frozen at 2026-07-02T13:12:00.7667322Z and has not advanced despite continuous extension use since then.
  • LastUsageJson correspondingly shows SessionPercent:0, WeeklyPercent:0 — i.e. the panel is displaying a stale 3-week-old cached value, not a live 0%.
  • UsageAutoRefreshSeconds was 0 initially; after updating to the latest version it changed to 120, but this did NOT cause LastUsageTimestamp to refresh — it's still frozen at the same value even with auto-refresh presumably active.
  • Checked WebView2 Local Storage/IndexedDB (WebView2\EBWebView\Default\Local Storage\leveldb) for any "Percent"/"SessionLabel"/"WeeklyLabel"/"LastUsage" strings — no matches. This suggests the panel (WebView2/JS side) is a passive display of whatever the .NET host side provides, and does not cache anything itself.
  • WebView2\EBWebView\Crashpad\reports is empty — no crash reports, ruling out a WebView2 renderer crash as the cause.

Hypothesis
The usage-fetch/refresh routine on the .NET host side of the extension stopped succeeding around 2026-07-02 and has not recovered since, even after the extension update changed UsageAutoRefreshSeconds from 0 to 120. Whatever triggers the fetch appears to fail silently — there's no host-side log file that records anything related to usage fetching (only terminal-launch.log, which doesn't mention it).

Expected behavior
The usage panel should reflect actual current session/weekly usage percentages, refreshing periodically per UsageAutoRefreshSeconds.

Actual behavior
Panel permanently shows 0%/0%, backed by a LastUsageTimestamp that hasn't updated in 3+ weeks despite active use.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions