Skip to content

Commit 1ff5392

Browse files
committed
ui(router-models): guard subscription to only resolve matching provider filter to avoid race with active-only payload (pairs with #8916 backend filtering)
1 parent dcdd631 commit 1ff5392

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

webview-ui/src/components/ui/hooks/useRouterModels.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,18 @@ const getRouterModels = async (providers?: string[]) =>
2828
const message: ExtensionMessage = event.data
2929

3030
if (message.type === "routerModels") {
31+
const msgProviders = message?.values?.providers as string[] | undefined
32+
const requestedKey = providers && providers.length > 0 ? providers.slice().sort().join(",") : "all"
33+
const responseKey =
34+
Array.isArray(msgProviders) && msgProviders.length > 0
35+
? msgProviders.slice().sort().join(",")
36+
: "all"
37+
38+
if (requestedKey !== responseKey) {
39+
// Not our response; ignore and wait for the matching one
40+
return
41+
}
42+
3143
clearTimeout(timeout)
3244
cleanup()
3345

0 commit comments

Comments
 (0)