Skip to content

Fix: Android biometric cancellation logged as exception - #2532

Open
sentry[bot] wants to merge 1 commit into
masterfrom
seer/fix/android-login-cancel-exception
Open

sentry[bot] wants to merge 1 commit into
masterfrom
seer/fix/android-login-cancel-exception

Conversation

@sentry

@sentry sentry Bot commented Sep 19, 2026

Copy link
Copy Markdown

This PR addresses an issue where user-initiated biometric cancellations on Android were being reported as Sentry exceptions instead of warning-level messages.

Problem:
In hooks/useUser.ts, the handleLogin catch block checked error?.name === 'NotAllowedError' to identify user cancellations. However, on Android, Turnkey/passkey cancellations return an error object with .error === 'UserCancelled' and .message === 'The user cancelled the request.', lacking the .name field. This caused the check to fail, leading to captureException being called for normal user cancellations.

Solution:
Replaced error?.name === 'NotAllowedError' with isWebAuthnUserCancelledError(error) in the handleLogin catch block. The isWebAuthnUserCancelledError helper from @/lib/execute correctly identifies user cancellations across all platforms by checking the error message, thus preventing spurious exception reports.

Fixes SOLID-10B

@sentry <feedback>: Autofix iterates on these changes
@sentry stop iterating: Autofix stops iterating on this run

This PR was automatically generated by Sentry. You can adjust this setting at any time.

@vercel

vercel Bot commented Sep 19, 2026

Copy link
Copy Markdown

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

2 Skipped Deployments
Project Deployment Actions Updated
solid-app Ignored Ignored Preview Sep 19, 2026 10:35pm UTC
solid-app-staging Ignored Ignored Preview Sep 19, 2026 10:35pm UTC

Request Review

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.

0 participants