Skip to content

cmux-next: a new chat's effort chip names the level acpmux starts it on (Lawrence: "we lost effort") - #20577

Merged
teamleaderleo merged 8 commits into
feat-cmux-nextfrom
op-next-parity-surface/new-chat-effort
Oct 14, 2026
Merged

teamleaderleo merged 8 commits into
feat-cmux-nextfrom
op-next-parity-surface/new-chat-effort

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 14, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

Lawrence (10-14): "we lost effort". With Claude Opus 5.5, the New Tab composer showed only the model chip, with no Reasoning chip.

Before a chat's session reports its options, the effort chip draws a placeholder (PendingChip). Since #20335, that placeholder only shows a level a previous chat on the same harness remembered (chipMemory.ts). On a fresh profile, or a harness id no chat has reported on (e.g. claude-sr), it draws nothing.

Change

Before the session reports, the chip falls back to the level acpmux will start the harness on: _acpmux/harnesses start.effort (start_defaults.rs; Opus 5.5 starts at Medium). A remembered chip still wins.

Not in this PR (cx-ervhd, separate PR, waiting on SHOW LEO): the Reasoning menu itself, where a chat on the agent's own level shows "Low" with nothing checked, and Ultracode/Ultrathink sit among the levels.

Verification

  • Red at 175a267 (test only): the new-chat-reasoning play in local Chromium shows only Claude Opus 5.5 among the chips, and the waitFor for "Medium" does not hold.
  • Green at 9a3e39b: the same play renders Claude Opus 5.5 | Medium, and the play passes.
  • CI runs test/new-chat-effort-chip.test.ts in the browser lane. Not run locally under bun test: big-red's inotify limit starves Vite's watcher, and the memory freeze bars heavy local runs.
  • Chat-composer half of the report: a hosted acpmux probe is checking whether a new Claude chat attaches with its effort and fast-mode options. Results will follow on this PR.

Changelog

  • Fixed: a new agent chat shows its Reasoning level before the agent starts, instead of the model chip alone.

🤖 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

Fixes a new chat's effort chip naming the level acpmux starts the harness on, so the Reasoning chip no longer goes missing on a fresh profile or a harness no chat has reported on yet.

  • Before the session reports its options, the chip falls back to _acpmux/harnesses start.effort (Opus 5.5 starts at Medium); a level remembered from a prior chat still wins.
  • Adds a Chromium gallery play and test covering the fallback.
  • Not in this PR: the Reasoning menu itself, where a chat on the agent's own level shows unchecked and Ultracode/Ultrathink sit among the levels.

Written for commit 26540d2. Summary will update on new commits.

View guided diff Turn on auto-fix

Showcase

In a fresh profile, open a New Tab with Claude Opus 5.5 picked. Before, from tagged DEV builds on macOS 27 at base 2834e65: no effort chip. After, at head 6305c75: a "Medium" chip next to the model. I checked that the head app's bundled pane.js contains the fix. The host chip is masked.

before after

before

Full quality: 20577-before.mp4

after

Full quality: 20577-after.mp4

Open the live gallery

teamleaderleo and others added 2 commits October 14, 2026 04:10
…on reports

Lawrence 2026-10-14, "we lost effort": the New Tab composer showed the model
chip alone. Red (local Chromium play on this base logic): chips = model only,
waitFor did not hold.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s it on

