Repository navigation
cmux NEXT composer: search files, chats, and pages from + - #26568
Conversation
|
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)
Gallery before/after for
States
Pick other states with a Unclear: CI failed on
Failures:
Matched log linesNot re-run automatically: Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); no finished base run on 0ce3c31 to compare; do not merge until green; see lane-rules |
|
Found 16 test failures on Blacksmith runners: Failures
...and 6 more test failures. View all on Blacksmith
|
|
Bead |
|
Review (codex gpt-6-astra high, next-review): BLOCK at 21f81db
|
|
Orphaned: no activity for 13 h, and no lane holds a lease on it. The orphan sweep could not merge |
Base absorbed the shared + registry (#26566) and the searchable palette (#26843); this branch's earlier copies of them are dropped in favor of base. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
Leo: "likewise, the chatgpt desktop app, let's do their + symbol's capabiliities for our composer. we want to be having more command palette related capabilities and stff to be able to to be surfaced" The chat composer's + and the New Tab + gain a Search section: Search chats opens the palette's chats page (agentPane.searchChats) and Search pages opens its History search page (history.search). The agent pane now allows history.search (AgentPaneModel.paletteActions), so the row runs instead of being refused; a refusal shows as the composer's notice. New Tab has no file search, so it offers no Search files. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
… page Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
New Tab shows no transcript, so the chat's notice never reached it: the page now says the refusal over its composer until the next pick or edit. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review (codex gpt-6-astra high, next-review): SHIP at 28aa820 No blocking findings. Review limited to the supplied diff and files; full repository reads were unavailable. Tests were not run. |
Resolves conflicts with #26740 and #26568: keep the palette actions, keep this PR's removal of the agent pane's sign-in fallback, and pass #26740's chat pick into bindMachineCreation (read when the action runs, since sign-in may finish after focus moved). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-5160a5704f7bd6c329fa
|
Shipped in:
|
…6568)" (#27913) This reverts commit 46c97e9. Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…26568)" (#27913) This reverts commit 1a3add7. Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f
…26568) (#27993) * Reapply "cmux NEXT composer: search files, chats, and pages from + (#26568)" (#27913) This reverts commit 1a3add7. Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * cmux NEXT composer: let the + menu take the pane's room so its Search rows stay whole The + menu's Search section (Search files, Search chats, Search pages) made it 328px tall. Every .acpmux-menu is capped at min(360px, 50vh), 300px in a 600px pane, so the menu scrolled and clipped Search pages under its bottom edge: a press at its middle or bottom hit the composer behind it. The + menu now takes the room the pane gives it (useUiAnchor still caps it to the space above or below +), up to 520px. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * cmux NEXT composer: the + menu scroll-fade test opens in a pane short enough to scroll The + popup now takes the room the pane has above or below + (up to 520px) instead of 50vh, so in the test's 420px pane the 328px menu fits and has nothing to scroll. The test checks the scroll-edge fade, so it opens the picker in a 320px pane, as it does the palette, where the rows still scroll. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * cmux NEXT menus: an anchored menu keeps its scroll when it re-measures useUiAnchor re-measures an overlay on any scroll in the capture phase, its own included, and measuring takes the inline max-height off. A menu whose stylesheet cap is taller than the room it has (the + menu, now up to 520px) grew to that cap for the measure, the browser clamped its scroll to the taller box, and the clamp stayed: scrolling the + menu in a short pane snapped back (composer-plus-menu-polish: scrollTop 21 of 100). The overlay's own scroll no longer re-measures, and a re-measure puts the scroll back where it was. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * cmux NEXT composer: the + search strings as three added entries, base's catalog untouched Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * cmux NEXT composer: keep the + search strings as three added catalog entries Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f * Restore Localizable.xcstrings to base plus this PR's three strings The base merge mangled the file's layout; this keeps base's file and adds only composer.plusChatsHint, composer.plusPagesHint and composer.plusSearchPages. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-d3e7b519f093e7e33e5f --------- 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)
Leo asked: “likewise, the chatgpt desktop app, let's do their + symbol's capabiliities for our composer. we want to be having more command palette related capabilities and stff to be able to to be surfaced”.
Base already absorbed most of this branch: the shared
composerPlusRegistry(#26566) and the searchable + palette (#26843). This PR is now the remaining piece on top of them: the + menu's Search section gains Search chats and Search pages, in the chat composer and in New Tab.agentPane.searchChats, the command palette's chats page.history.search, the palette's History search page. The agent pane used to refusehistory.search(AgentPaneModel.runActionallowed onlynewTab.page,agentPane.searchChatsand the connect actions), so the row did nothing. It now goes throughAgentPaneModel.paletteActions, which allows both palette pages. Like Cmd-K, they open the app's own palette, so they don't use gesture credit.composer.offloadNotRun) instead of silently doing nothing.searchFiles, which the pane refuses. A host that passes noonPlusCommandgets no search rows at all.Risk: small and contained. One action id is added to the agent pane's allow list (a palette page that is already in the menu, keyboard and palette surfaces). The rest is webview menu rows.
Tests:
composerPlusRegistry.test.tschecks that both rows dispatch through the extension handler and that their ids are in the SwiftpaletteActionsset.NewTabScreen.test.tsxchecks that New Tab shows both rows, runs them, and shows no Search files. Without a handler it shows no rows.AgentPaneConnectActionTests.paletteSearchPagesRunWithoutAGesturechecks thathistory.searchruns andsearchFilesstays refused (fleet package-test lane: passed). The focused bun suites (33 pass), the web typecheck and the catalog key check pass on Linux CI. The galleryadd-menu(chat) andattachment-menu(New Tab) states now check for both rows.No capture: the only native change is one id added to the agent pane's action allow list (AgentPaneModel.paletteActions), which draws nothing; the visible change is webview-only and is shown by the gallery captures below.
Gallery captures
Gallery: agent-pane.composer/add-menu, agent-pane.new-tab/attachment-menu
Linux Chromium gallery, base
e7ab659evs heade19ae982(the gallery advisory run at this head). The New Tab + gains Search chats and Search pages under a Search header. In the chat + the section header now reads Search, and the rows sit under it in the scrolling menu.Agent session: agent session
🤖 Generated with Claude Code