feat: seedphrase sign-in, instant account creation, and multi-method auth settings#466
Open
Ryanmello07 wants to merge 8 commits into
Open
feat: seedphrase sign-in, instant account creation, and multi-method auth settings#466Ryanmello07 wants to merge 8 commits into
Ryanmello07 wants to merge 8 commits into
Conversation
feat: seedphrase login, instant account creation, remove guest mode (all 4 flavors)
PR2: Sign-In Methods list + AddAuthMethodSheet
feat: Profile name-claim + rename migration
Api.addAuth never returns the generated seedphrase, so this option could add a seedphrase auth method the user could never see or use. The new dedicated Seedphrase section in Settings (Generate/Regenerate) is the only path that actually returns and displays the phrase.
The dialog was closing pendingSeedphraseAction = null synchronously on tap, before generateSeedphrase/regenerateSeedphrase's async result comes back. Any error (no connectivity, server rejection) set seedphraseActionError, but that text lives inside the already-closed dialog, so it was never shown -- a security-sensitive operation was failing completely silently. Fixed by closing only via a LaunchedEffect(generatedSeedphrase) once the call actually succeeds, mirroring the remove-sign-in-method dialog's real behavior (it closes on onSuccess, not eagerly). Flagged by the final whole-branch review.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds seedphrase-based authentication to the Android app, matching the iOS port (
urnetwork/apple#331) and the corresponding server work (urnetwork/server#406):github,play,solana_dapp,ethos_dapp): newLoginSeedphrase,CreateNetworkInstant, andSeedphraseDisplayScreenscreens, wired into each flavor's login flow.AddAuthMethodSheet(email/password, Google, Solana wallet) and a Settings "Sign-In Methods" list, matching iOS'sAddAuthSheet.swiftstructure.Api.addAuthdoesn't return the generated phrase — only the dedicatedgenerateSeedphrase/regenerateSeedphrasecalls do.NetworkUserUpdateendpoint ontochangeNetworkName/claimNetworkName(matching iOS), with claim-vs-change UX and JWT-refresh-on-foreground so a rename is reflected without a fresh login.Provenance
This is the squashed, upstream-facing recombination of four PRs merged into the fork's integration branch, each independently reviewed and CI-verified there (
Ryanmello07/urnetwork-android):Recombining onto
upstream/maindirectly (rather than merging the fork's integration branch verbatim) surfaced only two conflicts, both mechanical: a fork-only CI workflow file that doesn't exist upstream (dropped, correctly), and an adjacent string-resource insertion instrings.xml(both sides' strings kept). No logic conflicts. Fork-internal planning/spec docs (docs/superpowers/...) were stripped as not relevant upstream.Verification
No local Android build toolchain or Android SDK available in the environment this was prepared in, and
urnetwork/androidhas no CI workflow configured to validate this automatically. However, the underlying code was already build-verified per-PR on the fork's own CI (all 4 flavors,github/play/solana_dapp/ethos_dapp) before each of #6/#7/#8/#9 merged there. The only new manual work in this recombination (the two conflicts above) has been checked by hand:strings.xmlconfirmed well-formed XML, and the dropped CI file is fork-only tooling with no code implications.Process
Each of #6/#7/#8/#9 was built via a written design spec + implementation plan, executed task-by-task with a fresh implementer and independent review per task, plus a final whole-branch review before merging into the fork's integration branch. See the linked PRs for each one's individual review history.