What's New in Runtime v411
This is one of the bigger runtime upgrades since dTAO. There are 37 new items across events, calls, storage, and constants, and nothing was removed. The headline change is conviction-based stake locking, but a handful of quieter additions also matter: per-subnet emission control, a dedicated burn account, and a new AlphaAssets pallet. The rest of this page is a tour, with reference links for every new item.
1. Stake locking with conviction
Until now, stake on a hotkey has been fully liquid. You can remove it at any block. v411 adds a parallel lock primitive that lets a coldkey commit alpha on a (hotkey, subnet) pair and accrue conviction over time. Conviction is roughly how the runtime tells short-term capital apart from capital that's staying. It feeds back into emissions and into subnet-owner economics.
There are two main flavours. Decaying locks are the default: conviction grows while held, and decays after release rather than vanishing. Perpetual locks never decay, but you can't release them. Subnet owners get a separate owner lock primitive for signalling commitment to their own subnet.
New chain surface
- Admin toggles
- sudo_set_owner_cut_auto_lock_enabled
2. Per-subnet emission control
Subnet emissions used to be governed entirely by global parameters. v411 gives admins finer-grained control. Emissions can be paused on a single subnet, owner cut can be toggled on or off, and a per-subnet minimum childkey take can be set. The clearest use case is pausing a misbehaving subnet's reward stream without touching the rest of the network, though the same levers can support more routine policy changes too.
3. TAO flow accounting & dedicated burn account
Quieter, but arguably the biggest architectural shift. v411 reorganizes how TAO is held and moved inside the runtime. A new BurnAccountId tracks TAO that has been formally burned (for example, on burned neuron registration), and a SubtensorPalletId derives subnet-level account IDs deterministically. Net TAO flow can also be tracked and toggled per subnet, which gives later policies a substrate to work with.
For builders, the practical upshot is that subnet-locked TAO and burned TAO now have distinct, queryable account identities. Auditing gets easier; attributing flow in an indexer gets easier; talking precisely about "where the TAO actually is" gets easier.
New chain surface
- Constants
- BurnAccountId SubtensorPalletId
- Storage
- SubnetProtocolFlow SubnetEmaProtocolFlow NetTaoFlowEnabled SubnetExcessTao SubnetRootSellTao
- Admin toggles
- sudo_set_net_tao_flow_enabled
4. The AlphaAssets pallet
v411 also adds a new pallet, AlphaAssets, to pull per-subnet alpha accounting out of SubtensorModule's storage. It tracks three values per subnet: total alpha issued, alpha burned, and alpha recycled. There are no calls or events on it today. It's just read-only state that other pallets and indexers can consult without worrying about the rest of staking churning the schema underneath them.
Subnet operators and indexers typically want a stable namespace for alpha economics, and this is that.
New chain surface
Builder notes
Two existing events changed shape and will need decoder updates if you parse them:
- BatchWeightItemFailed gained a second argument (
DispatchError), and its first argument went fromDispatchErrortou16(the failing weight index). - BurnIncreaseMultSet switched its
burn_increase_multfield fromu64toFixedU128.
Nothing else was removed in v411. SCALE clients that typecheck strictly against a frozen metadata snapshot will need to refresh against the v411 bundle. Loose clients that look up pallet and item indices at runtime should keep working without changes.
Where to go next
- Stake Locking & Conviction. The deep dive on how locks accrue conviction and what that gets you.
- Staking & Delegation. The prerequisites: hotkeys vs coldkeys, delegated stake, take fees.
- Runtime overview. Full pallet, event, call, and storage browser for v411.
- Runtime version history. Diffs from older runtimes, removed items, and migration guides.