Repository navigation
Conversation
…utton No caller passed either prop, so the button now always renders at size xs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — Removes unused copy-button customization props while preserving the existing size and behavior at all call sites. No product defaults or diagnostic suppressions change. You can add or adjust custom eligibility rules. Learn more. |
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Button props and fixed size apps/web/src/components/chat/MessageCopyButton.tsx |
The component no longer accepts size or className. The button always uses size xs; variant mapping is unchanged. |
Estimated code review effort: 1 (Trivial) | ~3 minutes
Change: Refactor
Merge Risk: 
Minimal · up to add01
-
The change is limited to removing unused props and fixing the button size, with no identified merge-blocking risk.
Pre-merge checks: 
4
-
Full details: Description check
-
Explanation
The description includes all required sections, explains the problem and change, documents scope and approval rationale, reports focused verification results, identifies unchecked full CI and build checks, and explains why screenshots are not applicable.
-
Finishing Touches
-
Generate unit tests (beta)
-
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Usage-based review receipt
- Mode: Continue automatically
- Reviewed files: 1
- Charged: $0.25
- View usage details
Note
This review was completed with usage-based billing: files reviewed beyond your plan's included limits are billed at $0.25/file. View usage-based billing.
Problem
MessageCopyButtonaccepts optionalsizeandclassNameprops and forwards them toButton, but no caller passes either one. Every copy button already renders at the defaultsize="xs"with no extra class, so the props are unused API that suggests the button can be resized or restyled from outside.Change
The two props, their types, and their forwarding are removed from
apps/web/src/components/chat/MessageCopyButton.tsx.Buttonnow getssize="xs"directly.label,icon,extraFlavorsandvariantare unchanged. One file, 1 line added, 6 removed.Scope and approval
No issue. This is maintenance work with no behavior change: the button looks and works the same at every call site, so it needs no product-direction approval under CONTRIBUTING.md. If maintainers would rather keep the props for future callers, this PR can simply be closed.
Verification
mainwas checked:TimelineAssistantRows.tsx:224,TimelineUserMessageRow.tsx:334, 336, 787, 800andMessageCopyButton.browser.test.tsx:11. None passessizeorclassName. The one spread (TimelineUserMessageRow.tsx:789) only addsextraFlavors. The mobileUserMessageCopyButtonis a separate component.Buttonreceives the same props as before for every caller:sizewas always the"xs"default, andclassNamewas alwaysundefined, whichcn(buttonVariants(...))treats the same as a missing prop.vp run check:changed 1d626d02d9: format, lint, knip, typecheck (2 packages), theMessageCopyButtonbrowser test and the React compiler check all pass.No screenshots: nothing renders differently, because every caller already got these exact
Buttonprops.Not checked:
Prior PRs
No open or closed PR makes this change. #13208 by juliusmarminge last reworked how this button forwards
classNameandvarianttoButton. #12865 by saphid changed the action names, and #23679 by only21mil changed clipboard errors; neither changed these props.Generated with Claude Opus 5.5 and GPT-6.1 Sol in T3 Code Nightly