From 25d52b56a0e19ccf2ae64154fe79a535fa8e0b06 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 24 Mar 2026 05:13:39 +0000 Subject: [PATCH] fix: keep slash command model qualification on rebase --- ui/src/ui/chat/slash-command-executor.node.test.ts | 9 ++------- ui/src/ui/chat/slash-command-executor.ts | 11 ++++------- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/ui/src/ui/chat/slash-command-executor.node.test.ts b/ui/src/ui/chat/slash-command-executor.node.test.ts index 4bd2f8cf368..06b8d227c8b 100644 --- a/ui/src/ui/chat/slash-command-executor.node.test.ts +++ b/ui/src/ui/chat/slash-command-executor.node.test.ts @@ -277,11 +277,6 @@ describe("executeSlashCommand directives", () => { }, }; } - if (method === "models.list") { - return { - models: [{ id: "gpt-5-mini", provider: "openai" }], - }; - } throw new Error(`unexpected method: ${method}`); }); @@ -290,13 +285,13 @@ describe("executeSlashCommand directives", () => { "main", "model", "gpt-5-mini", + [{ id: "gpt-5-mini", name: "gpt-5-mini", provider: "openai" }], ); - expect(request).toHaveBeenNthCalledWith(1, "sessions.patch", { + expect(request).toHaveBeenCalledWith("sessions.patch", { key: "main", model: "gpt-5-mini", }); - expect(request).toHaveBeenNthCalledWith(2, "models.list", {}); expect(result.sessionPatch?.modelOverride).toEqual({ kind: "qualified", value: "openai/gpt-5-mini", diff --git a/ui/src/ui/chat/slash-command-executor.ts b/ui/src/ui/chat/slash-command-executor.ts index 98ebdcf8025..77b9ae7ad2a 100644 --- a/ui/src/ui/chat/slash-command-executor.ts +++ b/ui/src/ui/chat/slash-command-executor.ts @@ -157,13 +157,10 @@ async function executeModel( } try { - const [patched, models] = await Promise.all([ - client.request("sessions.patch", { - key: sessionKey, - model: args.trim(), - }), - client.request<{ models: ModelCatalogEntry[] }>("models.list", {}), - ]); + const patched = await client.request("sessions.patch", { + key: sessionKey, + model: args.trim(), + }); const patchedModel = patched.resolved?.model ?? args.trim(); const rawOverride = createChatModelOverride(patchedModel.trim()); const resolvedValue = rawOverride