Add Pro Max plan support and update Pro display names (#47971)

## What changed

- Recognize `promax` in authentication, account responses, and backend rate limits; update generated schemas and client types.
- Display `prolite` as “Pro”, `pro` as “Pro (More)”, and `promax` as “Pro (Max)” in account labels, status, and analytics.
- Include Pro Max in experimental context eligibility, paid-plan tooltips, and usage-limit guidance for purchasing credits.

## Testing

Extend coverage for Pro Max plan parsing, account and rate-limit responses, experimental context eligibility, and plan display names. Update the login token test to expect “Pro (More)”.

GitOrigin-RevId: 197e00fa7a99cbce125c8f1d43a451ec1ed5c1fb
This commit is contained in:
Eric Traut
2026-09-25 00:20:02 +00:00
committed by copyberry
parent 97da50c1aa
commit b725da3b6d
24 changed files with 51 additions and 17 deletions
+7 -2
View File
@@ -78,6 +78,7 @@ impl PlanType {
"plus" => Self::Known(KnownPlan::Plus),
"pro" => Self::Known(KnownPlan::Pro),
"prolite" => Self::Known(KnownPlan::ProLite),
"promax" => Self::Known(KnownPlan::ProMax),
"team" => Self::Known(KnownPlan::Team),
"self_serve_business_prolite" => Self::Known(KnownPlan::SelfServeBusinessProLite),
"self_serve_business_usage_based" => {
@@ -104,6 +105,7 @@ pub enum KnownPlan {
Plus,
Pro,
ProLite,
ProMax,
Team,
#[serde(rename = "self_serve_business_prolite")]
SelfServeBusinessProLite,
@@ -131,8 +133,9 @@ impl KnownPlan {
Self::Free => "Free",
Self::Go => "Go",
Self::Plus => "Plus",
Self::Pro => "Pro",
Self::ProLite => "Pro Lite",
Self::Pro => "Pro (More)",
Self::ProLite => "Pro",
Self::ProMax => "Pro (Max)",
Self::Team => "Team",
Self::SelfServeBusinessProLite => "Self Serve Business ProLite",
Self::SelfServeBusinessUsageBased => "Self Serve Business Usage Based",
@@ -154,6 +157,7 @@ impl KnownPlan {
Self::Plus => "plus",
Self::Pro => "pro",
Self::ProLite => "prolite",
Self::ProMax => "promax",
Self::Team => "team",
Self::SelfServeBusinessProLite => "self_serve_business_prolite",
Self::SelfServeBusinessUsageBased => "self_serve_business_usage_based",
@@ -233,6 +237,7 @@ mod tests {
PlanType::Known(KnownPlan::EnterpriseCbpAutomation)
);
for (raw, known) in [
("promax", KnownPlan::ProMax),
("edu_plus", KnownPlan::EduPlus),
("edu_pro", KnownPlan::EduPro),
] {