Skip to content

Hide unsupported account-usage rows for custom Claude Code endpoint profiles #357

Description

@Tryanks

Next-release requirement (2026-09-08): This issue must be completed before the next release. The existing scope, diagnosis and acceptance criteria below remain in force.

Reported behavior

A custom Kimi profile using the Claude Code harness appears in Settings → Usage as “Kimi usage unavailable.” A profile without a supported account-usage API should not appear as a broken usage integration.

Current implementation

The Usage page selects profiles by ProviderKind::Codex | ProviderKind::ClaudeCode. Runtime refresh uses the same broad harness-kind distinction, then passes the profile launch environment into the corresponding native usage probe. The services layer converts probe failures to an error-bearing ProviderUsage.

A harness protocol does not establish that a custom endpoint implements that harness vendor's subscription/rate-limit API. The custom endpoint configuration and authentication mode need to participate in the eligibility decision. Do not special-case the display name “Kimi.”

Requested behavior

  • Establish account-usage support for the resolved profile in the owning provider/runtime contract and use it consistently for refresh and presentation.
  • Omit unsupported profiles from Usage and avoid repeatedly probing an unsupported endpoint.
  • Keep meaningful error/retry states for supported accounts that are signed out, unreachable or temporarily failing. Do not hide all failures or all custom profiles indiscriminately.
  • Ensure composer account-limit presentation follows the same support decision, while session token/context usage remains available independently.
  • Invalidate stale usage when profile configuration changes.

Acceptance criteria

Cover a custom Claude Code/Kimi endpoint with no usage support, a supported account returning real windows, and a supported account temporarily failing. Renaming a profile must not change eligibility. Verify that unsupported rows disappear without affecting actual session usage or genuine error reporting.

The precise Kimi endpoint/auth configuration still needs to be captured for live reproduction; the overly broad profile filter is confirmed by source inspection.

Code context

Reviewed against main at b4c549787da6 (2026-09-08).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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