Skip to content

fix(web): show Send beside Stop for desktop follow-ups - #11336

Open
shivamhwp wants to merge 1 commit into
mainfrom
fix/web-send-during-active-turns
Open

fix(web): show Send beside Stop for desktop follow-ups#11336
shivamhwp wants to merge 1 commit into
mainfrom
fix/web-send-during-active-turns

Conversation

@shivamhwp

@shivamhwp shivamhwp commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

Desktop hides Send during an active turn even after a follow-up is typed, although Enter can submit it. Show Send beside Stop whenever the composer has sendable content, using the same submit path and disabled state. An empty running composer still shows only Stop.

Fixes #7750. Rebased onto main. Macroscope requires human review of the changed desktop default. Fable refinement remains pending after the final authorized retry failed.

Verified in an isolated Electron client with a simulated running turn: the base shows Stop only, while this change shows Stop and Send. Clearing and restoring text hides and restores Send, and returning to idle leaves Send only. Clicking Send reached the form submit event, intercepted before any provider request. A 390px responsive web viewport retains both actions. No native mobile change. Web typecheck and seven existing component checks pass; scoped lint exactly matches 35 base warnings.

Before/after images and interaction video are captured. GitHub asset upload is pending while the background browser connection is unavailable.

Model: GPT-6. Harness: Codex.

Rebased on main 20363c32c9bfdbf49c2716ef11d1f18483fcc01b. Scoped validation rerun after rebasing; existing native and human review limits remain.

Summary by CodeRabbit

  • Improvements

    • The Send button now remains available while a response is generating whenever the composer contains sendable content.
    • The Stop and Send actions now behave consistently across desktop and mobile composer layouts.
  • Tests

    • Updated coverage to verify Send and Stop actions appear together when applicable.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S 10-29 changed lines (additions + deletions). labels Sep 11, 2026
@macroscopeapp

macroscopeapp Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — The change alters the default desktop composer behavior by adding Send beside Stop during running follow-ups, with focused coverage for the new action states. Because this is a customer-visible product-default change, it warrants human review.

No code changes detected at ed6fcc9. Prior analysis still applies.

You can add or adjust custom eligibility rules. Learn more.

@github-actions

github-actions Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.6 KiB 13.6 KiB −55 B (−0.4%) 15.1 KiB
Codex Thread snapshot wire 7.0 KiB 7.0 KiB +2 B (+0.0%) 7.3 KiB
Codex Live turn WebSocket wire 6.6 KiB 6.5 KiB −57 B (−0.8%) 7.8 KiB
Codex Live turn WebSocket decoded 57.1 KiB 57.0 KiB −88 B (−0.2%) 66.4 KiB
Codex Live turn messages 10 8 −2 (−20.0%) 21
Claude Total thread wire 13.6 KiB 13.6 KiB −17 B (−0.1%) 15.1 KiB
Claude Thread snapshot wire 7.1 KiB 7.1 KiB +3 B (+0.0%) 7.3 KiB
Claude Live turn WebSocket wire 6.6 KiB 6.5 KiB −20 B (−0.3%) 7.8 KiB
Claude Live turn WebSocket decoded 57.9 KiB 57.8 KiB −44 B (−0.1%) 66.4 KiB
Claude Live turn messages 10 9 −1 (−10.0%) 21

Baseline: 20363c3 · PR result: ed6fcc9 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 113.9 KiB
  • Claude decoded thread snapshot: 114.6 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@shivamhwp
shivamhwp force-pushed the fix/web-send-during-active-turns branch from 44d4f9a to ed6fcc9 Compare September 13, 2026 15:40
@shivamhwp
shivamhwp changed the base branch from fix/client-device-ticket-http-group to main September 13, 2026 15:40
@cursor

cursor Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Bugbot is paused — on-demand spend limit reached

Bugbot uses usage-based billing for this team and has hit its on-demand spend limit.

A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue.

@github-actions github-actions Bot added 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. size:XXL 1,000+ changed lines (additions + deletions). and removed size:S 10-29 changed lines (additions + deletions). labels Sep 13, 2026
@coderabbitai

coderabbitai Bot commented Sep 13, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 5a912b16-c498-4ffe-818e-c3e70e80213d

📥 Commits

Reviewing files that changed from the base of the PR and between 20363c3 and ed6fcc9.

📒 Files selected for processing (3)
  • apps/web/src/components/chat/ChatComposer.tsx
  • apps/web/src/components/chat/ComposerPrimaryActions.test.tsx
  • apps/web/src/components/chat/ComposerPrimaryActions.tsx
💤 Files with no reviewable changes (1)
  • apps/web/src/components/chat/ChatComposer.tsx

Included review availability: Your plan provides up to 10 included reviews per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The composer removes the showSendWhileRunning prop. During active turns, Send now appears whenever content is sendable. Desktop and mobile call sites and tests use the updated behavior.

Changes

Composer running actions

Layer / File(s) Summary
Running action rendering
apps/web/src/components/chat/ComposerPrimaryActions.tsx
Removes showSendWhileRunning. Send and Stop now use hasSendableContent while a turn is running.
Composer wiring and validation
apps/web/src/components/chat/ChatComposer.tsx, apps/web/src/components/chat/ComposerPrimaryActions.test.tsx
Removes the prop from composer call sites. Tests verify Send with Stop when content is sendable and Stop alone for an empty composer.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Severity of issue fixed: Low

Suggested reviewers: juliusmarminge

Merge Risk: ⚪ Minimal · up to ed6fc

The composer now exposes Send alongside Stop for sendable running turns, with no identified merge-blocking risk.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 2 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The changes satisfy #7750. ComposerPrimaryActions now renders Send during a running turn when hasSendableContent is true. It renders only Stop when the composer is empty. The Send control remains …
Out of Scope Changes check ✅ Passed The changes stay within #7750. They remove the viewport-specific showSendWhileRunning gate, update its call sites, and update the related component tests. These changes directly implement consistent…
Title check ✅ Passed The title clearly and concisely describes the main change: showing Send beside Stop for desktop follow-ups.
Description check ✅ Passed The description explains the change, motivation, UI behavior, validation, issue reference, and review status. It does not use the template headings or checklist, but it provides the required informati…
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/web-send-during-active-turns

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

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

Labels

📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. size:XXL 1,000+ changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Send action disappears during active turns on desktop

1 participant