From 019d7816a732c21ff7b9b10b7fd0e5d608967d7d Mon Sep 17 00:00:00 2001 From: chengyongru <61816729+chengyongru@users.noreply.github.com> Date: Tue, 28 Jul 2026 19:13:16 +0800 Subject: [PATCH] fix(webui): animate reasoning drawer transitions (#5143) --- .../activity/ThinkingReasoningShell.tsx | 21 ++++++++++------ .../src/tests/agent-activity-cluster.test.tsx | 25 +++++++++++++++++++ 2 files changed, 39 insertions(+), 7 deletions(-) diff --git a/webui/src/components/thread/activity/ThinkingReasoningShell.tsx b/webui/src/components/thread/activity/ThinkingReasoningShell.tsx index 977859053..2efcd9a85 100644 --- a/webui/src/components/thread/activity/ThinkingReasoningShell.tsx +++ b/webui/src/components/thread/activity/ThinkingReasoningShell.tsx @@ -45,20 +45,27 @@ export function ThinkingReasoningShell({ > {label} - + > + +
{ } }); + it("keeps chevron color feedback faster than the drawer rotation", () => { + render( + , + ); + + const button = screen.getByRole("button", { name: "Thought" }); + const chevron = button.querySelector("svg"); + expect(chevron).toBeInTheDocument(); + expect(chevron).toHaveClass("transition-colors", "duration-200"); + expect(chevron?.parentElement).toHaveClass( + "transition-transform", + "[transition-duration:600ms]", + ); + }); + it("uses persisted turn latency for completed history instead of replay timestamps", () => { render(