01a04e04 - Pre-register accounts and passkey claim by view key - #65
Merged
Conversation
POST /debug/accounts creates name plus Wallet of Satoshi rows without a passkey. Register begin accepts viewKey so the owner can bind a passkey to that same account.
Unique Lightning Address and one passkey per account. Playwright hits POST /debug/accounts and claim begin with an unknown view key.
CI lint failed on six files after the uniqueness follow-up.
Memory adapter matches the unique index. Linking someone else's address returns 409. Claim-loser provision still updates the name.
POST /me/lightning-address 409, unique indexes, and in-memory refuse now match the adapters.
CI coverage missed claim Nostr/passkey races, POST provision 500/loser name update, and silent updateAccount refuse on /me.
The provision 500 path is operator-visible. Claim Nostr keygen failure is covered by a unit test, so it must stay in coverage.
POST /debug/accounts, optional viewKey begin, and 409 on a taken Lightning Address now match the implemented HTTP surface.
Validate every name and Lightning Address before writing on POST /debug/accounts. Adapters refuse a second credential for the same account. Docs and tests cover the 400 path and uniqueness.
Mint still uses a pending UUID; a view-key claim encodes the existing row.
TaprootFreakAI
force-pushed
the
01a04e04-pre-register-tondo
branch
from
August 30, 2026 13:23
9ecadd9 to
933ce3f
Compare
Collaborator
Author
|
EN: DE: DetailsRebased onto current develop (invoice/zap debug routes included). Grok quality and logic both STATUS complete with 0 findings after a docs follow-up. Operator asked to mark ready after Grok; Codex findings, if any, will be a follow-up PR. Mergeable is MERGEABLE. No open review threads. |
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.
EN:
Operators can create accounts with a name and Wallet of Satoshi address and no passkey. The public view-key link can then bind a passkey to that same account.
DE:
Operatoren können Konten mit Name und Wallet-of-Satoshi-Adresse ohne Passkey anlegen. Der öffentliche View-Key-Link bindet danach ein Passkey an genau dieses Konto.
Details
POST /debug/accounts (DEBUG_TOKEN) upserts by Lightning Address and returns viewKey for the invite URL. GET /debug/accounts still omits viewKey. POST /auth/passkey/register/begin accepts optional { viewKey }. Claim finish keeps name and address and does not delete the provisioned row.