Note
🤖 Claude Opus 5.5 on behalf of Oliver
Needs Maria's review. This removes a quick action Maria added on purpose in the redesign: the pin button that shows on hover for threads that are not pinned. Main shows only snooze and Settle there. Pinning stays in the right-click menu, and a pinned row still shows its pin glyph, which unpins on click. This is Maria's call; the alternative is to keep the hover pin button and close this PR.
Fix for the redesign stack, targets layer 1 (#28839).
Problem#
On main, hovering a sidebar thread row shows two actions on its top line: the snooze clock and "Settle". The redesign adds a third one, a pin button, for every row that is not pinned. That makes the hover row busier than main and cuts the repo name shorter while hovering.
Fix#
The hover row now shows the same actions as main: snooze, Settle, and the discard-draft x when there is a draft. The hover pin button, its click handler, and the onPin prop it used are gone. Everything else about pinning is unchanged:
- Right-click → Pin thread still pins. The menu calls the sidebar's own pin action directly, not the removed prop.
- A pinned row still shows its pin glyph, which turns into unpin on hover.
- The pinned section and drag-to-pin are untouched.
Before / after#
Pointer on a thread row. The pinned cells are hovering the pin itself, so they show its unpin icon and the edge of its "Unpin thread" tooltip.

Validation#
- In a real browser against both builds, with seeded Replay threads:
- Hovering an unpinned row. Before: Pin, Snooze, Settle. After: Snooze, Settle.
- Right-click → Pin thread moves the row to the top with its pin glyph, on both builds.
- Hovering the pinned row shows Unpin, Snooze, Settle, on both builds.
vp run check:changed: format, lint, knip, typecheck and the React compiler check pass. One test fails, Sidebar.shortcuts.browser.test.tsx "leaves thread shortcuts and their hints to the preview when their rules exclude it". It fails the same way on layer 1 without this change.
Made with Claude Opus 5.5 in Claude Code.
macroscopeapp[bot](GitHub profile, opens in a new tab) approved these changes