diff --git a/apps/fabro-web/app/routes/run-stages.tsx b/apps/fabro-web/app/routes/run-stages.tsx index ad5dfc104..7025541cb 100644 --- a/apps/fabro-web/app/routes/run-stages.tsx +++ b/apps/fabro-web/app/routes/run-stages.tsx @@ -1481,11 +1481,18 @@ function ChatUserCard({ content }: { content: string }) { const isLong = content.length > CHAT_PROMPT_PREVIEW_CHARS; return (
-
+ {/* + `w-full` is load-bearing. `items-start` keeps the expand button hugging + its label, but it also leaves this wrapper intrinsically sized, and the + bubble's own `w-fit` width is only clamped to `max-w-[85%]` after that + intrinsic pass. The text then keeps the wider pre-clamp measurement and + spills past the bubble. Filling the resolved width sidesteps it. + */} +
{expanded ? ( ) : ( -

+

{isLong ? `${content.slice(0, CHAT_PROMPT_PREVIEW_CHARS).trimEnd()}…` : content}