Skip to content
This repository was archived by the owner on Feb 23, 2026. It is now read-only.

v4.5.20

Choose a tag to compare

@iam-brain iam-brain released this 31 Jan 18:59
· 105 commits to main since this release

v4.5.20 — Release Notes (since v4.5.19)

Reliability & Identity Hardening release focused on making codex-status more resilient when accounts are rate-limited, and ensuring health/token tracking survives account reordering.

Highlights

  • codex-status is now read-only and won't fail when all accounts are rate-limited
  • Health and token bucket trackers use stable identity keys instead of array indices
  • Memory leak in RateLimitTracker fixed with periodic cleanup
  • Toast notifications when switching accounts due to rate limits

User-Facing Changes

codex-status Tool

  • No longer forces token refresh when displaying status
  • Uses existing valid tokens; falls back to cached snapshots on fetch failure
  • Added debug logging for fetch failures (OPENCODE_OPENAI_AUTH_DEBUG=1)

Toast Notifications

  • Shows debounced "Rate limited - switching account" warning when rotating
  • Respects quietMode config option
  • Uses configurable rateLimitToastDebounceMs (default 60s)

Slash Commands

  • Command templates now output results exactly as returned by tools

Reliability & Data Safety

Identity-Based Tracking

  • HealthScoreTracker and TokenBucketTracker now key on accountId|email|plan
  • Scores persist correctly when accounts are reordered, removed, or merged
  • Falls back to hashed refreshToken for legacy accounts without full identity

Memory Safety

  • RateLimitTracker: periodic cleanup (every 60s) removes entries older than resetMs
  • HealthScoreTracker: auto-prunes entries inactive for 24 hours
  • TokenBucketTracker: auto-prunes entries inactive for 1 hour

Logging

  • New logCritical() function for always-visible errors
  • Migrated console.error calls to logWarn to respect debug settings
  • Prevents TUI corruption from unexpected console output

Docs

  • Updated CHANGELOG with v4.5.19 and v4.5.20 entries
  • Added staleAfterMs config to tracker documentation

Full Changelog: v4.5.19...v4.5.20