diff --git a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.test.tsx b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.test.tsx index cbca6d5a120..f1615b1dae4 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.test.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.test.tsx @@ -102,6 +102,23 @@ describe("FusionModelsPanel", () => { }); }); + it("shows readable, full-width behavior presets", async () => { + const user = userEvent.setup(); + renderPanel(); + + await user.click(screen.getByRole("button", { name: "Add Fusion Model" })); + const behaviorSelector = screen.getByLabelText("Behavior"); + expect(behaviorSelector).toHaveTextContent("Quality First"); + expect(behaviorSelector).toHaveClass("w-full"); + + await user.click(behaviorSelector); + expect(screen.getByRole("option", { name: /Quality First/ })).toBeVisible(); + expect(screen.getByRole("option", { name: /High Availability/ })).toBeVisible(); + + await user.click(screen.getByRole("option", { name: /High Availability/ })); + expect(behaviorSelector).toHaveTextContent("High Availability"); + }); + it("requires and sends a team for team-admin creation", async () => { const user = userEvent.setup(); renderPanel("team-required"); diff --git a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.tsx b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.tsx index 220b7f9e301..0b0fb98ba35 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/models-and-endpoints/components/FusionModels/FusionModelsPanel.tsx @@ -164,23 +164,30 @@ function FusionModelDialog({
- { + if (value === "quality" || value === "resilient") applyPreset(value); + }} + > + + + {preset === "quality" ? "Quality First" : "High Availability"} + - - -
+ + +
Quality First
-
+
Fail the request when the panel quorum is missed.
- -
+ +
High Availability
-
+
Let the aggregator answer alone when the panel quorum is missed.
@@ -206,7 +213,7 @@ function FusionModelDialog({