Humanode Biweekly vol.79

Humanode has crossed the milestone of 1,000 validators, and enhanced data query capabilities with Subquery. Our dev team in collaboration with Parity resolved a finality incident, We've also integrated with Paid Network, and concluded the Humanode Sticker Challenge.

TL;DR

Dear Humanode community members and tech enthusiasts, as we wrap up July, we're excited to update you on the recent progress and achievements from Humanode over the past two weeks.

First and foremost, we're thrilled to announce that Humanode has surpassed 1,000 validators! Unlike traditional networks that rely on capital and computational power, Humanode is secured by real, unique humans globally, making it the most decentralized network. This major achievement, reached within two years of the mainnet launch, sets the stage for our goal of expanding to 10,000 validators. If you’re not a human node yet, join us! Becoming a human node doesn’t require heavy investment or capital. You can find the details here

As you know, this month, we encountered a finality stall. The issue was swiftly resolved, and the chain is back to normal. Our incident analysis confirmed the root cause. Last week, we improved our internal alert systems to promptly respond to potential finalization lags. We issued a fix for the Grandpa RPC endpoint in mainnet 119 runtime. Last week, frequent finalization stops prompted the creation of Humanode Issue #1104 to actively track all occurrences. The Parity team has actively engaged in resolving the problem, and our research has led to a proposed fix. The pull request containing the fix and our test was merged this week: Polkadot SDK PR #5153. However, the fix was not immediately rolled out due to potential unknown impacts on certain modules. We decided to first reproduce the problem and observe network behavior with the fix. Meanwhile, a workaround was implemented, selecting a block for the finalization vote no closer than seven blocks to the current best block. Today, we successfully reproduced the block finalization stop within the dev environment. If the fix shows specific results in the dev environment without any side effects, we will promptly roll it out to the mainnet.

On the CVM attestation protocol side, we have worked with the RustWASM team to solve some Web WASM/Rust infrastructure issues. Stay tuned for the new version of the wasm-bindgen crate for fixes for API generation and async fn bindgen definitions. Also, we continued the integration of the new flow for the web app, including a new authorization signature format and an improved error display format for users.

The great news is, Subquery now supports both Humanode Substrate and EVM chains, enabling seamless access to on-chain data for developers. Tide protocol uses Subquery to get on-chain user activities directly. Learn more about this integration here.

In an exciting new collaboration, Paid Network, a decentralized crowdfunding powerhouse, has integrated BotBasher into its Discord and its newly launched gamification platform, The Rewards Odyssey, to fight Sybil accounts. Join the Paid Network Discord and get your ‘Verified PAID Warrior’ role. 

Lastly, the Humanode Sticker Challenge has officially ended. Thank you to everyone who participated and helped make a statement. Stay tuned for more updates and continue contributing to the Humanode community!


Main News

🔺1K validators milestone

We're pleased to announce that Humanode has crossed the milestone of 1000 validators. Unlike traditional networks relying on capital and computational power, Humanode is secured by real, unique humans across the globe, making it the most decentralized network.

While this is a major achievement within two years of the mainnet launch, the goal is to expand to the technical limit of 10,000 validators. 

If you’re not a human node yet, join us! Becoming a human node doesn’t require heavy investment or capital. You can find the details here

🔺 Finality Incident Analysis and Resolution

