Skip to content

Release 0.3.1: fix Grok usage after period resets - #74

Merged
thrr87 merged 2 commits into
mainfrom
codex/grok-reset-0.3.1
Sep 16, 2026
Merged

thrr87 merged 2 commits into
mainfrom
codex/grok-reset-0.3.1

Conversation

@thrr87

@thrr87 thrr87 commented Sep 16, 2026

Copy link
Copy Markdown
Owner

Grok Build can return a valid new usage period after reset without creditUsagePercent. Codex Limits previously rejected that response, retained the expired snapshot, and reported that the account had no allowance.

Accept the period-only reply as a partial snapshot: retain reset, plan, balance and receive time while leaving the percentage unavailable. Do not insert a zero/100% observation or forecast. Preserve historical points, label their window as “Last recorded”, and resume numeric observations when Grok supplies them. Explicit null/malformed percentages and unusable legacy limits remain rejected. Prepare version 0.3.1 (build 11).

Validation:

  • Regression test failed with missingAllowance before the fix and passes after it.
  • Full Release suite: 646 tests, zero failures; reset → partial reply → relaunch → explicit-zero recovery is covered.
  • Live installed Grok Build 1.0.30: partial current-week reply accepted; cache round trip passed; no model request or login flow.
  • Isolated signed native QA: All/detail show unavailable percentage, current reset and retained history; visible copy checked.
  • Release-validator self-test and graceful/forced Grok process cleanup passed.
  • Spec and strict maintainability reviews found no actionable issue in the Grok change.

The first full local run exposed an existing Codex timer race in testDisplayBoundaryExpiresCodexWithoutAnotherSourceRead (its reset is only 150 ms after fixture creation). The isolated baseline test and the subsequent full 646-test run passed. Codex collection/timer logic is outside this change.

Release authorization (2026-09-16): the product owner explicitly renewed the all-enabled idle comparison and eight-hour mixed lifecycle soak exceptions specifically for 0.3.1; both remain unperformed, not passed. The owner also authorized an administrative merge of PR #74 without a second/code-owner approval after tests and CodeQL pass, followed by publication. ADR-0015 and the PRD record these exact-version exceptions.

The initial implementation head passed GitHub CI (646 tests and process-cleanup checks): https://github.com/thrr87/codex-limits/actions/runs/35109868766. Final head 8e888c2d68ceb359d9b5b0b2fd2c6db5011e590d passed CI (646 tests) and CodeQL for Swift and Actions. Signed universal dry-run and draft artifacts must be verified before publication. Claude Code remains experimental, and its real Pro/Max allowance path remains unverified.

@thrr87
thrr87 merged commit 7a08b58 into main Sep 16, 2026
4 checks passed
@thrr87
thrr87 deleted the codex/grok-reset-0.3.1 branch September 16, 2026 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant