Skip to content

bug: a link opened on the pin screen drops a pending pubky sign-in link #985

Open

Description

@ovitrif

Refs:

What happened?

A link opened while a Pubky sign-in link is pending on the PIN screen replaces the sign-in link, and the sign-in is never handled. AppViewModel.retainDeepLink keeps one pendingDeepLinkURL and overwrites it with the later link.

On iOS master (afdc534b, Debug regtest, iPhone 17 Pro simulator on iOS 26.5, PIN on), after unlock the app log shows only the later link:

Received deeplink: bitcoin [MainNavView.swift: handleDeepLink(_:) line: 908]

There is no Received deeplink: bitkit://pubky-auth/signin line. Opening the sign-in link alone, as a control, is handled after unlock (the wallet had no Pubky identity, so it shows "Pubky Identity Required").

Expected behavior

A pending sign-in link is not dropped by a later link: the sign-in is handled first, and the later link opens after the sign-in sheet closes, as Android does after synonymdev/bitkit-android#1547.

Steps to Reproduce

  1. Turn the PIN on and terminate Bitkit.
  2. Open bitkit://pubky-auth/signin?… (a sign-in link); the PIN screen shows.
  3. Open bitcoin:bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kygt080?amount=0.0001.
  4. Unlock: only the bitcoin: link is handled, and the sign-in link is gone.

Additional context

A link opened while the Authorize sheet is already open was not settled on an unfunded simulator wallet: the sheet stayed up, but no second link that opens its own sheet could be tried. Android replaced the sheet in that case.

Recordings

A bitcoin: link opened on the PIN screen drops the pending sign-in link (2x)Control: the sign-in link alone is handled after unlock (2x)
caseA-2x.mp4
caseControl-2x.mp4

Activity

  1. added this to the 3.0.5 milestone on Oct 16, 2026
  2. self-assigned this
    on Oct 16, 2026
  3. modified the milestones: 3.0.5, 3.0.0 on Oct 16, 2026
  4. modified the milestones: 3.0.0, 3.0.5 on Oct 16, 2026
  5. modified the milestones: 3.0.5, 3.0.0 on Oct 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions