Repository navigation
Agent chat: remove the PR chip row from transcript messages - #29614
Conversation
Leo (2026-10-31): "a) remove the chips they're so bad", then "i literally said to just remove this" and "JUST ENTIRELY FUCKING REMOVE THIS STUPID FUCKING ELEMENT". Removes PullRequestDock (the '#N repo ... +N' links on a message's action line and its stand-in row after the latest message), its placement, legacy comparison modes, gallery, styles, strings and tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d750cf10922c785efa64
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Gallery before/after for
States
Pick other states with a Shipped in:
|
|
Owned by an agent session · session |
Leo (2026-10-31): "DON'T FUCKING SHIFT THE FUCKING COPY/FORK/WHATEVER FUCKING BUTTONS WITH THIS BULLSHIT". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d750cf10922c785efa64
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
|
Review (subagent): SHIP at e782cf7 Follow-ups (non-blocking): stale wording in test comments (agent-pane-queue-steer.test.ts header 'pull request bar', subagent-pane-own-state.test.ts 'bar'); bottomStack.gallery.ts play name checkPrQueue. |
…test helper Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d750cf10922c785efa64
…anner, its tests and CSS) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d750cf10922c785efa64
MessageActions: base removed the PR dock (#29614); the reply action row keeps only its blank-gap target. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
#29614's markup check pinned the opening tag exactly; the reply action row now carries its blank-gap target. The check still holds that the row starts with its buttons. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Conflicts: - App.tsx: base removed the per-message PR chip row (#29614) and the agents pill (#29792). Keep both removals; keep this PR's N PRs stack (PullRequestStackProvider, PullRequestList, PullRequestCountInStack). useTranscriptPullRequests moves into summary/PullRequestStack.tsx (without the removed legacy modes), and its three strings (prDock.label, prDock.count, prDock.countOne) come back. - bottomStack.css: keep the stack edge tokens; drop the agents-pill anchor, pr-dock and pr-comparison selectors base removed. - summary.css: take base (the pr-dock and pr-comparison rules are gone). - design-tokens-baseline.jsonl: base's, regenerated with --update-baseline (one entry shrinks: the recap's old padding). - Tests and gallery: drop the legacy-bars variant, the agent-pane.pr-dock frames and the agents-pill part; the per-message pills now count 0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-f71664ebfb6cf5206479
…with the prose (#29124) * Agent pane: red test, status rows share the prose's left edge and sit centred between replies A gallery entry (agent-pane.transcript-row-alignment) with a reply, a subagent that finished, a reply, a background command that ended, a reply, another agent's message and a reply, under a folded turn's Worked for line and a footer with its time, tokens and actions; and a browser test that measures every row's first ink against the prose's left edge, the iconed rows' shared text x, and the room above and below each status row. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-92fa78a91e29868c5eaa * Agent pane: red test, transcript rows share one icon column and one text inset A gallery state (agent-pane.agent-message-row / icon-column) stacks a command row, a message from a Codex session (its logo), this agent's send (the envelope) and a message from a sender with no mark (the bot). The browser test measures each top-level row's icon slot, glyph center, drawn glyph size and first word's x, and fails while a received message's mark sits 8px right of the tool rows' slot, its name 5.5px right of their words, and its logo draws at 14px beside the envelope's 11.5px. Leo: "the alignment i feel like we might as well" Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * Agent pane: messages between agents sit in the tool rows' icon column Tool rows lay out as a grid: the 16px glyph slot at the row's left edge, the 8px gap, the words at 24px (grid.md 5.5). Messages did not: - a received message's line and sender each added 4px of inline padding, so its mark sat 8px right of the slot and its name started at 28px; the line drops the padding and the mark takes the slot (its hover chips keep their place before the chevron); - a sent message's line is flex, where the tool icon's -1.5px end margin (a no-op in the grid) pulled its words to 22.5px; it is 0 there; - the waiting group's chevron moves into the same slot. A harness logo draws at 12px, the stroke glyphs' drawn size, instead of 14px. Leo: "the alignment i feel like we might as well" Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * Agent pane: status rows sit centred between replies; action rows start on the prose's left edge Leo, 2026-10-30: "see how claude code has those centered tool calls / id like more alignment too", and "1 CODEX 2 US 3 US 4 CODEX 5 CLAUDDE WE NEED TO LINE OUR SHIT UP LIKE THEIRS". - A status row between two replies (a tool run, a subagent's or a background command's end, another agent's message, a compaction, a failover, a session start: model.ts isStatusRow) has as much room under it as over it: the reply's action row (4 + 24) and the step's 2px margin, 30px each side (--cv-status-gap). It was 38 over and 4 to 10 under. Inside an opened Worked for, whose replies draw no action row, 12 each side. model.ts statusEdge marks the rows from the next drawn row alone (acpmux-row--before-status / --before-reply), and the estimates follow. - The reply's and the footer's action row starts its first glyph on the prose's left edge, its 24px button overhanging by the glyph's 4px inset; the footer's "Worked for 5s" label and the activity line under a plan drop their 2px inset. Rows that hold an action row keep layout containment alone, so the overhanging hover pill is not cut. - Gallery agent-pane.transcript-row-alignment gains roomy and off variants. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-92fa78a91e29868c5eaa * Agent pane: tool rows' words start at the shared +24 again #28018 made .cv-tool a flex row; the icon's -1.5px right margin, which the grid's fixed 16px track used to absorb, now pulled the label to 22.5px, off the agent-message rows' 24px. Drop it so every iconed row's words share one x (design/grid.md 5.5). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: name the plain status gap's reply share as a token check:design-tokens refuses a raw calc in padding-bottom; the derived value lives in --cv-status-gap-plain-over beside its parts. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: a drag can start from a reply's blank action row Over a status row a reply's action row is its whole bottom room, so the row-gap target (its bottom padding) is 0px there and a press in that gap started nothing (gallery health: agent-pane.gutter-select#agent-to-tool-gap). The action row's own blank box, never its buttons, is now a transcript gap (data-transcript-gap=blank). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: the icon-column check measures the drawn mark, not its wrapper Base's AgentIdentity (#27575) wraps the sender mark in a span whose box is its line height; the check took that span as the glyph and read 17-19px. Prefer the svg or img the row draws. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: reply-actions test counts the status gap a following message takes A reply that gains an agent message after it gains its action row (28px) and gives its 8px message gap to the status row's centred room, so it grows by 20, not 28. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: footer-actions test allows the action row's own attributes #29614's markup check pinned the opening tag exactly; the reply action row now carries its blank-gap target. The check still holds that the row starts with its buttons. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: text under a tool row starts at the row's words again --cv-tool-text-inset still subtracted the 1.5px icon overlap this PR removed, so a hook's block, a failure's cause and the other text under a tool row started 1.5px left of the row's words (tool-row-column-browser.test.ts). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: a status row takes the centred room only between two replies Review BLOCK at 82758fc: a tool row under a prompt and over a reply (a turn that starts with a tool) took the 30px room under it while keeping its prompt gap over it. statusEdge now reads the drawn row above for that side (prevDrawnRow), and a settled folded reply, which keeps its action row, gets the full room (#29585). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Agent pane: row-alignment capture hovers a reply's action row only where one exists #29740 left a turn's copy to its footer, so no reply in the gallery draws its own action row and the hover waited out its timeout. The geometry (every lead at 0, every status gap 12/12) already held. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
The coordinator's ruling relays Leo: "remove the things", so the removal in #29614 stands. This takes the compact "N PRs" count, its chip list (summary/PullRequestStack.tsx), the prDock.count/countOne/label strings, their CSS, gallery variants and tests out of this PR. What stays is the glass that joins the running tray and the composer, plus Stop in a tray row's right-click menu. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639
…ay row's menu (#28533) * test(agent-pane): every bottom card shares the composer card's edges Add agent-pane.bottom-stack-styles, the whole bottom stack with synthetic data (nine background subagents, one chat waiting, two PRs, the composer), and a geometry test: every card over the composer takes the composer card's left and right x to 1px, the cards stand one --acpmux-stack-gap apart, and a one-line "N PRs" row opens on the click to chips at the card's width. Red on base: no PR row, no stack gap token. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the bottom stack is one glass on the composer's edges, with its N PRs row back Leo, 2026-10-30: "you guys fucking removed the # prs thing entirely instead of just simply fucking doing it". cmux#26082 moved the PR pills into each message's action row and dropped the dock's collapsed count. The count comes back as one row in the bottom stack (summary/PullRequestStack.tsx): the PR mark, "N PRs" and a disclosure on the tray header's columns, opening on the click with no fade to one full-width chip per PR with the reply links' hover card. The per-message pills stay. Every card over the composer takes the composer card's two edges and stands --acpmux-stack-gap over the next; the selected look is one glass stack (gap 0, squared joins, one hairline between parts). The gallery compares it with separate cards 4px apart and a compact strip. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the N PRs count opens Changes; its disclosure opens the chips, each with × Keep the settled PR dock design (design/session-info.md, Leo 2026-10-26): the count opens Session Info > Changes and counts what Changes counts; the disclosure beside it opens the chips, and a chip's × hides that shortcut only, in the dock's existing per-chat dismissal list. The disclosure's glyph centers on the stack's trailing line, 22 from the card's right edge. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * chore(design): map the bottom stack and the running tray to their specs bottomStack.css and the PR stack join the composer surface (design/composer.md); the running tray gets its own surface (design/running-tray.md). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): the N PRs row is a part of the stack; it rides up with the composer agent-pane-dock-gutters lists the PR row among the stack's parts and checks its gutter passes the wheel through as the tray's does; pr-dock-inline-layout lets the dock and the PR row move up with a queued prompt that grows the form, their own size unchanged. The styles gallery covers PullRequestStack.tsx only (a cover names a component, not a sheet). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): every stacked row's chevron shares one x The N PRs row's disclosure, the tray header's chevron and each tray line's chevron must center within 1px of each other at 1100, 760 and 420px. Red at 7e9f7a6: the N PRs chevron sits about 25px right of the tray's. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the N PRs chevron ends on the tray's chevron column --acpmux-stack-trail-end is the stack's one trailing chevron column, the running tray's (row padding, Stop track, gap); the N PRs disclosure ends on it, so the stacked rows' chevrons share one x. Once the tray moves its chevron past Stop (#27930), this variable becomes the row padding alone, and the geometry test fails until it does. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): the folded N PRs count adds no row; × on hover only; no PRs without the composer Leo, 2026-10-30: "BUT IF IT'S ONLY N PRS DON'T FUCKIGN TAKE THE ENTIRE ROW AND FUCKING BLANK IT OUT". The edges test now holds the stack as tall with the folded count as with no pull requests (with and without the tray), the count to its content's width with its own highlight, the tray's chevrons to one x, and the opened chips' × to their row's hover or focus (Tab reaches it, Delete dismisses). agent-pane-pr-stack-gate reads App.tsx's syntax tree: the pull requests live only inside the composer's element, so a handoff review or the Sandboxed receipt shows none. The dock-gutter and inline-layout tests go back to base: no row of the count stands in the stack. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the N PRs count is a compact control in the quiet row, not a row The folded count is one content-sized button beside the permission mode in the composer's quiet row, a row already there, so it adds no row with or without the tray; its pill lights only itself. It opens the chips on the click with no fade, right over the composer at the card's width; a chip's × shows only on its row's hover or focus, with no fade, and Delete or Backspace on a focused row dismisses it. The count and the chips share one provider that is the composer element's own `!reviewing` branch, so they cannot show without the composer. The gallery compares the count on the tray's header line and over the composer's left edge; the tray-line one falls back to the quiet row with no tray. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the opened pull requests skip the stack's rise-on-mount The rule that turns the stack's ui-enter off for the chips came before the ui-enter rule with the same specificity, so the chips still rose and faded in on the click. It now comes after it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): the opened-chips still has the pointer on its first row Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): focus goes to the prompt after the last PR row; the expanded gallery state settles Router review at 3106205: after the last PR row was dismissed, focus went to the count, which is disabled with nothing left to open, so keyboard focus was lost. It now goes on to the composer's prompt; the edges test dismisses the last row with Delete and checks the active element is the prompt, never the body. gallery-health's agent-pane.bottom-stack-styles#expanded timed out: its play waited for every animation in the dock to end, and a running line's spinner never ends. The play now waits only for motion that ends. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): no control repeats on every opened PR row; a row's own menu dismisses it The opened chips drew a × on every row (shown on hover or focus), which repeats a control on every row. A row is now its link alone; right-click (or Shift-F10) opens its menu with "Dismiss pull request #N", and Delete or Backspace on a focused row still dismisses it. The edges test asserts no row carries a control at rest, hovered or focused, Tab goes row to row, and the menu's Dismiss removes the row and moves focus to the next one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): open a PR row's menu from the keyboard (the hover card from the earlier hover sat over the row) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the N PRs count and its rows keep the arrow cursor check-default-cursor (Leo, 2026-10-30: "change all pointers back to cursor-default") flagged the two cursor: pointer rules this branch added. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): a settled tray stays cardless in the one-glass stack Base #29276 made a settled tray (nothing runs) draw no card. The stack's join rules gave it a rim and squared the part under it, so the subagent-row-anatomy#done-one scene threw. A settled tray now joins nothing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): a tray line's Stop moves into its context menu #28533's review [P1][blocking]: a Stop button on every running tray line is a control repeated down the rows. Each running subagent and registry command now stops from its line's context menu (right-click, or Shift-F10 / the menu key on the focused line), through the shared ui/ContextMenu (the app's native menu). The item keeps the old button's states: off while the request is out, "Couldn't stop X" and retryable when refused; a command's says "Stop only this command". The line stays lit while its menu is open. Lines with nothing to stop get no menu. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): the PR stack reads ChangesSection from session-info after the base rename Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): a tray line that can stop keeps its focused node when it no longer can Red at this commit: the line's ContextMenu host is dropped when nothing can be stopped, so React remounts the focused row. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): a tray line keeps its context menu host when nothing can stop A line that ends, or whose command's process id arrives, was rendered without its ContextMenu wrapper, so React remounted the row and dropped its keyboard focus. The host now always wraps the line, with no items when nothing can stop; ui/ContextMenu keeps the default right-click and opens nothing for an empty list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): a subagent stopped, ended and resumed can be stopped again Red at this commit: the tray keeps the line's taken Stop as "stopping" after the run ends, so the resumed run's Stop stays off. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * fix(agent-pane): a taken Stop lasts one run; a resumed subagent can stop again The tray kept a line's Stop as "stopping" after its run ended, so a subagent that ended and resumed while the tray stayed mounted had its Stop off for good. When the tray's lines change, a Stop whose line no longer can stop (it ended, or left) is dropped. One stopKey names a line's Stop for both. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * test(agent-pane): the short-dock Stop check gives the list a whole narrow line 9e2dc28 moved the tray line's Stop into its context menu, so the short-dock test now measures the running line's button instead of the Stop button. A narrow line is two rows (56px at scale 1: its time and state wrap under its name), but the test grew the dock by two header heights, of which the squeezed composer took back ~31px, leaving the list a one-row (27px) viewport. The old 22px Stop fit in it; the whole line cannot, so scrollIntoViewIfNeeded could not bring it inside the list and its center (the right-click point) sat over View all. The tray layout is unchanged from before 9e2dc28; the test now grows the dock until the list holds the whole running line and asserts that before measuring. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 * Bottom stack: drop the "N PRs" control, keep the glass The coordinator's ruling relays Leo: "remove the things", so the removal in #29614 stands. This takes the compact "N PRs" count, its chip list (summary/PullRequestStack.tsx), the prDock.count/countOne/label strings, their CSS, gallery variants and tests out of this PR. What stays is the glass that joins the running tray and the composer, plus Stop in a tray row's right-click menu. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-63b9964940c20354b639 --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: cmux-bot[bot] <348531757+cmux-bot[bot]@users.noreply.github.com>
…nd N more" (#32183) * Agent chat: a started chat's row names every pull request on its own, no "and N more" Leo (2026-10-31): "this +11 is really bad you guys should just render them all separately". The PR chip row he said it of was removed on his later order (#29614); the started chat's status line was the last place that still folded a chat's pull requests into a count. It now names each one (`cmux #22092 · cmux #22093 · ...`), wrapping onto more lines instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-1811af59a5bf16d868b8 * Agent chat: format the started-chat PR tests Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-1811af59a5bf16d868b8 * Agent chat: key a started chat's other PRs by place; gallery indent (review follow-ups) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-1811af59a5bf16d868b8 --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Conflicts came from base renaming Inspector to Session Info (inspector/ to session-info/, .acpmux-chat-inspector to .acpmux-session-info) and from #32763 (a split pane starts with Session Info closed). sessionInfoState.ts keeps both rules: a chat with no saved state starts closed when it replaces another chat's session or sits under a split pane's key; base's Show more, section versioning and split keys stay, and the saved state keeps its v: 2. App.tsx calls startNewSessionInfoChat at the handshake reset. The PR's gallery plays open Session Info with the renamed selector; PullRequestDockComparisons.ts stays deleted as on base (#29614). The per-pane test folds Context instead of opening it, since base opens Context by default. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Removes the PR chip row from agent chat transcript messages: the
#N repo #M repo +Nlinks at the right of a message's line. Its stand-in row after the latest message goes too. This is a removal only (+20 / −2910). Nothing replaces it.Leo's words:
What is removed:
summary/PullRequestDock.tsx, its gallery, and the gallery-only legacy and comparison modes (PullRequestDockLegacy.tsx,PullRequestDockComparisons.ts).pullRequestPlacement.ts(the stand-in row) andpullRequestRows.ts.prDock.*strings, and its own tests.What stays: Session Info's Changes (it still uses
prDock.dismiss), the header PR chip, link hover cards, and PR links inside message text.Supersedes #29279, which reworks the same chips.
Review: a subagent review at the head returned SHIP. Its three follow-ups only reword stale test comments.
🤖 Generated with Claude Code
Agent session: agent session
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Removes the PR chip row from agent chat transcript messages: the
#N repolinks on each message's action line and the stand-in row after the latest message. The chip planner merged in from the rework, with its tests and CSS, goes too. Nothing replaces it.prDock.*strings, and the dock's shared browser tests, and shrinks the design-token baseline.Written for commit dff6606. Summary will update on new commits.