Skip to content

cmux NEXT transcript: chips use the row's width and truncate only when it is full - #22731

Merged
teamleaderleo merged 4 commits into
feat-cmux-nextfrom
cmux/transcript-chips
Oct 21, 2026
Merged

teamleaderleo merged 4 commits into
feat-cmux-nextfrom
cmux/transcript-chips

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

The pull request bar above the composer cut its title off at a fixed 360px (and its repository at 160px) while the composer's column still had room, as in "#634 leo-workspace rulebook: reviewed PRs merge right away; the label is the …". The bar now uses the column's full width. The title gives way first, then the repository.

The same fixed caps on ellipsized text came out elsewhere in the agent pane:

  • Reference chips in replies (owner/repo#N · title) capped the title at 32ch. The chip is now inline-flex with max-width: 100%, so it moves to its own line first and is cut off only when it is wider than that line. Its hover card already shows the full title.
  • Question tabs (160px): the tab row wraps, so a long tab takes a whole line before it is cut off.
  • The handoff header's coverage note (160px): its tools group is flex: none (header.css), so the note now shows its whole label ("Unverified" or the native policy's name, both short) instead of a 160px cap.

A new test, test/chip-fixed-width.test.ts, scans the pane's stylesheets and fails on any rule that ellipsizes text under a fixed-length max-width (px, ch, em, rem).

Audited and left alone: fixed caps on the parent of an ellipsized child. These are the header worktree chip (180px), the header's inline status (160px), the composer location button (128px / 145px) and the project button and host (220px / 110px). They are header and composer controls that share a crowded row on purpose, not transcript chips. Popover and card widths (the link preview, session previews) are also unchanged.

No tooltip on a cut-off bar: tooltip-rules.ts (Leo 2026-10-13) gives a chip that shows its text none, not even its full text when it is cut off (44c9aa1 dropped the hover title this PR first added).

Testing

From webviews/:

  • bun test test/chip-fixed-width.test.ts: red on the first commit (five fixed caps listed), green on the fix.
  • bun test test/pr-dock-stale-state.test.tsx test/tooltip-rules.test.ts src/agent-session/acpmux/chips src/agent-session/acpmux/summary: pass.
  • bunx tsc --noEmit -p .: clean.

Not run locally (the Mac is overloaded; no browser lanes here): the WebKit/Chromium lanes agent-pane-pr-dock, agent-pane-column-edges and agent-pane-links-blue. They run in this PR's web / react-apps-check. A new gallery variant, agent-pane.pr-dock:long-title, shows the long bar.

Changelog

Fixed: pull request bars and reference chips in the agent pane use the available width and cut their title off only when the row is full

🤖 Generated with Claude Code

Agent session: cosmic-gray

teamleaderleo and others added 2 commits October 20, 2026 18:28
Red: bun test test/chip-fixed-width.test.ts test/pr-dock-width.test.tsx
lists five ellipsized rules capped at a fixed width (the PR bar's title at
360px among them) and finds no tooltip on a cut-off PR bar title.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…hen it is full

The PR bar above the composer cut its title at 360px and its repository at
160px while the column had room; both now take the column's width, the
title giving way first, and a cut-off bar names itself on hover. The same
fixed caps go from reference chips in replies (32ch; the chip now moves to
its own line before it truncates), question tabs and the handoff coverage
note (160px).

Green: bun test test/chip-fixed-width.test.ts test/pr-dock-width.test.tsx

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 47b54c3: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr22731 -f ref=cmux/transcript-chips -f platform=macos -f backend_mode=local

Unclear: web / react-apps-check (4) failed: no known signature; failed step: Test webviews. This PR merged before its CI finished: fix forward on main.

CI failed on 47b54c3e76 (run 39530433601 attempt 1): 3 code, 2 unknown.

Job Verdict Why
web / react-apps-check (1) code a web test failed
web / react-apps-check (2) code a web test failed
web / react-apps-check (4) unknown no known signature; failed step: Test webviews
web / react-apps-check (3) code a web test failed
web / react-apps-check unknown no known signature; failed step: Check webview test shards

