cmux NEXT Inspector Changes: Claude's rows, state by glyph, five then Show more
First of three pieces for the Inspector's Changes card (rows, then cross-repo transcript detection, then the cached status path).
What
The Inspector's Changes card now draws its rows the way Claude Code desktop's does:
- Each row is the pull request's title (one line, ellipsis; its owner pill beside it), then
repo #N, its+adds -dels, a comment count with a speech-bubble icon when it has comments, and at the right endN failingin red or a small green dot when checks pass. Nothing shows when the App has not read its checks. - The state is shown only by the glyph's shape and color: open (green), merged (purple), draft (orange, base node crossed out), closed or conflicting (red, head crossed out). The "Merged" and "Closed" words are gone; the state name stays as a screen-reader label.
- Open pull requests come first, then the merged and closed ones, newest first within each.
- Five rows show, then Show more / Show less (the list no longer scrolls in its own box).
- A row's click opens the pull request beside the chat; Cmd-click still follows the link. The ⋯ menu (Open Beside Chat, Copy Link, Copy Reference) is unchanged.
InspectorPullRequestStatus gains mergeable (the header's pull request already carries it) and comments, which the status path fills in a later PR.
Changelog
- Changed: The Inspector's Changes card shows a pull request's state by its icon instead of a word, puts open pull requests first, and shows five rows before Show more.
Tests
- New
webviews/test/chat-inspector-changes.test.tsx: glyph anddata-stateper state with no state word on the line, the line's order (ref, counts, comments, checks), the green dot, Show more / Show less at five, a row click opening beside the chat, and the order (open first, then ended). webviews/test/chat-inspector.test.tsx: the nine-PR test now expects five, then all nine after Show more, the merged one last.- Gallery:
agent-pane.chat-inspectorfixture now has eight pull requests across three repositories (a draft, one with conflicts, a closed and two merged); new variantchanges-allopens Show more.
Observed / Not run
- Ran
scripts/web-lint.sh(passed after--fixformatting) andprepush-gate.py(no new violations); fleetcmux-ci compile-check --apppassed on each head. - Not run locally:
bun test(local test runs are not allowed on this Mac); CI's webview tests run them.
No capture: webview-only change; the gallery before/after (Linux gallery build, agent-pane.chat-inspector) is below.
Before / after
Before (base, the full gallery state): the state word, one list that scrolls, no comments.

After (full): five rows, Show more, state by glyph.

After Show more (changes-all), dark and light: open (green), draft (orange), conflicting and closed (red), merged (purple).


Agent session: cosmic-gray
🤖 Generated with Claude Code