4.1 Limitations

Handle Registration Period

  • Minting a handle (not a sub-handle) is initially restricted to a registration period of two years at the price of 1 year; however, renewals or extensions can be made for any duration.

Sub-Handle Minting

  • Parent handle owners can mint a sub-handle under their parent handle for a maximum of one year per transaction. This design feature prevents long-term squatting on their own sub-handles, as there is no cost to mint or renew sub-handles for parent handle owners.

Character Restrictions, Handle Length and Punycode

  • Handles are limited to a maximum length of 18 characters

  • Handles may only contain lowercase characters and single hyphens; no other special characters are permitted, except for "xn--" to enable the use of punycodes.

  • Punycode requires only "xn--" as a prefix for handles and sub-handles. for example:

xn--4v8h.₿ =🔥.₿ (handle)

xn--4v8h.xn--4v8h.₿ =🔥.🔥.₿ (sub-handle)

TokenURI Data Persistence

  • TokenURI data will persist during expiration until the handle is burned.

Sub-Handle Count Retrieval

  • Parent handle owners can retrieve the number of registered sub-handles associated with them using the getSubhandleCount function whether they're valid, expired, or burned, but not the actual sub-handle names.

Retrieve Sub-Handles associated with Parent Handle

  • The getSubOfParentHandle function can list all the sub-handles minted under a specific parent handle. However, it will not filter out the expired handles. You will need to utilize the isSubExpired function to determine expiry.

TBA EVM Multi-Chain Support

  • Currently, it is not possible because Rootstock does not support Layer Zero. However, there are other workarounds, and Layer Zero is currently in the negotiation phase.

Stress Test

Mint Handle

Approximately 25 handles could be minted simultaneously from the same caller and transaction. We used the multiHandleMint function, which can only be called by the contract owner.

Address To Handle Indexing

During our stress test, approximately over 1000 handles can be displayed per address using the handlesOwnedBy function. We decided to stop at 1025 handles because there is no way of knowing if the function would crash. Please keep in mind that exceeding 1000 handles is not recommended. Therefore, it is best practice to store only a few hundred handles per address to avoid issues, even though 1000+ handles was capable during the stress test.

Last updated