Skip to content
KYVROTestnet
Documentation menu

Testnet resets

What a reset does and how to detect and survive one.

TestnetVerified Oct 15, 2026
On this page

What a reset does#

A reset restarts the Testnet from a new genesis. Everything created since the previous genesis is gone:

  • All deployed programs and their data accounts.
  • All balances return to the genesis allocation; test tokens you claimed disappear.
  • All token mints and token accounts are gone; mint addresses from before the reset mean nothing.
  • All transaction history starts again from slot 0.

Kyvro's identity is the genesis hash, so unlike an EVM chain ID there is no stable number across a reset: the genesis hash changes, and the old one is history.

Detecting a reset#

Store the genesis hash and compare it on startup. The current genesis hash is A8qzbNkAdT1GsqmyKTifWnTgS7PuqqmniwdsGeaPc5Jo.

web3.js
const genesis = await connection.getGenesisHash();
if (genesis !== storedGenesisHash) {
  // Testnet was reset: clear cached mints, token accounts, balances, activity and indexed data.
}

Surviving a reset#

  • Deploy from scripts (anchor deploy in a script — see repeatable deploys), never by hand.
  • Read program IDs from a deployment manifest your scripts write, not from constants in app code.
  • Key off-chain database rows by genesis hash, or wipe them when the genesis changes.
  • Invalidate wallet caches: token accounts, balances and recent blockhashes from before the reset are all stale.
  • Re-claim test tokens from the faucet(opens in a new tab) after a reset.

Notice and announcements#

A formal reset policy (how much notice teams get and where the new genesis hash is announced) has not been published yet; progress is tracked on the Road to Mainnet. Planned maintenance is announced on the status page and in updates.

Something wrong or missing on this page? Send developer feedback.