Repository navigation
[Feature]: expose requestPacing.maxConcurrentRequests in the provider settings GUI #6093
Description
What are you trying to accomplish?
Cap how many requests to a provider are in flight at once — provider-wide, with a tighter per-model limit — from the dashboard, the same way RPM and minimum interval are managed today.
What prevents this today?
requestPacing.maxConcurrentRequests shipped in the backend via #5954 (schema in src/config/schema/leaf-validators.ts, enforcement in src/providers/request-pacing.ts and src/server/responses/fetch-helpers.ts), but the provider workspace pacing panel only exposes enabled, requestsPerMinute, minIntervalMs, and per-model RPM/interval overrides. The concurrency cap is reachable only by editing the config file or calling the management API directly. #5708 carried this GUI work and was closed as superseded, while #5954 landed backend-only.
What should OpenCodex do?
The Request pacing card in Dashboard → Providers → → Settings should offer a "Max concurrent requests" input at the provider level and a cap field in each per-model override row, following the landed validation: a positive integer, and a pacing rule may consist of the cap alone.
Example usage or interface
Today the cap is config-only:
"requestPacing": {
"enabled": true,
"requestsPerMinute": 120,
"maxConcurrentRequests": 5,
"models": { "some/model": { "maxConcurrentRequests": 2 } }
}
After this change the same values are editable (and visible) in the pacing panel next to RPM and minimum interval.
Alternatives or workarounds
Edit ~/.opencodex/config.json by hand, or PATCH /api/providers?name=<provider> from a terminal. Both work but leave the dashboard silently out of sync with the effective configuration.
Additional context
-
Original pacing proposal: [Feature]: requestPacing option to cap concurrent in-flight requests at provider and model level #5702
-
Backend implementation: feat(proxy): support maxConcurrentRequests in requestPacing at provider and model level #5954 (via merge train feat: integrate non-GUI enhancement batch 10B #5992)
-
The closed feat(providers): requestPacing.maxConcurrentRequests at provider and model level #5708 contained this GUI work before the backend landed separately.
-
I searched existing issues and documentation.
-
This request describes a concrete OpenCodex workflow rather than merely naming a desired technology.
-
I removed secrets and personal data.
Activity
lidge-jun commentedon Sep 27, 2026
Status from the release train 4 triage: the GUI change for this request is in #6094. It was reviewed against the backend contract from #5954, and its cross-platform CI passed at head
edb17c73(run). It is waiting for maintainer approval. This issue stays open until #6094 is merged intodev.docs(devlog): record release train 4 issue triage lane (#6126)
lidge-jun commentedon Sep 29, 2026
The provider settings form now edits
requestPacing.maxConcurrentRequests: it landed ondevin e3fcf3e (#6094), carried into the 2.71.0 integration (#6224). Closing as fixed; it ships with the next release. Reopen if the field is missing or not applied in your build.