Failures:

  • seen on other PRs composer-row-rhythm.test.ts at 760 px (light): one gap in a group, one between groups, Send at the edge: failed (job)
  • seen on other PRs composer-row-rhythm.test.ts at 760 px (dark): one gap in a group, one between groups, Send at the edge: failed (job)
  • seen on other PRs agent-pane-background-tasks.test.ts clicking a background task's end opens its terminal beside the chat: failed (job)
  • seen on other PRs composer-turn-cycle.test.ts at 420 px typing while the turn runs moves neither the mic nor Send: failed (job)
  • seen on other PRs composer-turn-cycle.test.ts at 720 px typing while the turn runs moves neither the mic nor Send: failed (job)
Matched log lines
web / react-apps-check (1): (fail) at 760 px (light): one gap in a group, one between groups, Send at the edge [32388.83ms]
web / react-apps-check (2): (fail) clicking a background task's end opens its terminal beside the chat [911.67ms]
web / react-apps-check (3): (fail) at 420 px typing while the turn runs moves neither the mic nor Send [31585.78ms]

Not re-run automatically: web / react-apps-check (1), web / react-apps-check (2), web / react-apps-check (4), web / react-apps-check (3), web / react-apps-check are not machine failures.

Written by scripts/ci/classify_failures.py (ci-failure-attribution.yml); signatures are its SIGNATURES table. A machine verdict is the runner's fault, not this PR's; yours means the failing file is one this PR changes, also red on main that main's latest full suite fails the same way, seen on other PRs that it failed on another pull request's run lately.

red: cmux-next checks (god files, concurrency, crash safety, l10n); NEW: red check: Script tests (pin-cmux-tui, embed-cef, ensure-cef store) (+2 more) is not red on the base 5fda0ee; do not merge until green; see lane-rules
red: web / Web status; base red: the same failure on the base 5fda0ee; does not block
red: web / react-apps-check; no finished base run on 5fda0ee to compare; do not merge until green; see lane-rules
red: web / react-apps-check (1); no finished base run on 5fda0ee to compare; do not merge until green; see lane-rules
red: web / react-apps-check (2); no finished base run on 5fda0ee to compare; do not merge until green; see lane-rules
red: web / react-apps-check (3); no finished base run on 5fda0ee to compare; do not merge until green; see lane-rules
red: web / react-apps-check (4); no finished base run on 5fda0ee to compare; do not merge until green; see lane-rules

CI fast guards failed on 44c9aa158b (https://github.com/manaflow-ai/cmux/actions/runs/39528375630). It does not block the merge; a red guard merged into main breaks it for every open PR.
The log named no failed step; see the run.

Agents: python3 scripts/ci/guard_attribution.py fix applies the mechanical fixes locally.

Tour of 47b54c3e76 (run): no media. The tour did not run: only webview code changed (7 path(s)), which the gallery advisory run checks in Linux Chromium on the pull request (its artifact holds any captures); add the media-tour-mac label to tour it on a Mac.

@blacksmith-sh

blacksmith-sh Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Found 4 test failures on Blacksmith runners:

Failures

Test View Logs
test/agent-pane-background-tasks.test.ts/agent-pane-background-tasks.test View Logs
test/agent-pane-background-tasks.test.ts/agent-pane-background-tasks.test View Logs
test/markdown-wide-width-layout.test.ts/markdown-wide-width-layout.test View Logs
test/markdown-wide-width-layout.test.ts/markdown-wide-width-layout.test View Logs

Fix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@teamleaderleo
teamleaderleo marked this pull request as ready for review October 21, 2026 01:34
@cursor

cursor Bot commented Oct 21, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot 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.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next guards / defaults-snapshot is red on 23 of 23 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

@teamleaderleo

teamleaderleo commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator Author

Visual preview of 47b54c3: in the maintainers' private review feed.

tooltip-rules.ts (Leo 2026-10-13): a chip that shows its text gets no
tooltip, not even its full text when it is cut off. Drops
titleWhenCutOff and its test; the cap removal and the fixed-width
scanner stay.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c08-af57-7bb3-9f61-498ade344f20&host=cosmic-gray
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Bead cx-rwggn created for this PR by the cmux coordinator.

@github-actions

Copy link
Copy Markdown
Contributor

Shipped in:

@github-actions

Copy link
Copy Markdown
Contributor

Shipped in:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant