From 36738464339ff6d39c983294acfd2b82db762b3d Mon Sep 17 00:00:00 2001 From: Mohamed Boudra Date: Wed, 15 Jul 2026 11:50:10 +0200 Subject: [PATCH] fix(app): keep single tool calls in overview list --- packages/app/src/agent-stream/view.tsx | 4 -- .../tool-calls/detail-level/overview/view.tsx | 65 +++---------------- 2 files changed, 9 insertions(+), 60 deletions(-) diff --git a/packages/app/src/agent-stream/view.tsx b/packages/app/src/agent-stream/view.tsx index 3da69787d..29caafc42 100644 --- a/packages/app/src/agent-stream/view.tsx +++ b/packages/app/src/agent-stream/view.tsx @@ -775,10 +775,8 @@ const AgentStreamViewComponent = forwardRef {expanded ? group.run.calls.map((call, index) => ( @@ -796,9 +794,7 @@ const AgentStreamViewComponent = forwardRef void; - cwd?: string; children: ReactNode; } @@ -61,63 +54,23 @@ function useOverviewSummary(summary: OverviewSummary): string { export const OverviewToolCallGroupView = memo(function OverviewToolCallGroupView({ group, expanded, - isCompact, isLastInSequence, onExpandedChange, - cwd, children, }: OverviewGroupProps) { const { t } = useTranslation(); - const { openToolCall } = useToolCallSheet(); const scrollRef = useRef(null); const aggregateSummary = useOverviewSummary(group.summary); - const latest = useMemo(() => { - const descriptor = describeToolCall(group.run.latest); - return { - detail: descriptor.detail, - presentation: buildToolCallPresentation({ - toolName: descriptor.name, - status: descriptor.status, - error: descriptor.error, - detail: descriptor.detail, - metadata: descriptor.metadata, - cwd, - resolveIcon: resolveToolCallIcon, - }), - }; - }, [cwd, group.run.latest]); - const opensSingleCallSheet = isCompact && group.run.calls.length === 1; const failedSummary = group.failedCount > 0 ? t("toolCallGroup.failed", { count: group.failedCount }) : undefined; const scrollToLatest = useCallback(() => { scrollRef.current?.scrollToEnd({ animated: false }); }, []); const toggle = useCallback(() => { - if (opensSingleCallSheet) { - openToolCall({ - displayName: latest.presentation.displayName, - summary: latest.presentation.summary, - detail: latest.detail, - errorText: latest.presentation.errorText, - icon: latest.presentation.icon, - showLoadingSkeleton: latest.presentation.isLoadingDetails, - }); - return; - } onExpandedChange(group.run.id, !expanded); - }, [expanded, group.run.id, latest, onExpandedChange, openToolCall, opensSingleCallSheet]); - const renderDetails = useCallback(() => { - if (group.run.calls.length === 1) { - return ( - - ); - } - return ( + }, [expanded, group.run.id, onExpandedChange]); + const renderDetails = useCallback( + () => ( {children} - ); - }, [children, group.run.calls.length, latest, scrollToLatest]); - const canExpand = group.run.calls.length > 1 || latest.presentation.canOpenDetails; + ), + [children, scrollToLatest], + ); return ( 0} - isExpanded={opensSingleCallSheet ? false : expanded} + isExpanded={expanded} isLastInSequence={isLastInSequence} - onToggle={canExpand ? toggle : undefined} - renderDetails={canExpand && !opensSingleCallSheet ? renderDetails : undefined} + onToggle={toggle} + renderDetails={renderDetails} borderlessWhenExpanded /> );