fix: dedupe discovered server URLs

This commit is contained in:
Troed Sångberg
2026-08-21 13:50:37 +02:00
parent 1b966f2bde
commit 1748c93cc4
2 changed files with 10 additions and 2 deletions
+2 -2
View File
@@ -271,9 +271,9 @@ export function resolveServerUrls(options: unknown, providers: unknown, config:
if (server !== undefined) {
console.warn("[oc-ls-stats] ignoring invalid 'server' plugin option, falling back to provider detection")
}
const detected = extractProviderUrlsFromList(providers)
const detected = [...new Set(extractProviderUrlsFromList(providers))]
if (detected.length > 0) return detected
const legacy = extractProviderUrls(config)
const legacy = [...new Set(extractProviderUrls(config))]
return legacy.length > 0 ? legacy : ["http://localhost:8080"]
}
+8
View File
@@ -215,3 +215,11 @@ test("selectSessionUrls first match wins for duplicate ids", () => {
]
assert.deepEqual(selectSessionUrls(candidates, providers, "dup"), ["http://b:2"])
})
test("duplicate provider URLs are deduped", () => {
const providers = [
{ id: "llamacpp-a", name: "A", options: { baseURL: "http://same:7" } },
{ id: "llamacpp-b", name: "B", options: { baseURL: "http://same:7/v1" } },
]
assert.deepEqual(resolveServerUrls(undefined, providers, {}), ["http://same:7"])
})