• ABOUT

  • WHITEPAPER

  • DOCS

  • DISCORD

  • WALLET

  • EXPLORE

The V449 Upgrade

Curated Beta · August 2026

LIVE FUND PRICES · τ PER β · INDEX-SPLICED · SINCE LAUNCH1.001.051.101.15071421DAYS SINCE LAUNCH →OPENΤENSOR FOUNDAΤIONTAO.COMTAOSTATSCRUCIBLE LABSYUMA, A DCG COMPANYINDEXKRAKEN5DD8GARN…TAO.BOT

Largest funds by NAV since launch. Gold is the index (average basket). Height above it is cumulative outperformance versus the average basket.

Introduction

Spec 449 turns on set_root_weights. From the upgrade block a root validator can choose how its dividend stream (the yeild from root stake) is re-deployed across subnet alpha.

A new RootWeightsCap of 1/16 is added which limits concentration of the validator's dividend stream. Validators must spread across at least 16 destinations. btcli root is the working surface: list, allocate, claim, and weights.

Allocate, accrue, claim

As the root reborn update, root principal stays as root stake in TAO, yield accrues as beta (a share in a basket of alpha tokens). These can be 'claimed' into TAO which folds the yeild back into stake.

1 · List

btcli root list shows each root validator's basket, sorted by NAV.

btcli root list

2 · Allocate

Deploys τ from free balance into the chosen validator's basket and credits β immediately.

btcli root allocate

3 · Claim

Sells your accrued β back to the fund and folds the TAO into your root stake on that validator (claim_root_with_hotkey). Principal is never touched.

btcli root claim

Setting weights

btcli root weights writes an equal-weight vector. A 16-way split sits on the cap; add a 17th and it renormalizes to 1/17. Netuid 0 is a valid destination — that slice is held as TAO.

1 · Register

Burn-based seat. This upgrade writes ``MinBurn`` and ``ImmunityPeriod`` on root. A full senate evicts the lowest-staked non-immune member.

btcli subnets burn-cost 0
btcli root register

2 · Stake

Root principal on your hotkey. Needed to keep the seat and to set weights.

btcli stake add --netuid 0 --amount 1000 --hotkey <your hotkey>

3 · Set

Replace the allocation. Hotkey signs. 16 destinations, 1/16 each (set_root_weights).

btcli root weights set --netuids 0,1,3,4,5,8,9,11,13,19,21,23,34,51,64,77

4 · Add

17 destinations, 1/17 each.

btcli root weights add --netuid 88

5 · Remove

Drop one, renormalize.

btcli root weights remove --netuid 8

What changed on chain

The migration sets RootWeightSettingEnabled to true and writes RootWeightsCap at 4096/65535. The cap is checked on the submitted values; stored vectors from before the upgrade are left alone until the next write. Governance can move the cap (AdminUtils::sudo_set_root_weights_cap) or switch curation back off. After that, RootWeightSettingDisabled means the switch is off, not that the launch gate is still closed. On a chain with fewer destinations than the cap demands, the check is skipped.

SDK 11.3.0 ships with the runtime. That is the version that has btcli root list, allocate, claim, and weights, plus the index-spliced β rate. Upgrade:

pip install -U bittensor

SetRootWeights preflights the cap on the quantized values it will submit. Fund reads: root-baskets, validator-basket-summary, basket-position, root-basket-portfolio. Guide: Root Reborn.