Skip to content

[Bug]: Using a reset credit from the pooled usage bar shows no progress while it runs #17449

Closed

Description

@jieyuexing

Note

Drafted by Claude Opus 5.5 in Claude Code (via T3 Code); reviewed and posted by @jieyuexing.

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/web

Steps to reproduce

  1. Have a Codex account with a reset credit available.
  2. Open Usage → Limits and click the redeemable segment of the pooled bar.
  3. Click the reset action in the popover, then confirm in the dialog.

Expected behavior

Something on screen shows the reset is in progress until the result appears, like the spinning refresh button on the same page.

Actual behavior

Nothing changes for several seconds. Then the result text appears.

RedeemableSegmentPopup closes the popover before opening the confirm dialog (UsageLimitsPooled.tsx, onRedeem → closePopover()), and useResetCredit().redeem closes the dialog before awaiting consumeResetCredit (UsageLimits.tsx). The only pending state, the disabled "Using…" button, lives inside the popover that is already closed. The status span outside the popover renders only redeem.status, which is set after the request settles, so busy is never visible on this path.

The wait itself is expected: for Codex the server spawns an app-server to consume the credit, then runs a full snapshot.refresh (another app-server, account/skills/models/rate limits) before replying. That makes the missing feedback noticeable.

Impact

Minor bug or occasional failure

Version or commit

v0.0.46-nightly.20261008.2833 (same code on main as of 2026-10-09)

Environment

macOS desktop app, Codex provider

Workaround

None. Wait for the result text.

Possible fix

Render a pending line in the same status slot outside the popover while redeem.busy is true (for example the account name plus "Using reset credit…"), so the pooled path shows the same feedback the per-account card already has.

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions