diff --git a/web/default/src/features/usage-logs/components/columns/common-logs-columns.tsx b/web/default/src/features/usage-logs/components/columns/common-logs-columns.tsx index 00f1224c9a..87d109d721 100644 --- a/web/default/src/features/usage-logs/components/columns/common-logs-columns.tsx +++ b/web/default/src/features/usage-logs/components/columns/common-logs-columns.tsx @@ -24,11 +24,6 @@ import { useTranslation } from 'react-i18next' import { GroupBadge } from '@/components/group-badge' import { CopyableStatusBadge, StatusBadge } from '@/components/status-badge' import { Avatar, AvatarFallback } from '@/components/ui/avatar' -import { - Popover, - PopoverContent, - PopoverTrigger, -} from '@/components/ui/popover' import { Tooltip, TooltipContent, @@ -347,6 +342,17 @@ export function useCommonLogsColumns(isAdmin: boolean): ColumnDef[] { const channelChain = hasRetryChain ? useChannel.join(' → ') : undefined + // Inline variant is compact (no spaces) so three hops fit the + // 160px cell; longer chains collapse the middle, keeping the + // first hops and the final channel. Full chain stays in the + // tooltip below. + let channelChainInline: string | undefined + if (hasRetryChain) { + channelChainInline = + useChannel.length > 3 + ? `${useChannel[0]}→${useChannel[1]}→…→${useChannel.at(-1)}` + : useChannel.join('→') + } const channelDisplay = log.channel_name ? `${log.channel_name} #${log.channel}` : `#${log.channel}` @@ -366,7 +372,7 @@ export function useCommonLogsColumns(isAdmin: boolean): ColumnDef[] {
} > -
+
[] { )} {hasRetryChain && ( - - e.stopPropagation()} - /> - } - > - - -
-

{t('Retry Chain')}

-

- {channelChain} -

-
-
-
+ + )} {affinity && (