diff --git a/apps/web/src/components/chat/MessagesTimeline.test.tsx b/apps/web/src/components/chat/MessagesTimeline.test.tsx
index 0957e025311..0fccf75d27e 100644
--- a/apps/web/src/components/chat/MessagesTimeline.test.tsx
+++ b/apps/web/src/components/chat/MessagesTimeline.test.tsx
@@ -218,6 +218,23 @@ function buildUserTimelineEntry(text: string) {
};
}
+function buildAssistantTimelineEntry(text: string) {
+ return {
+ id: "assistant-entry-1",
+ kind: "message" as const,
+ createdAt: MESSAGE_CREATED_AT,
+ message: {
+ id: MessageId.make("assistant-message-1"),
+ role: "assistant" as const,
+ text,
+ turnId: null,
+ createdAt: MESSAGE_CREATED_AT,
+ updatedAt: MESSAGE_CREATED_AT,
+ streaming: false,
+ },
+ };
+}
+
describe("MessagesTimeline", () => {
it("uses LegendList isNearEnd when deciding whether the live edge is visible", async () => {
const {
@@ -407,6 +424,20 @@ describe("MessagesTimeline", () => {
expect(markup).toContain('data-user-message-footer="true"');
});
+ it("keeps completed assistant message actions visible without hover", async () => {
+ const { MessagesTimeline } = await import("./MessagesTimeline");
+ const markup = renderToStaticMarkup(
+