From 91e19fb5b3ef6fbe9a7c7231305600a68b2e83ec Mon Sep 17 00:00:00 2001 From: shum Date: Sat, 10 Oct 2026 09:15:57 +0000 Subject: [PATCH] plans: one order per name, SC claim codes --- plans/names-codes/2026-10-09-name-codes.md | 14 ++++---- .../2026-10-09-names-web-store-plan.md | 21 +++++------- plans/names-codes/mockups/layout.mjs | 9 +++-- plans/names-codes/mockups/screens.js | 23 ++++++++----- plans/names-codes/names-flow.svg | 32 +++++++++++++----- plans/names-codes/screens/D7.jpg | Bin 82667 -> 82859 bytes plans/names-codes/screens/M7.jpg | Bin 63605 -> 63780 bytes plans/names-codes/screens/N12.jpg | Bin 76566 -> 76574 bytes plans/names-codes/screens/N2f.jpg | Bin 0 -> 45309 bytes plans/names-codes/screens/N7.jpg | Bin 79492 -> 79567 bytes plans/names-codes/screens/N7a.jpg | Bin 76728 -> 76874 bytes 11 files changed, 60 insertions(+), 39 deletions(-) create mode 100644 plans/names-codes/screens/N2f.jpg diff --git a/plans/names-codes/2026-10-09-name-codes.md b/plans/names-codes/2026-10-09-name-codes.md index 734dda97dc..8c9464b68c 100644 --- a/plans/names-codes/2026-10-09-name-codes.md +++ b/plans/names-codes/2026-10-09-name-codes.md @@ -72,7 +72,7 @@ Core rejects upper case, so the page folds it to lower case as the buyer types. | `registered`, with links | N2a: "Used by", one card per `simplexContact`/`simplexChannel` link, each with picture, display name, the link and Open in SimpleX (deep link) | | `registered`, no links | N2b: taken, and pointing nowhere (a name held for an unclaimed buyer reads like this) | | `reserved` | N2c: reserved, with "Contact the SimpleX team" | -| held by another open order (proposed) | being registered: not offered until that order expires or finishes | +| held by another open order | N2f: being registered, not offered until that order expires or finishes | | no answer, or an error | N2d (503) | | the read rate limit | N2e (429) | @@ -105,14 +105,14 @@ Core rejects upper case, so the page folds it to lower case as the buyer types. - **Progress:** each phase is published to the order's long poll. The page shows the steps as the app does (canvas 9), with transaction links, and a reload or another device shows the same state. - **Taken (N8):** the order keeps its value. The buyer can register another name priced at or under what was paid (N8a, `POST /api/invoice/:id/name`); a cheaper name refunds nothing. Or they can turn the claim code into a code for any name of the original name's length (`POST /api/invoice/:id/unbind`); that is worth less if the name carried a per-name price above the length price. -- **One order per name** (proposed): while an open invoice or an unfinished registration holds a label, a second order for it is refused with `name_pending`, and search shows it as being registered. This makes N8 rare. It still covers names registered outside the store. +- **One order per name:** while an open invoice or an unfinished registration holds a label, a second order for it is refused with `name_pending`, and search shows it as being registered. This makes N8 rare. It still covers names registered outside the store. - **Refunds:** none in the service. A registration that fails for good is refunded manually by support. - **The chain client** is #7530's (§10 there): JSON-RPC to the resolver host's reth node, a dry run of every transaction, serial nonces from the registrar key, EIP-1559 fees, receipts with replacement, and 3 confirmations. - **Signing:** recoverable secp256k1 is in simplexmq #1843 (merged into `names`, not `master`); EIP-1559 transaction signing is on `ab/eth-tx`. ## 6. Claiming -N7 shows the claim code with Copy, a QR and **Open in SimpleX** (`simplex:/name#code=&label=