Repository navigation
feat(volcengine): canonical quota window mapping and safe multi-connection plan binding - #12950
Merged
diegosouzapw merged 7 commits intoSep 8, 2026
Conversation
Contributor
Author
|
Looked at Verification notes:
|
… responses Signed-off-by: Minxi Hou <houminxi@gmail.com>
…ero-cap remainingPercentage Signed-off-by: Minxi Hou <houminxi@gmail.com>
… keys from modelWindows Signed-off-by: Minxi Hou <houminxi@gmail.com>
… on unpurchased plans Signed-off-by: Minxi Hou <houminxi@gmail.com>
…sd merge in plan binding Signed-off-by: Minxi Hou <houminxi@gmail.com>
Signed-off-by: Minxi Hou <houminxi@gmail.com>
…nt single-connection adoption intent Signed-off-by: Minxi Hou <houminxi@gmail.com>
HouMinXi
force-pushed
the
feat/volcengine-quota-binding
branch
from
September 7, 2026 13:23
5a1ff80 to
fedb046
Compare
diegosouzapw
merged commit Sep 8, 2026
0f81e75
into
cheaper-inference:release/v3.8.51
7 of 16 checks passed
This was referenced Sep 9, 2026
This was referenced Sep 10, 2026
muhamadgalihsaputra
pushed a commit
to niyatna/NiyatnaRoute
that referenced
this pull request
Sep 27, 2026
…ction plan binding (cheaper-inference#12950) Validado numa worktree combinada com a onda de persistência desta leva sobre `release/v3.8.51`: check-file-size e check-changelog-integrity OK, typecheck:core limpo, check-api-typecheck OK (289, dentro da baseline), 70 testes focados no runner Node e 1 no vitest, todos verdes. Mapeamento canônico de janela de quota mais binding multi-conexão seguro, com 4 arquivos de teste para 4 de produção — proporção que dá para revisar.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Volcengine Ark console auto-login and quota fetchers had several integration issues:
session,AFPFiveHour) differed from the canonical names (session (5h),weekly (7d)), causing genericQuotaFetcher to miss them or fall back to single-minute polls.modelWindows, treating rate-limit windows as model names.detectPlanreportedavailable: trueon accounts without purchased quota windows.This PR fixes response sanitization, window normalization, quota fetcher mapping, unpurchased plan gating, and connection reuse in plan binding.
Changes
src/lib/providers/requestDefaults.ts): StripsvolcConsoleCookieandvolcCsrfTokenfrom provider connection serialization.open-sse/services/usage/volcenginePlan.ts): Normalizes Coding Plan and Agent Plan window keys tosession (5h)andweekly (7d). Guards against division by zero (remainingPercentage: 0whentotal === 0).open-sse/services/genericQuotaFetcher.ts): Maps Volcengine window aliases towindow5handwindow7d. IntroducesTIME_WINDOW_KEYSset to isolate rate-limit windows frommodelWindows.src/lib/providers/volcenginePlanBinding.ts): Checks for non-empty active quota windows before marking a plan available.src/lib/providers/volcenginePlanBinding.ts):targetConnectionId(with provider affinity check).apiKeyorvolcApiKeyId.existingPsdwith new console session data to preserve user-configured flags likeautoFetchModels.Test plan
tests/unit/volcengine-plan-request-sanitization.test.ts(1 pass)tests/unit/volcengine-plan-quota-windows.test.ts(2 pass)tests/unit/generic-quota-fetcher-volcengine.test.ts(2 pass)tests/unit/volcengine-plan-binding-upsert.test.ts(3 pass)tests/unit/services/volcengine-console-auto-login.test.ts(32 pass)npm run typecheck:core(0 errors)npm run check:cycles(0 cycles)npm run check:docs-sync(PASS)Notes
Base:
release/v3.8.51@b345c7f6c.changelog.d/fixes/reset-aware-model-family.mdmissing leading-open-sse/executors/glm.tsextra 16th positional (TS2554, fix(glm): drop extra 16th arg to SSE transform helper #12770)check:agent-skills-syncdry-runGENERATED: + cli-tunneltests/unit/reset-aware-request-scope-12600.test.tsmissing fromstryker.conf.jsonUnique diff does not touch those files. This PR's own fragment starts with
-.