Repository navigation
Conversation
Contributor
Regtest APKDownload bitkit-dev-debug universal APK (expires in 30 days). |
This branch has not been deployed
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.
Part of synonymdev/bitkit-core#205
Twin: synonymdev/bitkit-ios#1332
This PR removes the legacy Pubky Ring sign-up path that also authorizes an app, so Bitkit no longer calls any bitkit-core Pubky auth export and bitkit-core can drop its legacy
pubkymodule.Description
pubkyring://signup?hs&relay&secret&caps, and the same query underpubkyauth://signup), because Paykit only approves grant links and the next Pubky SDK drops legacy cookie auth.pubkyring://signuplinks, so Android hands them to Pubky Ring, which still supports them.pubkyauth://direct_signupandpubkyauth://signupwithhs/st) andpubkyauth://signup_grantunchanged; both already go through Paykit.Out of Scope
pubkyauth://direct_signupwith strayrelay,secretorcapsparameters: still accepted as a plain sign-up with those parameters ignored, as before.approvePubkyAuth,parsePubkyAuthUrl,PubkyAuthDetailsand the rest of thepubkymodule happens in chore: remove the pubky module bitkit-core#217; this PR builds against the currently pinned bitkit-core.Design
N/A — no UI changes.
Preview
N/A — no new UI; a legacy link shows the existing invalid-link error toast.
QA Notes
Setup
just run) from this branch on an emulator, with a wallet created and Paykit enabled, and no Pubky identity yet (fresh wallet or wiped profile).Journeys
N/A — no journey added or updated. The legacy-link rejection could be driven through the deep-link capability, but by maintainer decision it is covered by the reviewer cases below instead.
Manual Tests
pubkyauth://signup?hs=<homeserver>&relay=https%3A%2F%2Frelay.example&secret=x&caps=%2Fpub%2Fexample%2F%3Arwwithadb shell am start -a android.intent.action.VIEW -d "<uri>" to.bitkit.dev→ Bitkit shows "Authorization failed / This Pubky authorization link is invalid.", no consent screen, and no Pubky identity is createdpubkyring://signup?hs=<homeserver>&relay=https%3A%2F%2Frelay.example&secret=x&caps=%2Fpub%2Fexample%2F%3Arwin the wallet scanner (Scan → Paste) → the same invalid-link error, and no identity is createdpubkyring://signup?...link from case 2 viaadb shell am start -a android.intent.action.VIEW -d "<uri>"(no package) → it opens in Pubky Ring; Bitkit is not offeredpubkyring://signup?...link viaadb→ Bitkit is not offered and does not openpubkyauth://direct_signup?hs=<homeserver>&st=<token>→ the consent sheet shows the homeserver; approve → the identity is created and profile setup opens (plain sign-up still works)Automated Checks
PubkyAuthRequestTest.kt— legacy Ring andpubkyauth://signuplinks with relay/secret/caps are rejected as invalidPubkyRepoTest.kt— parsing a legacy Ring sign-up link fails as invalid without contacting PubkyPubkyRepoTest.kt— sign-up rollback and registration-failure cases use plain sign-up; grant sign-up still authorizes through Paykit before activationPubkyAuthManifestTest.kt—pubkyring://signuplinks no longer resolve to BitkitPubkyAuthApprovalViewModelTest.kt— sign-up consent covers plain and grant sign-up onlyPubkyAuthApprovalRetryTest.kt— a failed sign-up restores consent and requires local auth on retryPubkyAuthErrorMessageTest.kt— unmapped and known errors without the removed Ring timeout errorPubkyServiceTest.kt— relay-timeout and cancellation tests for the removed Ring approvaljust compile,just test,just lint— all passedEvidence
just compile,just test(5893 tests, 0 failures; 2 skipped live-regtest Spark tests from master) andjust lint(detekt and Android Lint) passed locally on the branch head merged withorigin/master0a6734c49.Gaps
pubky-authjourney README).Models used
claude-opus-5-5(reasoning:high)claude-opus-5-5(reasoning:high)🤖 Generated with Claude Code