Extend rate limit reads with usage capabilities (#42358)

## What changed

- Accept optional `account/rateLimits/read` capabilities for Luna Reserve support
  and lightweight background polling while preserving omitted and `null` params.
- Forward the Luna Reserve capability only for eligible ChatGPT sessions, and let
  lightweight polls skip the separate reset-credit detail request.
- Return the backend's `ordinaryUsageAllowed` decision only when its account and
  user identity match the active session.

## Testing

- Cover capability defaults, eligible and restricted authentication modes,
  lightweight polling, identity filtering, and backend permission handling.

GitOrigin-RevId: f407a3ae1e70e411fdf245f072a16e453f59cd87
This commit is contained in:
dhruvgupta-oai
2026-09-02 21:01:04 +00:00
committed by copyberry
parent 0227158fd5
commit 577a4fcd06
26 changed files with 459 additions and 28 deletions
+2 -2
View File
@@ -1592,8 +1592,8 @@ impl MessageProcessor {
ClientRequest::GetAuthStatus { params, .. } => {
self.account_processor.get_auth_status(params).await
}
ClientRequest::GetAccountRateLimits { .. } => {
self.account_processor.get_account_rate_limits().await
ClientRequest::GetAccountRateLimits { params, .. } => {
self.account_processor.get_account_rate_limits(params).await
}
ClientRequest::ConsumeAccountRateLimitResetCredit { params, .. } => {
self.account_processor