diff --git a/ui/litellm-dashboard/src/components/lens/investigations/live/ConclusionsPanel.tsx b/ui/litellm-dashboard/src/components/lens/investigations/live/ConclusionsPanel.tsx
index 4c00863141b..1b620f2eb6b 100644
--- a/ui/litellm-dashboard/src/components/lens/investigations/live/ConclusionsPanel.tsx
+++ b/ui/litellm-dashboard/src/components/lens/investigations/live/ConclusionsPanel.tsx
@@ -39,7 +39,47 @@ export function ConclusionsPanel({
if (!groups.length) return
Nothing concluded yet.
;
return (
-
+ {SECTIONS.map(({ issue, title }) => (
+ group.issue === issue)}
+ total={total}
+ selected={selected}
+ flashing={flashing}
+ onSelect={onSelect}
+ />
+ ))}
+ {scope && {scope}
}
+
+ );
+}
+
+const SECTIONS = [
+ { issue: true, title: "Issues" },
+ { issue: false, title: "Patterns" },
+] as const;
+
+function GroupList({
+ title,
+ groups,
+ total,
+ selected,
+ flashing,
+ onSelect,
+}: {
+ title: string;
+ groups: readonly Conclusion[];
+ total: number;
+ selected: string | null;
+ flashing: ReadonlySet;
+ onSelect: (key: string | null) => void;
+}) {
+ if (!groups.length) return null;
+ return (
+ <>
+ {title}
+
{groups.map((group) => {
const active = selected === group.key;
return (
@@ -84,7 +124,6 @@ export function ConclusionsPanel({
);
})}
- {scope && {scope}
}
-
+ >
);
}