element-hq / element-hq/element-meta
[Story] EX multi-account: deep-link sign-in resolves to the right account
- Dominant language
- No language data
- Stars
- 112
- Forks
- 25
- Avg merge
- 6h 6m
- Merged PRs (30d)
- 4
Description
### Description
* As a user opening a sign-in deep link that specifies a server/domain (and optionally a username)
* I want to be taken to the right place — my existing account, a fresh sign-in, or the add-account flow — based on whether I'm already signed in
* So that deep-linked sign-in works correctly now that multiple accounts are possible
# Acceptance criteria
- Given the deep link includes a username, when the user has no accounts signed in yet, then behavior is unchanged from today.
- Given the deep link includes a username, when the user already has that specific account signed in, then the app opens and switches the active account to that one.
- Given the deep link includes a username, when the user has other accounts but not that specific one, then the user is taken into the "Add account" flow.
- Given the deep link does not include a username, when the user has no accounts signed in yet, then behavior is unchanged from today.
- Given the deep link does not include a username, when the user already has one or more accounts signed in, then the "Add account" flow is triggered with the specified homeserver pre-filled.
- Given the deep link's `login_hint` doesn't cleanly match a signed-in account (e.g. it's an email address rather than a matrix ID), then proceed as "not logged in to this account" (e.g. into the add-account flow).
# Dependencies
- None
# Out of scope
- Matching of arbitrary `login_hint` values (e.g. email addresses) to a specific signed-in account
# Questions
- [x] None
# Subtasks
### Android
-
### iOS
-
### Rust
-
### Other
-
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the deep-link sign-in handling in the Android, iOS, and Rust client repositories referenced by the subtasks. Compare the existing behavior with each acceptance-criteria scenario, then verify that account switching, unchanged first-sign-in behavior, and the pre-filled Add account flow work for the specified homeserver.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, ios, rust
- Domain
- mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100