Skip to content

[Bug]: Mobile approval card can't scroll, so long commands push its buttons off screen #27291

Open

Description

@hieu-lee

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/mobile

Steps to reproduce

  1. On the iOS app, open a Supervised thread.
  2. Have the agent ask approval for a long command, such as a multi-line shell script with a heredoc.
  3. Try to scroll the approval card above the composer.

Expected behavior

The card stays within the screen, and the command scrolls inside it so the Allow and Decline buttons stay reachable.

Actual behavior

The approval card is as tall as its text, so a long command pushes the top and the buttons past the visible area. Nothing in the card scrolls, and dragging it does not move the thread behind it, so the full command can't be read.

PendingApprovalCard is a plain View in a shrink-0 slot above the composer in ThreadDetailScreen, with no height cap and no ScrollView. The sibling question card (PendingUserInputCard) and the usage panel both cap their height and scroll.

Impact

Blocks work until fixed or worked around

Version or commit

main (9826dbb)

Environment

iOS, mobile app, Claude Code provider

Workaround

Decline by sending a message from the composer, or answer the approval on the web or desktop client.

Activity

  1. hieu-lee commented on Oct 30, 2026

    @hieu-lee
    ContributorAuthor

    Fix is up in #27296: the mobile approval card now caps its height, scrolls the command inside it, and keeps the Allow/Decline buttons and the option warning pinned below. Macroscope approved and CodeRabbit's findings are all resolved. It isn't verified on a device yet (no iOS dev client could be built where I worked), so before/after captures are still to do.

  2. altintasutku commented on Nov 1, 2026

    @altintasutku

    Still reproduces on a physical iPhone (iOS app, Supervised thread, Claude Code provider), connected to a server built from 2359643c (main, 2026-10-31).

    When the agent asks approval for a long command, the card grows past the top of the screen. The Allow/Decline buttons stay visible at the bottom, but the start of the command can't be scrolled into view, so I end up approving or declining without reading what it runs. That makes the approval step pointless for exactly the commands where it matters most.

    #27332 looks like the right fix (cap + inner scroll, buttons pinned). Its description says it was checked on an iPhone 17 Pro simulator and a Pixel 9 emulator only, so I'm happy to test a build on a real device and report back if that helps get it merged.

  3. Frybex commented on Nov 4, 2026

    @Frybex

    Still happening on the iOS app today, against a desktop server on 0.1.8-nightly.20261104.4179 (Linux, Claude Code provider, Supervised thread).

    The agent asked approval for a long multi-line Python heredoc. The card filled the whole screen above the composer: Decline / Approve and the warning line stayed visible at the bottom, but the top of the command was off-screen and the card was frozen. Dragging inside it or around it scrolled nothing, so I couldn't read the start of the command before deciding. The card also covered the thread header, which was drawn on top of the command text.

    Looks like #27296 was closed without being merged, so I guess nothing has landed for this yet.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions