dissolve_network

Call Re-added v133 → v165, v195 → current #61

Removes a subnet from the network.

View calls on chain

Click items to navigate. Pan and zoom to explore.

Used by: subnet ownersdevelopers

The Big Picture

Subnets have a lifecycle. Sometimes they succeed; sometimes they don't. dissolve_network is the clean exit - it removes the subnet, deregisters all neurons, and returns your lock deposit. This frees up the slot for new subnets and lets you recover your capital from experiments that didn't work out.

Why This Matters

Creating a subnet locks significant TAO. If your subnet isn't attracting miners, isn't receiving emissions, or the project pivoted, dissolution recovers that capital. It's also good hygiene - unused subnets waste network resources.

Example Scenario

You created subnet 47 for an AI experiment. After 3 months, it has few miners and no root weight support. Your 1000 TAO is locked. Call dissolve_network(netuid=47). The subnet shuts down, miners are deregistered (they keep their stake), and your 1000 TAO lock is returned.

Common Questions

What happens to miners' stake when I dissolve?
Stake remains with the coldkey-hotkey pair. The registration is removed, but stake isn't lost. Miners can register on other subnets.
Is there a waiting period before I can dissolve?
Yes - subnets have an immunity period after creation. You can't dissolve immediately. Check SubnetImmunityPeriod for the duration.
Can I dissolve if miners don't want me to?
Yes - you're the owner. Miners have no veto. However, consider the community impact and give advance notice if possible.

Use Cases

  • Shut down a failed or obsolete subnet experiment
  • Recover locked TAO from an underperforming subnet
  • Clear a subnet slot for a new project
  • Exit subnet ownership cleanly

From Chain Metadata

Remove a user's subnetwork The caller must be the owner of the network

Input Parameters

#NameTypeDescription
0
coldkey
AccountId Cold wallet address (offline storage) (hex -> SS58)
1
netuid
u16 Subnet/network identifier (0-65535)

Permissions

Origin
Unknown
Required Role
Authorization Checks
  • Signer must be the subnet owner

Requirements

  • Caller is subnet owner or authorized
  • Subnet exists
  • Immunity period has passed (if applicable)

Effects

Postconditions

  • Subnet removed from active networks
  • All neurons on subnet deregistered
  • Subnet parameters cleared
  • Lock cost returned to owner (minus any penalties)

Side Effects

  • Stake from subnet neurons may be returned
  • Emission redistribution among remaining subnets
  • Netuid becomes available for reuse

Possible Errors

Code Examples

import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";

const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });

// Build dissolve_network call
const coldkey = "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY";
const netuid = 1;

const call = api.tx[stringCamelCase("SubtensorModule")][stringCamelCase("dissolve_network")](
  coldkey,
  netuid
);

Version History

v133 block 1,404,224 1 args
v195 block 3,791,350 2 args Current

Runtime Info

View Source
Pallet Index
7
Call Index
61
First Version
v133
Current Version
v393