Skip to content

fix(mobile): stop thread messages reading through pending cards - #5450

Merged
maria-rcks merged 1 commit into
pingdotgg:mainfrom
carlosricojr:fix/pending-card-opacity
Aug 6, 2026
Merged

fix(mobile): stop thread messages reading through pending cards#5450
maria-rcks merged 1 commit into
pingdotgg:mainfrom
carlosricojr:fix/pending-card-opacity

Conversation

@carlosricojr

@carlosricojr carlosricojr commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

The problem

PendingApprovalCard and PendingUserInputCard render at bg-neutral-100/80 dark:bg-neutral-900/80, but they float over ThreadFeed inside the composer overlay with nothing blurring the feed behind them — the app's actual glass surfaces go through GlassSurface/expo-glass-effect, and these are plain Views. So the 0.8 alpha has no material to sample and simply lets 20% of the message underneath through the card: the thread's text reads over the questions.

It is worst on an AskUserQuestion carrying several questions, where the card covers most of the screen and most of the conversation shows through it. Reported from an iPhone, dark mode, opening the thread from a user-input notification.

The fix

Drop the alpha on the two card surfaces. The colors are unchanged — neutral-100 and neutral-900 are what the translucent values already resolved toward — so opacity is the only property that moves. Two lines, one per card.

Not converted to GlassSurface: it brings its own 32px radius, border and shadow (a bigger visual change than the defect), and off iOS it falls back to a flat --color-glass-surface at 0.78, which is the same bleed-through. The option pills and the custom-answer input keep their alpha, since those now composite against the card rather than the feed.

Verification

pnpm --filter @t3tools/mobile typecheck, vp lint, and vp fmt --check on both files are green.

No before/after images, and I want to be straight about why: the machine I'm on has neither Xcode nor the Android SDK, so I could not boot a simulator, and I would rather say that than pass a mockup off as a capture. The change is legible without one — the diff is bg-neutral-100/80bg-neutral-100 and dark:bg-neutral-900/80dark:bg-neutral-900 — and any thread where an agent asks a question reproduces the before state. Happy to add captures if someone with a simulator wants to run it, or to close this if you would rather keep the translucency deliberate and add a blur behind the card instead.

Related

Independent of #5288, which bounds and scrolls the same card stack but does not touch its surface. No file overlap, so the two can land in either order. (I sent a patch for that PR's open bot findings to its branch as KyleKincer#1.)

Model: Claude Opus 5. Harness: T3 Code.


Note

Low Risk
Pure mobile UI styling on two thread overlay cards; no logic, API, or data-path changes.

Overview
Fixes thread message text showing through pending approval and user input cards in the mobile thread composer overlay.

Those cards used 80% opacity backgrounds (bg-neutral-100/80, dark:bg-neutral-900/80) while sitting on plain Views over ThreadFeed with no blur—so underlying messages bled through the surface. The change makes both card containers fully opaque with the same neutral colors and adds short comments explaining why translucency was removed.

No behavior, layout, or child control styling changes beyond the card shell background classes.

Reviewed by Cursor Bugbot for commit 1b5c3e8. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Fix thread message text reading through pending cards by making backgrounds opaque

Sets the background of PendingApprovalCard and PendingUserInputCard to fully opaque in both light and dark themes. Previously, the bg-neutral-100/80 and dark:bg-neutral-900/80 semi-transparent backgrounds allowed thread messages behind the cards to show through.

Macroscope summarized 1b5c3e8.

The approval and user-input cards float over the thread feed with nothing
blurring what is behind them, so their 0.8 alpha lets the message under
the card show through the questions. On a request with several questions
the card covers most of the screen and the whole conversation reads
through it.

Make the two surfaces opaque. Alpha is the only thing that changes; the
colors are the same neutral-100 / neutral-900 they already resolved to.

Model: Claude Opus 5. Harness: T3 Code.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. 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: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: c5badd28-3a3b-4f24-bd9a-8ef66cdc055a

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

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.

@github-actions github-actions Bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Aug 5, 2026
@macroscopeapp

macroscopeapp Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved 1b5c3e8

Pure visual fix changing card backgrounds from translucent (80% opacity) to opaque to prevent thread messages from showing through. No logic or runtime behavior changes beyond the styling.

You can customize Macroscope's approvability policy. Learn more.

@t3-code t3-code Bot mentioned this pull request Aug 6, 2026
4 tasks
@maria-rcks
maria-rcks merged commit 470d4eb into pingdotgg:main Aug 6, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants