Validator Update: Battle Testing the Kate Testnet

This blog post outlines all the objectives that we will test on the current Kate Testnet as well the future incentivized testnet as well. We plan to test all the scenarios to strengthen our code and create a mainnet ready approach.

By Avail Team 3 min read
Validator Update: Battle Testing the Kate Testnet

Our Kate Testnet has been active and running for the last two months. So far, 75 validators have onboarded the testnet and we have increased the cap of our external validators to 100 this past week. During this time we have onboarded validators, monitored the network and tested a few scenarios on the network. Now, we will be battle testing the network with a robust set of objectives with a wider active set.

This blog post outlines all the objectives that we will test on the current Kate Testnet as well the future incentivized testnet as well. We plan to test all the scenarios to strengthen our code and create a mainnet ready approach.

Most of these objectives will require complete participation from all the validators. Some of these will be orchestrated internally by running scripts and observing the status of the network.

The following is a list of objectives and scenarios that we will be conducting on the Kate Testnet:

Upgrades

  1. Run Time Upgrades: A proposal-based upgrade process without validator intervention.
  2. Binary Upgrades: Validators update their nodes with bug fixes and improvements. A deadline may be set for urgency.
  3. Hard Forks: Similar to binary upgrades but more time-intensive. Validators must upgrade by a deadline.

Transactions

  1. Balance Transfers: Validators and ecosystem transfer tokens to test balance transfer function.
  2. App ID Generation: Internal activity to test App ID generation in rollup integration and verify on the network.
  3. Data Submissions: Test data submission with and without APP IDs in rollup integration.

Staking

  1. Staking Rewards: Introduce a staking module for validators to earn rewards.
  2. Staking Pool: Validators create pools to attract Nominators. Validators delegate to each other.
  3. Staking Threshold: Increase staking threshold to test network behavior.

Slashing

  1. Slashing due to Liveness: Request validators to shut down nodes to test network and slashing effects.
  2. Slashing due to Double Signing: Internal activity to understand and test double sign effects.
  3. Chilling: Getting validators in the chilling zone to test if everything works as intended

API

  1. Node RPC & Data Availability: Validators create and make public RPC endpoints for data fetching.

Light Clients

  1. Deploy Light Clients: Validators run light clients to verify and propagate data.

Bridge

  1. Attestations: Internal activity to test attestations process.
  2. Data Posted: Internal activity to test data posting.

Governance

  1. Proposal Submission: Validators create and vote on proposals.
  2. Soft Upgrades: Validators test runtime upgrades.
  3. Kicking: Validators test kicking function.

Economy

  1. Transaction Fee Dynamics: Simulate transactions to study fee dynamics.
  2. Burn Rate & Treasury: Monitor burn rate and treasury while simulating transactions.
  3. Rewards: Test Validator and Nominator rewards with internal and external validators.

Stress Testing

  1. Offline Nodes: Simulate offline nodes to understand network effects.
  2. Nominator Pool & Counts: Test nominator counts and pools.

Blockspace

  1. Max Out Node RPC API: Test maximum capacity of Node RPC API.
  2. Max Out Light Clients API: Test maximum capacity of Light Clients API.
  3. System Transactions: Test system transactions in a controlled manner.

Recovery & Disaster Management

  1. Bootnodes: Turn off bootnodes to assess network impact. Monitor through dashboard/explorer.

The plan involves various Proof of Concept (POC) teams responsible for different aspects of testing, including upgrades, transactions, staking, slashing, API, light clients, bridge, governance, economy, stress testing, blockspace, and recovery/disaster management. Each testing activity aims to observe, monitor, and validate the behavior and performance of the blockchain network on the Kate Testnet.

Conducting thorough scenario testing is a pivotal phase in our preparation  towards the mainnet launch. During the testing of these scenarios, if the network breaks down or is halted, we will try to recover it through all means possible. In the unlikely event that the chain cannot be recovered, we will spin up a new chain and request validators to reconfigure the new chain spec.

Follow us on Twitter, stay tuned to the Avail blog, and subscribe to our newsletter to stay updated.