plans: names cap counts links of the key's kind

This commit is contained in:
shum committed 2026-10-22 04:31:14 +00:00
1 parent 07201f2b91
commit 6103451ef2
1 file changed
+2 -2
+2 -2
View File
@@ -182,7 +182,7 @@ A name that is paid for here but not yet `registering` (`queued` to `committed`)
```
- `records`: the raw text records, "" when unset. A record set elsewhere may hold several links joined with `;`.
- `entities`: one per link in the records, split on `;` with spaces trimmed, that is a short link of its key's kind; other values make no entity. At most 5 per key (`maxEntitiesPerKey`), the first in the record; the rest make none. Contact entities come first.
- `entities`: one per link in the records, split on `;` with spaces trimmed, that is a short link of its key's kind; other values make no entity. At most 5 per key (`maxEntitiesPerKey`), counted over the links of the key's kind, the first in the record; the rest make none. Contact entities come first.
- An entity, as the app's connection-plan alert shows a chat:
- `type`: the record it came from, `address` (`simplex.contact`) or `channel` (`simplex.channel`);
- `kind`: what the link opens. For a contact address, `business` when the link data says so (`business`, or the profile's `peerType` business), `bot` for `peerType` bot, else `contact`. For a channel link, `channel`;
@@ -327,7 +327,7 @@ Errors: `400 bad_request`, `400 invalid_name`, `409 order_exists`, `409 name_tak
The duration uses the code's `years`. Checks, in order:
1. The code limit; the body cap; formats; `sealed` at most 11095 characters (`bad_request`); `length` in 6–63 (`invalid_name`).
2. The code parses as a prepaid code and is in the table, else `400 code_invalid`.
2. The code parses as a prepaid code and is in the table, else `400 code_invalid` (a missing or non-text `code` is a format error, `bad_request`, at check 1).
3. The signature recovers `owner`, else `bad_request`.
4. Existing orders (above): an exact resend answers `200 {"registrationId": "…"}`; an overdue order of the same wallet and name is closed first (section 1); anything else meeting a live order is `409 order_exists`.
5. The timestamp within 600 seconds, and the duration within the slack for the code's years, else `bad_request`.