The voting of nodes to finalize a block in Humanode occurs two steps back when producing the next block (e.g., block #5 finalizes when block #7 is created). We distribute blocks every approximately 6 seconds with primary and secondary slots.

This month, we faced a finality stall, which was quickly resolved, and the chain is back to normal. Our incident analysis confirmed the root cause. The node responsible for the primary slot (A1) took unusually long to distribute its block. Consequently, the chain continued with the block on the secondary slot node (B1), which produced two more blocks (B2, B3). Nodes began voting to finalize B1 on the fork (B1, B2, B3). Meanwhile, A1 continued producing blocks on the best chain (A1, A2, A3, etc.), leading to a chain reorganization. Finalization on B1 remained in progress but couldn't be finished since B1 was not part of the best chain. The Parity team acknowledged the complexity of this issue.

Since then, we have improved our internal alert systems to promptly respond to potential finalization lags. The code related to Grandpa logic has been deeply studied, and we issued a fix for the Grandpa RPC endpoint in mainnet 119 runtime. 

Last week, we started experiencing frequent finalization stops again, prompting the creation of a tracking issue, Humanode Issue #1104, to actively track all occurrences. The Parity team has actively engaged in resolving the problem, and our research has been instrumental, in leading to a proposed fix from their side. The regression test, which checks the logic for block finalization after chain reorganization, was used to validate the fix. The pull request containing the fix and our test was merged this week: Polkadot SDK PR #5153.

However, the fix was not rolled out immediately due to potential unknown impacts on certain modules. It was decided to first reproduce the problem and then observe network behavior with the fix. To mitigate the issue in the meantime, a workaround was implemented, which selects a block for the finalization vote that is no closer than seven blocks to the current best_block. Today, we successfully reproduced the block finalization stop within the dev environment.

According to our plan, if the fix shows specific results in the dev environment without any side effects, we will promptly roll it out to the mainnet.

🚨Update for the Human nodes  

As you know, we recently encountered two incidents related to finality stalls (an occurrence when the consensus process fails to decide on the final state of the block within a specified period). As a quick response, we have implemented a workaround that is now deployed. 

🔑 Key Details about the issue: 

The cause of the issue seems to be that with our network growing to over 1,000 validators (yes we have crossed the 1K nodes landmark), we are pushing the limits of our core consensus and gossip algorithms. This has caused us to encounter rarely visited code paths that are typically dormant. While Kusama and Polkadot, with whom we share our codebase have not seen these issues, we are committed to resolving this for the Humanode.

👉What you need to do: 

Update your node. If you are running the node using Humanode Launcher, go to Settings and Click on ‘Check for Peer Updates’.

We’ll be closely monitoring the rollout via https://telemetry.humanode.io/ and you are welcome to follow along as well. The target version is f5bccf0d13193e070aeef1472a2a4726e836cd93

Note that this update will delay the finality target for 5 blocks behind the best block which is expected so no need to worry. Please adjust monitoring and your dApp settings accordingly. 


Development

🔺 Exploring CVM attestation 

 We've collaborated with the Rustwasm team to address some Web WASM/Rust infrastructure issues. Stay tuned for the new version of the `wasm-bindgen` crate, which will include fixes for API generation and the async `fn` bindgen definitions.

🔺 Front-end updates

We have updated the active validators counter on the mainnet landing.

🔺 Introducing a new flow for the web app

We continued integrating the new flow for the web app, including a transition to a new authorization signature format and an improved error display format for users, providing detailed text on why the error occurred.


Integrations

🔺Subquery x Humanode 

Subquery now supports both Humanode Substrate and EVM chains, enabling seamless access to on-chain data for developers. As a real-world example, Tide protocol utilizes Subquery to get on-chain user activities directly.

Learn more about this integration here

🔺Humanode x Paid Network

Paid Network, a decentralized crowdfunding powerhouse, has integrated BotBasher into its Discord and also with its newly launched gamification platform: The Rewards Odyssey to fight Sybil accounts.

Join the Paid Network Discord and get your ‘Verified PAID Warrior’ role.


Publications

🔺5 reasons Telegram needs BotBasher

Do you remember when Telegram was the go-to communication app, especially for the crypto community? It was fantastic—until bots and scammers flooded the platform, ruining the experience for genuine users. At Humanode, we've had enough. That's why we're developing BotBasher for Telegram.

🔺2067  - The Equilibrium 

To all dystopian SciFi lovers and readers of 2067 -The Equilibrium, the Humanode-inspired dystopian novel written by Shannon Higgins, the Humanode Core Media Team lead. The final installment of The Book of Shogo, the fourth chapter of ten.  

This is the last of the story set “outside” of the walls, a world centered around darkzones, the ruins of a dying nation, and the only place cut off from the networks.  In this installment, Shogo faces the reality of the emergency assignment, causing him to not only face his past but his future in a way he would have never imagined.  

To jump to The Book of Shogo 4/4, click here.

To start your journey from the top or from where you left off, access the table of contents here.


Roadmap 

Check out Humanode’s roadmap for the year 2024, outlining a comprehensive plan of action. The roadmap not only details the current initiatives but also leaves room for the incorporation of novel ideas, features, and applications throughout the year. 


Humanode BotBasher 

🔺Tutorial videos for BotBasher

The team has new tutorial videos for BotBasher, Humanode’s bot-busting system that keeps your Discord servers Sybil-resistant and free of pesky bots.

 ▶️ Users: Learn how to get verified with BotBasher and obtain linked roles on multiple servers by completing the liveness and uniqueness check once every 6 months.

▶️ Admins: Discover how to integrate BotBasher into your servers to ensure a Sybil-resistant and bot-free community.

🔺Understanding BotBasher's Biometric Privacy and Security Approach: Curious about how BotBasher protects your biometric data? Dive into Humanode’s blog post to explore the advanced security measures they implemented.

🔺 BotBasher now protecting 594 Discord server communities

Integrate BotBasher to your server: https://botbasher.humanode.io/ 


Listing

HMND is listed on KuCoin and Bitmart, BingX, SimpleSwap, and Lunar Crush, MEXC.

In the meantime, here are a few reminders to all: 

  • HMND cannot be traded on any DEX at the moment. 
  • The only places you can buy HMND at this moment are KuCoin and BitMart, SimpleSwap, BingX, and Lunar Crush, MEXC.
  • ALWAYS check the official announcements.

 The links to the trading pages: 

🔺KuCoin: https://link.humanode.io/trade/kucoin 

🔺BitMart: https://link.humanode.io/trade/bitmart 

🔺SimpleSwap: https://simpleswap.io/coins/humanode  

🔺MEXC: https://blog.humanode.io/hmnd-to-be-listed-on-mexc/

🔺CoinEx:

🔺Lunar Crush: https://lunarcrush.com/coins/hmnd/humanode 

🔺BingX: https://announcement.coinex.com/hc/en-us/articles/21134832899476-CoinEx-Will-List-HMND-on-Nov-22 https://support.bingx.com/hc/en-001/articles/17928663093017-BingX-Spot-Adds-Humanode-HMND-Trading-Pair 


Contests

🔺Sticker Challenge Submission Ended

The Humanode Sticker Challenge has officially concluded. Thank you to everyone who took part and made an impact!

Participants were tasked with placing the Humanode logo on the building of a commercial bank or a government financial institution—any such building could be your canvas.

All participants had 2 days to claim Ninja NFTs on Tide. Claiming the NFT was necessary to be eligible for a share of the prize pool.


MISC

  • Humanode Dev Content Preference Survey: The team is running a quick survey to learn what kind of content the community developers love and how they can improve it.
  • Scam alert: there is a Humanode Hub named group with a different handle. Check humanode.io for links.
  • Humanode invites all of you to join the official Humanode Dev group in Telegram. This group is your hub for connecting with like-minded developers, builders, coders, and innovators, sharing your ideas, and contributing to the world of Humanode’s crypto-biometric technology.

For more information check out Humanode’s:

Website

GitHub

Discord

Twitter

Telegram

Telegram chat

LinkedIn

Youtube