authgear / authgear/authgear-server
[Epic] Automatic passkey upgrade
- Dominant language
- Go
- Stars
- 2k
- Forks
- 125
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 32
Description
### Background
In WWDC 2024, Apple introduced "Automatic Passkey upgrade": [https://developer.apple.com/videos/play/wwdc2024/10125/](https://developer.apple.com/videos/play/wwdc2024/10125/?)
In stead of prompting a upsell screen immediately:
* The app checks:
* if the device/browser support credential manager?
* Is passkey already created?
* Is the environment condition passed? e.g. not in a private mode
* If the pre-conditions are met, a passkey is generated automatically. A system notification is shown to the end-user that a passkey is created
* If not:
* an error is returned -> show the upsell screen
---
### Acceptance Criteria:
- [ ] **\[Automatic Upgrade - Apps\]** Users can see a system prompt that a passkey is created and stored automatically when they successfully sign into **an app** that uses Authgear for authentication in supported conditions
- [ ] Spike: Confirm what are the supported conditions (e.g. not using OAuth for login, no existing passkey? etc…)
- [ ] **\[Automatic Upgrade - Web\]** Users can see a system prompt that a passkey is created and stored automatically when they successfully sign into **a website** that uses Authgear for authentication in supported conditions
- [ ] Spike: Confirm what are the supported conditions for automatic passkey creation on the web on iOS 18 or above (e.g. no using private browsing mode? Not using OAuth for login, no existing passkey?)
- [ ] Users can see the existing passkey upsell screen, to prompt them they can create a passkey and use that for subsequence, if the passkey cannot be created with the automatic upgrade flow, and existing conditions are met for showing the existing passkey upsell screen.
Contributor guide
Research direction
Start with the linked WWDC 2024 session and the issue's Automatic Upgrade - Apps and Automatic Upgrade - Web acceptance criteria. Confirm the supported conditions for automatic passkey creation, then determine how failure should fall back to the existing passkey upsell screen; done means all three acceptance criteria are satisfied.
Written by the indexing model from the issue text.
Assessment
- Domain
- authentication, mobile-dev, security, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100