[Bug] Apple subscription Max tier incorrectly identified as Pro in Claude Code
Bug Description
Bug: Apple subscription Max user incorrectly identified as Pro in Claude Code
I'm a Claude Max subscriber paying through Apple App Store (iOS). After upgrading Claude Code from v2.1.81 to v2.1.84, my subscription is no longer correctly
recognized:
- The status bar shows "Claude Pro" instead of "Claude Max"
- Usage meter appears to calculate against Pro-level quota — showed ~40% consumed after roughly 1 hour of normal usage, which is impossible under Max limits
- In ~/.claude.json, the oauthAccount object has billingType: "apple_subscription" but is missing both subscriptionType and rateLimitTier fields entirely
- This worked correctly on v2.1.81. The issue appeared after upgrading to v2.1.83 or v2.1.84
I've tried /logout and /login — after re-login, the Max label briefly appeared in the status bar, but the usage percentage was not recalculated against Max quota.
This appears to be the same issue reported in GitHub issue #34049. Apple-billed subscribers' plan info is not being correctly synced to the Claude Code OAuth
response.
My request:
- Please confirm whether my account has been rate-limited at Pro level instead of Max during this period
- If so, please reset my current usage cycle to reflect the correct Max quota
- Please fix the Apple subscription plan recognition so this doesn't recur
Account email: puladiao@gmail.com
Claude Code version: 2.1.84
macOS Darwin 25.2.0
Environment Info
- Platform: darwin
- Terminal: ghostty
- Version: 2.1.81
- Feedback ID: 434ba638-eadd-4ada-b00b-0264780de712
Errors
[{"error":"Error: Client network socket disconnected before secure TLS connection was established\n at lZ.from (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:74:14664)\n at ev.<anonymous> (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:82:12662)\n at ev.emit (node:events:507:28)\n at dn8.<computed> (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:81:1120)\n at ClientRequest.emit (node:events:507:28)\n at emitErrorEvent (node:_http_client:104:11)\n at TLSSocket.socketErrorListener (node:_http_client:518:5)\n at TLSSocket.emit (node:events:507:28)\n at emitErrorNT (node:internal/streams/destroy:170:8)\n at emitErrorCloseNT (node:internal/streams/destroy:129:3)\n at xh6.request (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:84:2450)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async fa1 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:5545:497)","timestamp":"2026-03-26T13:55:09.694Z"}]This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