Settlers of Namespace Retrospective

Thank you to everyone who participated in the Settlers of Namespace testnet event. This article summarizes the event participation, learnings, and the subsequent steps taken to improve Canto Namespace.

Event Participation

The Settlers of Namespace testnet event allowed users to try minting a Canto Name and provide feedback on their experience. Overall the event saw strong participation. Here are some key stats from the first 48 hours of the Settlers event:

  • 3,454 unique settlers

  • 2,131 Canto names fused

  • ​​9,001 transactions that interacted with the Tray contract

  • 9,134 transactions for the Namespace contract

Key Learnings

Canto Namespace Protocol
Canto Namespace Protocol

Participation in the Settlers of Namespace event allowed testing for how the Canto Namespace interface and smart contracts would respond to a large number of users. Below is a summary of the key learnings and solutions from the event.

Overall Reception

Users were excited about the expressiveness of Canto Namespace, having the ability to create names from fonts and emojis versus other naming options. They also appreciated the gamification component by making names from minted tile trays, preventing squatting on names.

Interface Optimizations

During the Settlers event, users encountered some difficulties when using the interface. Some challenges included:

  • Specific fonts were not displaying correctly in final Base Names

  • Tiles were too small and difficult to read

  • Unoptimized mobile site

Fixes to these issues were pushed during the Settlers event, improving the experience for users.

Interface and Smart Contract Interaction

The smart contracts were previously audited in a Code4rena contest. The Settlers' event did not uncover any additional findings in the smart contracts, but an interesting problem related to the interaction between the frontend and the contracts was observed.

At launch, all minted trays appeared without a problem. After a few thousand trays were minted, we received reports that users could not see tile trays in the frontend. The Tray contract uses the ERC721AQueryable extension, which has a view function called tokensOfOwner to track the ownership of trays connected to wallets. The tokensOfOwner function should work for collections of up to 10,000 NFTs. Even though this function is an off-chain call of read-only function, the RPC provider may still impose an upper gas limit to avoid a denial of service attack on the hosts.

Interestingly, we received out-of-gas errors due to the implicit gas limit when the collection only had a few thousand NFTs, well below the recommended 10,000 NFT collection size. When we looked into the issue, we discovered the Canto testnet RPC nodes had a limit of 25 million gas for the eth_call (i.e., RPC calls that invoke a read-only function) execution, which was lower than the limit of most RPC providers for other EVM-based blockchains.

To fix the issue, we changed the frontend to use tokensOfOwnerIn, which is recommended for larger collections, and coordinated an increase of the eth_call limit on the Canto testnet RPC. This should ensure future teams building on Canto have a smooth experience.

Additional Feedback on Settlers of Namespace Event

There were two additional areas of feedback uncovered during the Settlers event. Firstly, Users were asked to share a verification tweet for the event. A custom-built solution confirmed the tweet was shared on the user's Twitters account. Due to limitations with the Twitter API, some tweets were not appearing on the backend, causing the verification step to fail. To avoid similar issues in the future, we will conduct more thorough testing before implementing tweet verification in events or remove this step altogether.

Secondly, while early settlers successfully create a name, some did share that additional documentation and guides on how to interact with the dApp would be helpful. This is something the team will work on improving moving forward.

Settlers of Namespace Success

We are grateful to the Canto community for participating in this testnet event. Your participation allowed us to thoroughly test Canto Namespace, identify issues, and implement solutions, ultimately making for a smoother mainnet launch.

For future updates on Canto Namespace and mainnet launch, follow Canto Namespace on Twitter.

Subscribe to Canto Namespace
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.