feat(cmux-next): migrate composer menus to native popups
Routes composer mode, effort, Fast, options, Plan/Build, slash, and @ suggestions through the native popup protocol. Each consumer sends generated rows and consumes typed search, highlight, pick, change, and dismiss events; production DOM menu rows are removed.
This seam preserves existing mode/config/action IDs, labels, optimistic refusal handling, selection semantics, and composer caret edits. It depends on native popup foundation PR #27142 and overlaps model-picker consumer PR #27140; cherry-pick after those land and resolve only ComposerPickers consumer hunks. No QuickModelMenu or ModelPicker implementation is included.
Validation:
git diff --check- Prettier parser check on all changed consumer files
- Typecheck unavailable in this lane (
vpis not installed)
HOLD: land after #27142 and #27140 are integrated; then run native transport roundtrip, stale-revision, no-production-DOM, and real-app light/dark checks.
Agent session: agent session
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Migrates composer mode, effort, Fast, options, Plan/Build, slash, and @ suggestion menus from production DOM popups to the native popup protocol. Each consumer sends generated rows and consumes typed search, highlight, pick, change, and dismiss events; the old DOM menu rows are removed.
Preserves existing mode/config/action IDs, labels, optimistic refusal handling, selection semantics, and composer caret edits. Depends on native popup foundation PR #27142 and overlaps model-picker consumer PR #27140; cherry-pick after those land and resolve only ComposerPickers consumer hunks. No QuickModelMenu or ModelPicker implementation is included.