From aacab940f461bab3fc5190696030fcb2ade5a5fb Mon Sep 17 00:00:00 2001 From: ryan-crabbe-berri Date: Sat, 15 Aug 2026 03:15:53 -0700 Subject: [PATCH 1/2] fix(ui): rename models table Status column to Source --- .../models-and-endpoints/components/ModelsTableColumns.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/ModelsTableColumns.tsx b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/ModelsTableColumns.tsx index 93ee6d9f0ab..8abd4ba5225 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/ModelsTableColumns.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/ModelsTableColumns.tsx @@ -453,8 +453,8 @@ export const getModelsTableColumns = ({ { id: STATUS_COLUMN_ID, accessorFn: (row) => row.model_info.db_model, - meta: { title: "Status", skeleton: "badge" }, - header: ({ column }) => , + meta: { title: "Source", skeleton: "badge" }, + header: ({ column }) => , enableSorting: true, size: 140, minSize: 100, From 09741740d47ed3f0fdce7f0ef4065a84a0d610c4 Mon Sep 17 00:00:00 2001 From: Yuneng Jiang Date: Sat, 15 Aug 2026 09:20:08 -0700 Subject: [PATCH 2/2] test(ui): follow the models table Status to Source column rename --- .../models-and-endpoints/components/AllModelsTab.test.tsx | 2 +- .../components/AllModelsTable.test.tsx | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTab.test.tsx b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTab.test.tsx index 659a618c8f6..b98fbf33d24 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTab.test.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTab.test.tsx @@ -192,7 +192,7 @@ describe("AllModelsTab", () => { expect(lastModelsInfoCall().sortOrder).toBe(firstDirection); }); - it("maps the hidden Status column to the server field status", () => { + it("maps the hidden Source column to the server field status", () => { expect(toServerSortField(STATUS_COLUMN_ID)).toBe("status"); }); diff --git a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTable.test.tsx b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTable.test.tsx index cd0b00d9f7c..fa8dd2e5840 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTable.test.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/AllModelsTable.test.tsx @@ -79,7 +79,7 @@ const row = (modelId: string): HTMLElement => { }; describe("AllModelsTable", () => { - it("renders the nine design columns and hides Status behind the Columns menu", async () => { + it("renders the nine design columns and hides Source behind the Columns menu", async () => { const user = userEvent.setup(); render(); @@ -97,12 +97,15 @@ describe("AllModelsTable", () => { expect(screen.getByRole("columnheader", { name: new RegExp(header, "i") })).toBeInTheDocument(); } + expect(screen.queryByRole("columnheader", { name: /^source$/i })).not.toBeInTheDocument(); expect(screen.queryByRole("columnheader", { name: /^status$/i })).not.toBeInTheDocument(); expect(screen.queryByText("DB Model")).not.toBeInTheDocument(); await user.click(screen.getByRole("button", { name: /columns/i })); - await user.click(await screen.findByRole("menuitemcheckbox", { name: /status/i })); + expect(screen.queryByRole("menuitemcheckbox", { name: /status/i })).not.toBeInTheDocument(); + await user.click(await screen.findByRole("menuitemcheckbox", { name: /^source$/i })); + expect(await screen.findByRole("columnheader", { name: /^source$/i })).toBeInTheDocument(); expect(await screen.findByText("DB Model")).toBeInTheDocument(); });