diff --git a/website/docs/user-guide/features/credential-pools.md b/website/docs/user-guide/features/credential-pools.md index 57bf3552b..807000570 100644 --- a/website/docs/user-guide/features/credential-pools.md +++ b/website/docs/user-guide/features/credential-pools.md @@ -22,8 +22,11 @@ Your request → Pick key from pool (round_robin / least_used / fill_first / random) → Send to provider → 429 rate limit? - → Retry same key once (transient blip) - → Second 429 → rotate to next pool key + → Plan/usage limit reached (e.g. ChatGPT/Codex "usage limit reached")? + → Rotate to next pool key immediately (no retry — the cap won't clear on retry) + → Generic / transient 429? + → Retry same key once (transient blip) + → Second 429 → rotate to next pool key → All keys exhausted → fallback_model (different provider) → 402 billing error? → Immediately rotate to next pool key (24h cooldown) diff --git a/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/credential-pools.md b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/credential-pools.md index fe538fb9b..d232f4350 100644 --- a/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/credential-pools.md +++ b/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/credential-pools.md @@ -18,8 +18,11 @@ Your request → Pick key from pool (round_robin / least_used / fill_first / random) → Send to provider → 429 rate limit? - → Retry same key once (transient blip) - → Second 429 → rotate to next pool key + → Plan/usage limit reached (e.g. ChatGPT/Codex "usage limit reached")? + → Rotate to next pool key immediately (no retry — the cap won't clear on retry) + → Generic / transient 429? + → Retry same key once (transient blip) + → Second 429 → rotate to next pool key → All keys exhausted → fallback_model (different provider) → 402 billing error? → Immediately rotate to next pool key (24h cooldown)