Skip to content

feat(ios): Cursor-style plan approval strip above composer#678

Draft
arul28 wants to merge 3 commits into
mainfrom
cursor/mobile-plan-composer-strip-7929
Draft

feat(ios): Cursor-style plan approval strip above composer#678
arul28 wants to merge 3 commits into
mainfrom
cursor/mobile-plan-composer-strip-7929

Conversation

@arul28

@arul28 arul28 commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

Moves iOS final plan approval (plan_approval) from a large inline transcript card to a compact strip directly above the Work chat composer — matching the Cursor mobile pattern.

  • Collapsed: provider header, static "Tap to review the full plan", Approve/Reject always visible
  • Expanded: large sheet with markdown-rendered plan body, copy button, swipe-to-dismiss
  • Transcript: interactive plan card removed while pending; historical rows unchanged after resolve

Locked scope (from /plan deliberation)

  • Final plan presentation only (all SDK runtimes)
  • Composer strip only — no inline transcript card while pending
  • Actions on collapsed strip; expand is read-only review
  • iOS only (desktop unchanged)
  • Extras: haptic on arrival, swipe dismiss sheet, markdown rendering, provider accent gradient

Quality fixes included

  • Plan rejection feedback routes through chat.approve responseText (not a separate chat.send)
  • .id(plan.id) on strip to reset reject-flow state across gate replacements
  • Reset blocking-input haptic tracker on session switch

Tests

  • testBuildWorkTimelineOmitsPendingPlanApprovalFromTranscript
  • testWorkChatComposerPlaceholderUsesPlanReviewCopyForPlanApprovalOnly

Docs

Key files

  • apps/ios/ADE/Views/Work/WorkPlanComposerViews.swift (new)
  • apps/ios/ADE/Views/Work/WorkChatSessionView.swift
  • apps/ios/ADE/Views/Work/WorkTimelineHelpers.swift
Open in Web Open in Cursor 

cursoragent and others added 3 commits July 1, 2026 01:11
Move plan_approval UI from inline transcript cards to a compact strip
directly above the Work chat composer. Tapping opens a large sheet with
markdown-rendered plan text; Approve/Reject stay on the collapsed strip.

- Add WorkPlanComposerStrip and WorkPlanFullScreenView
- Remove WorkPlanReviewCard from live timeline
- Plan-specific composer placeholder copy
- Tests for timeline omission and placeholder behavior

Co-authored-by: Arul Sharma <arul28@users.noreply.github.com>
…Text

Quality pass: pass decline feedback on the approval RPC instead of a
separate chat.send, reset haptic state on session switch, and stabilize
plan strip identity with .id(plan.id).

Co-authored-by: Arul Sharma <arul28@users.noreply.github.com>
Co-authored-by: Arul Sharma <arul28@users.noreply.github.com>
@vercel

vercel Bot commented Jul 1, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
ade Ignored Ignored Preview Jul 1, 2026 1:14am

@coderabbitai

coderabbitai Bot commented Jul 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: c3644af3-95ff-41a7-aaa0-5c06306cf6bc

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
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/mobile-plan-composer-strip-7929

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.

@mintlify

mintlify Bot commented Jul 1, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
ade-ac1c6011 🟢 Ready View Preview Jul 1, 2026, 1:19 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

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.

2 participants