aboutsummaryrefslogtreecommitdiffstats
path: root/android/app/src/webview
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-10-23 22:39:04 -0700
committerAdam Soltys <[email protected]>2026-10-23 22:39:04 -0700
commitce96364662451556e9ae6fe8222eba4ea23bd27c (patch)
treeccd16d1487581a405bc24f87352bbacbc959b69d /android/app/src/webview
parentb67ad2026286f6383f24b1aa9694bbeee571276b (diff)
downloadcoinosv3-ce96364662451556e9ae6fe8222eba4ea23bd27c.tar.gz
coinosv3-ce96364662451556e9ae6fe8222eba4ea23bd27c.zip
Amber sign-in on Android works past the first request, and a migrated profile no longer keeps its released placeholder address
Jarryd (DM, 2026-10-24): on Android he could not sign in with Amber and had to paste his nsec, and his profile page showed the temporary name he had picked while the editor showed his real one. Amber: Chrome lets a page open another app only on the heels of a tap. The Sign-in tap carried the get_public_key request, but the request the login fires once the key is back (decrypt the backup, sign the relay list…) had no tap behind it, so Chrome dropped the nostrsigner: navigation with a console warning the page never sees ("Navigation is blocked") and the card spun forever. Reproduced on Adam's Pixel 9 with Amber 6.6.9 (Amber 4.1.3 did not even parse the web request). Now a request without a user activation behind it waits for one: the card says the signer has another request and offers an "Open signer app" button that launches it from the tap; a launch that leaves the page in front (never hidden) is treated as blocked too and gets the same button. The clipboard is still read on return (that part worked). Profile: the migration released the placeholder name and repointed lud16/nip05 to the new one, while the legacy-avatar import ran at the same moment, read the same old kind 0, and republished it nine seconds later with the placeholder address back ([email protected], dead on both coinos.io and v3). Kind-0 publishes now go one at a time, merge over the newest copy this session sent, and are stamped strictly later than it (relays keep the lower id of two with the same second). The profile page shows the claimed address instead of a same-domain name that is no longer ours, and once the domain confirms the old name is dead it repoints the kind 0 in the background (healStaleAddress), so zaps to the published lightning address reach the wallet again. tools/profile-publish-race-test.js plays the migration's two publishes at once against an in-memory relay. tools/amber-login-test.js and identity-test pass; name-migration-test and avatar-profile-test fail the same way on the previous commit. Co-Authored-By: Claude Fable 5.1 <[email protected]>
Diffstat (limited to 'android/app/src/webview')
0 files changed, 0 insertions, 0 deletions