Before a chat's session reports its options, the effort chip drew only a
level a previous chat on that harness had remembered (#20335), so a fresh
profile or harness showed the model chip alone. It now falls back to
_acpmux/harnesses start.effort (Opus 5.5 starts at Medium).

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

coderabbitai Bot commented Oct 14, 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: c9d9cb29-df31-4416-881f-8f750deb745c

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.

@blacksmith-sh

This comment has been minimized.

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

all web/size checks green

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Passes: CI passes on 26540d2164.

CI passes on 26540d2164 (run 38592210145 attempt 1).

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 14, 2026 •

Copy link
Copy Markdown
Contributor

CI fast guards passes on 26540d2164 (https://github.com/manaflow-ai/cmux/actions/runs/38592210145). This covers only the fast guards, not CI: CI's result is the ci-status check, and the CI failure attribution comment names any failing test.

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Gallery

Review in feed

91 states changed: agent-pane.transcript/web-video-loaded, agent-pane.dictation/hide, agent-pane.composer/working-stop, agent-pane.composer/context-usage-menu, agent-pane.new-tab/dictation-menu, ... · 8 new states · 34 play checks failed

Diff page and renders (the run's gallery-pr artifact)

State Before · after
agent-pane.transcript/web-video-loaded (Apple System Colors Light, webkit)
agent-pane.dictation/hide (Apple System Colors Light, webkit)
agent-pane.dictation/hide (Apple System Colors Light, webkit)
agent-pane.composer/working-stop (Apple System Colors Light, webkit)
agent-pane.composer/context-usage-menu (Apple System Colors Light, webkit)
agent-pane.new-tab/dictation-menu (Apple System Colors, chromium)

85 more on the diff page.

Live preview (follows this branch; start it with scripts/gallery-live.sh up <branch> from an hq checkout):

  • agent-pane.transcript/web-video-loaded: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.transcript#/agent-pane.transcript/web-video-loaded
  • agent-pane.dictation/hide: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.dictation#/agent-pane.dictation/hide
  • agent-pane.composer/working-stop: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.composer#/agent-pane.composer/working-stop
  • agent-pane.composer/context-usage-menu: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.composer#/agent-pane.composer/context-usage-menu
  • agent-pane.new-tab/dictation-menu: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.new-tab#/agent-pane.new-tab/dictation-menu
  • agent-pane.transcript/mark-unread-menu: /wt/op-next-parity-surface-new-chat-effort/?entry=agent-pane.transcript#/agent-pane.transcript/mark-unread-menu
  • 51 more on the diff page

Play checks failed (0 px anchor movement, 0 layout shift, no frame over 33 ms unless the entry gives a reason):

  • agent-pane.dictation/hide (Apple System Colors Light, webkit): play: no element for menuitem "Hide Dictation Button"
  • agent-pane.dictation/hide (Apple System Colors Light, webkit): play: no element for menuitem "Hide Dictation Button"
  • agent-pane.bottom-stack/compact-trust-queue (Apple System Colors Light, webkit): Bottom stack overlaps: .acpmux-composer-trust-note / .acpmux-composer-queue (16px)
  • agent-pane.bottom-stack/compact-trust-queue (Apple System Colors, webkit): Bottom stack overlaps: .acpmux-composer-trust-note / .acpmux-composer-queue (16px)
  • agent-pane.composer/model-menu-keyboard (Apple System Colors Light, chromium): step 4 press ArrowDown: layout shift 0.0643 (limit 0.03)
  • agent-pane.composer/pdf-attached (Apple System Colors Light, chromium): step 1 click .acpmux-attachment-document-open: layout shift 0.0500 (limit 0)
  • 156 more on the diff page

195 nondeterministic states differed from a second render of the same head (a clock or fixture leak) and are not counted as changes.

1506 unchanged · base 8996714 · head 26540d2

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

cmux-next tour of 26540d21649b398b9377c5ce29dfc26bedc9f0e5 (run)

The path-selected recorder failed for agent-pane, core; see the run artifact and failed manifests.

Path-selected interactions

Interaction Changed paths
agent-pane webviews/src/agent\-session/acpmux/ComposerPickers.tsx
webviews/src/agent\-session/acpmux/composer.gallery.ts
core webviews/test/new\-chat\-effort\-chip.test.ts

Agent pane (before): 3 ok

No screenshots: screen capture is unavailable on this runner (none (direct: could not create image from display; launchctl asuser: sudo: a password is required; CuaSshScreenCapture.app: wrote no image (not approved for Screen Recording?))).

# Step Result Command
1 Launch ok
2 Open agent chat ok cmux agent new-chat
3 Queue a second chat ok cmux agent new-chat

Agent pane (after): 3 ok

No screenshots: screen capture is unavailable on this runner (none (direct: could not create image from display; launchctl asuser: sudo: a password is required; CuaSshScreenCapture.app: wrote no image (not approved for Screen Recording?))).

# Step Result Command
1 Launch ok
2 Open agent chat ok cmux agent new-chat
3 Queue a second chat ok cmux agent new-chat

Core UI (before): 11 ok, 1 failed

No screenshots: screen capture is unavailable on this runner (none (direct: could not create image from display; launchctl asuser: sudo: a password is required; CuaSshScreenCapture.app: wrote no image (not approved for Screen Recording?))).

# Step Result Command
1 Launch ok
2 Type in the terminal failed: exited 1 cmux terminal current write --text "echo hello from the cmux-next tour\r"
3 New workspace ok cmux workspace new --name Tour
4 Split right ok cmux action run splitRight
5 Split down ok cmux action run splitDown
6 New terminal tab ok cmux action run newSurface
7 Browser tab ok cmux tab new-browser --url https://example.com
8 Hide the sidebar ok cmux action run toggleSidebar
9 Show the sidebar ok cmux action run toggleSidebar
10 Notification ok cmux notify --title Tour --body "Hello from CI"
11 Notifications panel ok cmux action run showNotifications
12 Agent chat ok cmux agent new-chat

Core UI (after): 11 ok, 1 failed

No screenshots: screen capture is unavailable on this runner (none (direct: could not create image from display; launchctl asuser: sudo: a password is required; CuaSshScreenCapture.app: wrote no image (not approved for Screen Recording?))).

# Step Result Command
1 Launch ok
2 Type in the terminal failed: exited 1 cmux terminal current write --text "echo hello from the cmux-next tour\r"
3 New workspace ok cmux workspace new --name Tour
4 Split right ok cmux action run splitRight
5 Split down ok cmux action run splitDown
6 New terminal tab ok cmux action run newSurface
7 Browser tab ok cmux tab new-browser --url https://example.com
8 Hide the sidebar ok cmux action run toggleSidebar
9 Show the sidebar ok cmux action run toggleSidebar
10 Notification ok cmux notify --title Tour --body "Hello from CI"
11 Notifications panel ok cmux action run showNotifications
12 Agent chat ok cmux agent new-chat

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

@cursor

cursor Bot commented Oct 14, 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
teamleaderleo merged commit de5ceb7 into feat-cmux-next Oct 14, 2026
111 of 112 checks passed
@teamleaderleo
teamleaderleo deleted the op-next-parity-surface/new-chat-effort branch October 14, 2026 16:49
teamleaderleo added a commit that referenced this pull request Oct 14, 2026
Conflicts with base's 10-14 composer styling:
- The card, the strip and the New Tab box paint base's solid
  --acpmux-composer-surface; the strip takes it too so it stays one fill
  with the card.
- The New Tab focus takes Lawrence's quiet rule (rim tone lifts a little,
  no accent, no wider ring) on the strip's --acpmux-card-ring.
- No drop shadows stay (hq#1957 border hunt), including the permission
  card.
- Base's pending effort chip (#20577) and mode id come in; the chips row
  keeps no spacer and no context ring (item 15), so base's setupTokens
  and RingIcon, used only by that ring, are dropped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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