Skip to content

cmux NEXT: Jump to latest morphs into pulsing accent dots while the agent works - #21800

Merged
teamleaderleo merged 2 commits into
feat-cmux-nextfrom
feat/next-scroll-thinking-dots
Oct 19, 2026
Merged

teamleaderleo merged 2 commits into
feat-cmux-nextfrom
feat/next-scroll-thinking-dots

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 18, 2026 •

Copy link
Copy Markdown
Collaborator

Leo pointed at Claude desktop's Code tab: its scroll-to-bottom button turns into softly pulsing dots while the model is thinking.

cmux NEXT already had Jump to latest: a glass circle that shows while you're scrolled up, with dots while working. Before this change it swapped glyphs instantly, and the dots were text-colored with an opacity-only blink. Now it matches the reference:

  • Morph: the arrow and the dots share one grid cell. While the agent works, the arrow shrinks and fades out as the dots grow in, and the reverse happens when the turn ends. This uses the pane's --agent-motion-in and --agent-ease-out tokens.
  • Accent dots: the dots use var(--agent-accent), with no literal colors.
  • Pulse: each dot runs a staggered opacity and scale wave. The animation runs only while working, so hidden dots don't keep compositor work going.
  • Reduce Motion: every transition and animation stays under prefers-reduced-motion: no-preference. Reduced motion gets static dots with no morph, the same as data-status-indicators="static".
  • No change to the shape: it's still a true circle (32×32, 50%), and the dots are 4×4 circles, so agent-pane-no-capsules passes. The tooltip is unchanged: it's an icon-only button and its label is localized in all 21 locales already, so no new strings.

Click behavior is unchanged: it scrolls to the latest row.

Screenshots

Gallery entries jump-latest (arrow) and jump-latest-working (dots): see the gallery-advisory receipt below.

Tests

Local runs, with the agent-pane bundle built: agent-pane-no-capsules, tooltip-rules, theme-colors, agent-pane-styles and agent-pane-follow-live (the browser lane is skipped locally).

🤖 Generated with Claude Code


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


Summary by cubic

Updates the cmux NEXT Jump to latest button to morph its arrow into pulsing accent dots while the agent works, matching Claude desktop's Code tab. Previously the arrow and dots swapped glyphs instantly and the dots blinked in text color; now both share one grid cell and cross-fade with a scale, and the dots take the theme accent in a staggered opacity and scale wave.

  • The dots pulse only while working, so hidden dots don't keep the compositor busy.
  • Reduced motion and data-status-indicators="static" show still dots with no morph.
  • The working-state test fixture now renders the button with data-working so the dot loop is covered.
  • The button shape, tooltip, and click-to-scroll behavior are unchanged.

Written for commit 2d44aa3. Summary will update on new commits.

View guided diff Turn on auto-fix

…hile the agent works

The arrow and the dots share one cell and cross-fade with a scale, so the
button morphs instead of swapping. The dots take the theme accent and pulse
in a staggered opacity and scale wave. Reduce Motion and static status
indicators keep still dots, swapped without the morph.

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

coderabbitai Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: manaflow-ai/cmux/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 5a006c72-0730-47bb-a785-81844ca6fc20

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Receipt for 2d44aa3 (this PR's head; a new push replaces it)

  • Visual review: HQ feed card · gallery before/after runs
  • Checks: this head
  • 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=pr21800 -f ref=feat/next-scroll-thinking-dots -f platform=macos -f backend_mode=local

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

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

@blacksmith-sh

blacksmith-sh Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Found 4 test failures on Blacksmith runners:

Failures

Test View Logs
/tmp/tmpdufa2fq9/summary-missing.json (live):/summary-missing.json (live): View Logs
/tmp/tmpmtrvfvuy/summary-fail.json (live):/summary-fail.json (live): View Logs
test/narrow-layouts.test.ts/narrow-layouts.test View Logs
test/narrow-layouts.test.ts/narrow-layouts.test View Logs

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

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

red: web / Web status; do not merge until green; see lane-rules
red: web / react-apps-check; do not merge until green; see lane-rules
red: web / react-apps-check (2); do not merge until green; see lane-rules

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Unclear: web / react-apps-check (2) failed: no known signature; failed step: Test webviews.

CI failed on 2d44aa34b1 (run 39176756551 attempt 1): 2 unknown.

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

Not re-run automatically: web / react-apps-check (2), 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.

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

CI fast guards failed on 2d44aa34b1 (https://github.com/manaflow-ai/cmux/actions/runs/39176756551). 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. This comment is updated in place on each push.

@teamleaderleo teamleaderleo added the media-tour Run the cmux-next UI tour (cmux-next-media.yml) on every push label Oct 18, 2026
The dots animate only while the agent works (data-working), so the
loops fixture shows the working button.

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

cursor Bot commented Oct 18, 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.

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

cmux-next tour of 2d44aa34b12e11a966088091b591e88733463c62 (run)

The tour job failed before the tour ran (build or setup); the run log has the output.

The tour produced no media.

Tours are data in scripts/cmux-next/media/tours: add a step or a tour file to show your feature.

@teamleaderleo
teamleaderleo merged commit 4de3b8c into feat-cmux-next Oct 19, 2026
103 of 108 checks passed
@teamleaderleo
teamleaderleo deleted the feat/next-scroll-thinking-dots branch October 19, 2026 00:10
teamleaderleo added a commit that referenced this pull request Oct 19, 2026
Review follow-up to #21800: a hidden button no longer keeps the dots'
infinite animation running.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
teamleaderleo added a commit that referenced this pull request Oct 19, 2026
#21879)

#21800 started the dots' loop under .acpmux-jump-latest[data-shown][data-working],
which outranks the static rule (:root[data-status-indicators=static] ... i), so
with Static status indicators the three dots kept pulsing and
static-status-loops.test.ts is red on feat-cmux-next. The static rule now
repeats [data-shown][data-working] and wins.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

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

Labels

media-tour Run the cmux-next UI tour (cmux-next-media.yml) on every push

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant