Repository navigation
Agent pane: another agent's message shows under its line, cut to six lines - #23932
Conversation
|
Bead |
|
Owned by agent-message-style on cosmic-gray · session |
|
Owned by agent-message-style on cosmic-gray · session |
|
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)
Passes: CI passes on CI passes on Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); base red: the same failure on the base 164b139; does not block Tour of Gallery before/after for
States
Pick other states with a |
|
Found 16 test failures on Blacksmith runners: Failures
...and 6 more test failures. View all on Blacksmith: run 39710968783, run 39710968928
|
|
Review (subagent, correctness first): SHIP at 31fcf86 An independent
Two non-blocking notes, left for a follow-up:
Verification:
|
…lines The message is now drawn by default as the muted glass card under its line (Markdown, PR and file links), instead of hiding behind a one-line preview. A message longer than six lines is cut there with the last line fading out; the line's chevron, or a click on the cut card, opens it whole, with Details (the prompt as the agent got it) under it. The row estimate (model.ts) counts the card's text up to the same six lines. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16028-eee2-75a1-b075-2e4023976100&host=cosmic-gray
31fcf86 to
f450363
Compare
Base gained #23825, whose queued agent message draws as its received line and whose test read the line's one-line preview, which this branch removes. The test now reads the card under the line (whole, not cut), and the queue's comment and gallery note say the message is a card cut to six lines. Review: a click on a cut card that plays a video or presses another control (input, label, summary, role=button) no longer opens it, and two comments that still spoke of the preview are updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16028-eee2-75a1-b075-2e4023976100&host=cosmic-gray
|
Review (subagent, correctness first): SHIP at e6d9e9f A fresh general-purpose subagent reviewed the full diff against
The reviewer checked:
Nits left for later:
Run on huge-blue at this head:
|
|
Shipped in:
|
- IncomingMessageCard measured its text with the global getComputedStyle (#23932), which a jsdom test does not install; any transcript with another agent's message threw. It now reads the box's own window, as PromptText does. (regression; fixes transcript-copy's sent-prompt test) - transcript-range-content's button variant clicked the prompt's floating Copy, which #24267 removed on purpose. It now selects a range that starts at another agent's message (a line that keeps its floating Copy) and clicks that. (stale test) - agent-pane-older-rows-fade read a row's turn from its textContent, and #23769's message age ("3 weeks ago") runs straight on from "Question 130", so opened rows read as turns 1113..1303. The recorder now drops <time>. (stale test) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- IncomingMessageCard measured its text with the global getComputedStyle (#23932), which a jsdom test does not install; any transcript with another agent's message threw. It now reads the box's own window, as PromptText does. (regression; fixes transcript-copy's sent-prompt test) - transcript-range-content's button variant clicked the prompt's floating Copy, which #24267 removed on purpose. It now selects a range that starts at another agent's message (a line that keeps its floating Copy) and clicks that. (stale test) - agent-pane-older-rows-fade read a row's turn from its textContent, and #23769's message age ("3 weeks ago") runs straight on from "Question 130", so opened rows read as turns 1113..1303. The recorder now drops <time>. (stale test) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Another agent's message now shows its text under its line by default, as the muted glass card with Markdown, instead of hiding it behind a one-line preview. A message longer than about six lines is cut there, with the last line fading out. The line's chevron, or a click on the cut card, opens it whole, with Details (the prompt as the agent got it) under it. Leo asked for this on nightly 331e2e9: agent messages left, styled, markdown rendered, collapsed past about 6 lines.
IncomingMessageCard.tsx: the card always draws. A layout effect with a ResizeObserver measures whether the text runs pastRECEIVED_LINES(6) at its drawn width. A cut card opens on click, unless the click follows a link, presses a button or ends a selection. The chevron shows only when opening shows more (a cut message's rest, or Details). The reply editor and the Replied note no longer wait for the message to be opened. Find in Chat still opens a cut message that holds its match.conversation.css:.cv-received__body[data-cut] > .cv-received__textcaps the text at six lines, with a mask fade (glass shows through, no cover), the same way a long prompt is cut. The unused preview rule is removed.model.ts: the row estimate counts the card (4 px above, 8 px padding on each side, 6 px below) plus the text's height up toRECEIVED_LINESlines, so a message mounting moves nothing.agent-pane.incoming-message: newlongvariant (cut), andopenednow opens a long message whole.Changelog
Changed: another agent's message shows its text under its line, cut to six lines when longer.
Tests
rowEstimates.test.ts: a short message's estimate is its line plus a one-line card, and a 40-line message's estimate stops at six lines.agent-pane-suggested-tasks.test.ts:Observed / Not run
bun test src/agent-session/acpmux/rowEstimates.test.ts src/agent-session/acpmux/conversation/: 145 pass.CMUX_BROWSER_TESTS=1 bun test test/agent-pane-suggested-tasks.test.ts -t "messages from other agents": 14 pass, including the new one.tsc --noEmit: clean.oxlinton the changed files: 0 errors.vp fmt.scripts/cmux-next/prepush-gate.py: no new violations.Agent session: cosmic-gray
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.Summary by cubic
Another agent's message now always shows its text under its line as a muted glass card, instead of hiding behind a one-line preview. Messages longer than about six lines are clipped with the last line fading out; the line's chevron, or a click on the clipped card, opens the message whole, with Details (the prompt as the agent got it) underneath.
role=button, video, audio), or ends a selection.Tests
Written for commit e6d9e9f. Summary will update on new commits.