Polish issue chat actions and overflow

- Scale activity components (events, runs) to ~80% font size with
  xs avatars for a quieter visual weight
- Hide succeeded runs from the timeline; only show failed/errored
- Always show three-dots menu on agent comments with "Copy message"
  option, plus optional "View run" when available
- User avatar repositioned to top-right (items-start) of message
- Change "Me" → "You" in assignee labels for natural chat phrasing
  ("You updated this task")

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
dotta 2026-04-06 16:34:56 -05:00
parent 94652c6079
commit f94fe57d10
4 changed files with 55 additions and 42 deletions

View file

@ -47,7 +47,7 @@ describe("assignee selection helpers", () => {
});
it("formats current and board user labels consistently", () => {
expect(formatAssigneeUserLabel("user-1", "user-1")).toBe("Me");
expect(formatAssigneeUserLabel("user-1", "user-1")).toBe("You");
expect(formatAssigneeUserLabel("local-board", "someone-else")).toBe("Board");
expect(formatAssigneeUserLabel("user-abcdef", "someone-else")).toBe("user-");
});

View file

@ -76,7 +76,7 @@ export function formatAssigneeUserLabel(
currentUserId: string | null | undefined,
): string | null {
if (!userId) return null;
if (currentUserId && userId === currentUserId) return "Me";
if (currentUserId && userId === currentUserId) return "You";
if (userId === "local-board") return "Board";
return userId.slice(0, 5);
}

View file

@ -485,6 +485,7 @@ export function buildIssueChatMessages(args: {
}
for (const run of [...linkedRuns].sort((a, b) => toTimestamp(runTimestamp(a)) - toTimestamp(runTimestamp(b)))) {
if (run.status === "succeeded") continue;
orderedMessages.push({
createdAtMs: toTimestamp(runTimestamp(run)),
order: 2,