fix(onboard): omit empty provider request settings

This commit is contained in:
Vincent Koc
2026-07-08 17:26:29 -07:00
parent d3ff48c51f
commit aad99747cd
2 changed files with 34 additions and 1 deletions
@@ -101,6 +101,34 @@ describe("onboard auth provider config merges", () => {
expect(next.models?.providers?.other?.timeoutSeconds).toBe(300);
});
it("omits empty provider request settings", () => {
const next = applyOnboardAuthAgentModelsAndProviders(
{
models: {
providers: {
custom: {
api: "openai-completions",
baseUrl: "https://old.example.com/v1",
models: [makeModel("model-a")],
},
},
},
},
{
agentModels,
providers: {
custom: {
api: "openai-completions",
baseUrl: "https://new.example.com/v1",
models: [makeModel("model-b")],
},
},
},
);
expect(next.models?.providers?.custom).not.toHaveProperty("request");
});
it("preserves settings without resurrecting a non-canonical provider key", () => {
const next = applyOnboardAuthAgentModelsAndProviders(
{
+6 -1
View File
@@ -329,10 +329,15 @@ function mergeOnboardProviderConfigs(
}
}
if (!("request" in providerConfig) || providerConfig.request) {
nextProvider.request = mergeOnboardProviderRequest(
const mergedRequest = mergeOnboardProviderRequest(
existingProvider.request,
providerConfig.request,
);
if (mergedRequest) {
nextProvider.request = mergedRequest;
} else {
delete nextProvider.request;
}
}
merged[providerId] = nextProvider;
}