The `codexParallelCalls` field on `ExternalProviderConfig` was wired through `chat-adapter.ts` (it is serialised over the wire as `parallel_calls`) but the connections dialog never set or restored it. With no UI input and no persistence path, the value was always left as `undefined` after a reload, the adapter fell back to `?? 1`, and the Codex fan-out path stayed permanently dormant from the UI even though the backend supported it. Three plumbing fixes: 1. Add a "Parallel calls" number input to the Codex form section, bounded to [1, CODEX_MAX_PARALLEL_CALLS]. Clamped on every key stroke so a hand-edited entry cannot exceed the backend cap. 2. Persist the value on `addProvider`, `saveProviderEdits`, and restore it on `editProvider` -- gated on `isCodexProviderType` so other providers cannot accidentally carry the field. 3. Preserve the value through `syncedProviders` rebuild on backend re-sync. The backend row does not store the fan-out width (it is local-only), so we copy it from the existing in-memory entry. Form reset clears the field back to the default so opening "Add connection" after editing a Codex provider does not pre-fill an unrelated value. |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| .gitignore | ||
| .gitkeep | ||
| .npmrc | ||
| biome.json | ||
| components.json | ||
| data-designer.openapi (1).yaml | ||
| eslint.config.js | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.app.json | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||