Permanent solutions for network stability issues seen following TGE are now ready to be released as part of a mandatory Session node upgrade (Version 11.4.0) followed by a hardfork (HF22).

A hardfork is necessary in order to:

  • Recover stuck funds for affected contributors: 10 Session nodes have stuck funds that will be corrected by this release, including nodes that were kicked off the network during the HF20 (Anchor Hardfork) to HF21 (Landing Hardfork and TGE) transition and registrations that failed due to RPC provider issues
  • Fix reward calculation overflow issues: Rework how rewards are calculated to prevent potential overflow problems for accounts with large cumulative rewards
  • Implement BLS signature verification: Reintroduce BLS signature requirements for uptime proofs to ensure nodes have proper keys for network participation

The node upgrade (11.4.0) is now available. Operators have until 00:00 UTC on 17 June 2025 to complete the upgrade. Hardfork 22 will then be activated at block height 1,871,519.

If you do not upgrade before the activation of Hardfork 22, your node will be decommissioned. You will then have time to upgrade and automatically rejoin the network. If you do not upgrade in time, your node will be deregistered and your SESH stake will be locked for 30 days. During this lockup, your node will stop earning rewards.

How to Complete This Upgrade

First, sync your repositories:

sudo apt update

Then install updates using:

sudo apt upgrade

Thank you in advance for your cooperation!

Stuck Contribution Fixes

A total of 10 specific Session nodes have stuck funds that are corrected by this release:

  • 2 HF20 (Anchor Hardfork) nodes transitioned into HF21 (Landing Hardfork and TGE) with changed BLS keys and got kicked off the network without crediting the stakes. This edge case only affected nodes transitioning from HF20 (Anchor Hardfork) and cannot reoccur.
  • 7 registrations failed with stuck funds due to a malfunctioning RPC provider combined with a bug in validating L2 event votes in pulse quorums. The registrations were denied by the network despite stakes being in the Arbitrum contract.
  • 1 contract exit was denied by the same bug, leaving the node stuck in "recently removed" state with unreleased funds.

While 11.3.2 prevented these bugs from recurring, this update credits the proper amounts to affected contributors at the hardfork height. These adjustments don't create new SESH but update oxend credits to match amounts already contributed to the Arbitrum Service Node Rewards contract.

Reward Calculation Improvements

Session contributors have reworked internal reward calculations starting at HF22. Previously on the Oxen Network, rewards were stored in milli-atomic OXEN to handle precision when splitting block rewards across thousands of contributors in thousands of nodes.

In HF21 (Landing Hardfork and TGE), the system became cumulative: the network tracks total rewards and all unlocks ever made, while the smart contract tracks total claimed amounts. This cumulative value grows forever and would overflow the 64-bit integer limit after approximately 9 million SESH in lifetime rewards and unlocks per contributor.

Starting at HF22, block rewards are still calculated in milli-atomics but rounded to atomic values when crediting accounts. This extends the maximum to over 9 billion SESH. The change affects rewards by at most 0.000000001 SESH per block per account.

BLS Signature Verification

The upgrade reintroduces BLS signature requirements for uptime proofs. Originally included only for HF20 (Anchor Hardfork) to collect initial BLS keys for the smart contract, at least 9 nodes are consistently producing invalid signatures for claims and exit signatures. This is likely caused by operators not properly copying the key_bls file when migrating nodes.

Investigations revealed that there's no way to verify whether nodes have the proper BLS key, but nodes need the same key they registered with to properly participate in the network.

Additional Improvements in This Release

Improved rescan speed

"Loading subsystems" is now nearly 50% faster through several optimizations that also improve blockchain syncing:

  • Rewards database stores contributor addresses in binary format
  • More efficient block random seed calculation for faster quorum determination
  • Eliminated redundant calculations and optimized database queries

Enhanced reward database efficiency

Session node state dumps now occur every 5 minutes instead of every minute during rescans, with randomized timing to prevent multiple nodes from hitting intensive I/O operations simultaneously.

Fixed ONS database rescanning issues

Resolved an issue where the ONS database needed complete rescanning after popping blocks.

Find all the details in the release notes here.


Thank you for your cooperation!

Thank you in advance for upgrading promptly following the steps above. If you have any issues, feel free to open a ticket in the Session Token Discord so that a Session contributor can assist you.