Yuma Consensus v3 (available for all subnets)
- Per-bond EMA scaling: individual & sparse-mode bonds now adapt via exponential moving
averages for smoother rewards - Refactored α-parameters (including new sigmoid-steepness tuning) for fine-grained consensus
control - Monte Carlo scenario tests & map_consensus.py integration tests validate retention guarantees
under adversarial conditions - On-chain toggle event & ABI support to enable/disable Yuma3 per subnet for easy rollbacks
- #1593
Notes for Subnet Owners
- Yuma 3 should be beneficial and safe to use in model verification subnets (specifically subnets which guarantee that a change in miner performance happens with a knowledge commitment), provided the bond reset flag is used correctly.
- It will distribute dividends to the validators more fairly than Yuma 2 did and Liquid Alpha 2.0 allows the subnet owners to disincentivize weight copying.
Generic Crowdloan Pallet (live for public testing)
- Launch generic crowdloans via a simple balance-transfer + arbitrary extrinsic
wrapper—supports create, contribute, withdraw, refund & finalize flows - Enforce a 500-contributor cap to prevent unbounded loops and track counts for benchmarking
- Hardened withdraw logic: only the original contributor can withdraw, and creator’s initial
deposit is locked until dissolution - #1503
Notes
The MEV-resistant staking PRs have been pulled back for now while we address some issues pointed out by the community but should be in an upcoming release
Full PR List
- Backpropagate hotfixes 5/27/2025 in #1689 by @sam0x17
- update readme in evm-test in #1657 by @open-junius
- fix everything (devnet) in #1669 by @sam0x17
- [Fix] [testnet] allow burn reg with SN token enabled == false in #1652 by @camfairchild
- Ensure stake threshold is respected when handing out vpermits in #1629 by @keithtensor
- Add UidLookupPrecompile address to used_address in #1628 by @keithtensor
- not check rate limit for reduce child take in #1624 by @open-junius
- Fix up a comment to reflect what the code is doing in #1643 by @keithtensor
- Add
BigRaw
Commitments Variant in #1638 by @JohnReedV - Add rustdocs to GH workflow in #1625 by @keithtensor
- Disable(comment) aggregated stake extrinsics in #1641 by @shamil-gadelshin
- Remove fee payment for associate_evm_key in #1640 by @keithtensor
- Multiple fields per commitment in #1633 by @JohnReedV
- remove the duplicated variant from the type info in #1626 by @l0r1s
- Move patch from workflow to sh file in #1622 by @basfroman
Validate-benchmarks
Job Only Respectsskip-validate-benchmarks
in #1611 by @JohnReedV- [Feat] reset bonds with commitment in #1612 by @camfairchild
- Upgrade Polkadot SDK to stable2409-7. in #1607 by @l0r1s
- [Feat] Yuma Consensus v3 in #1593 by @camfairchild
- make Dockerfile more secure in #1610 by @sam0x17
- Crowdloan max contributors limit to avoid unbounded work in #1591 by @l0r1s
- Introduce SameSubnetId error for move and swap stake extrinsics. in #1588 by @shamil-gadelshin
- add event for yuma3 toggle in #1605 by @camfairchild
- feat/roman/extend-patch-for-localnet-docker-image in #1603 by @basfroman
- Ensure we only reset BondsMovingAverage to 975000 only if it exceeds in #1598 by @keithtensor
- [fix] add to StakingHotkeys on inc stake in #1596 by @camfairchild
- Remove Deprecated Commitments Storage in #1595 by @JohnReedV
- Benchmark All Pallets in #1585 by @JohnReedV
- Add
start-call
patch for non-fast-blocks node in localnet Docker image in #1592 by @basfroman - Introduce ZeroMaxAmount error for add_stake_limit extrinsic. in #1577 by @shamil-gadelshin
- Add precompile to allow for UID lookup when provided with EVM address in #1518 by @keithtensor
- allow reschedule failed coldkey swap in #1580 by @open-junius
- Fix crowdloan logic issues in #1587 by @l0r1s
- use SubnetIdentity instead of SubnetName for name of SN in #1501 by @camfairchild
- Upgrade Subtensor Benchmarking to V2 in #1584 by @JohnReedV
- Add precompiles for add/remove stake limit in #1552 by @camfairchild
Skip-Validate-Benchmark
Label Reruns CI in #1574 by @JohnReedV- upgrade to rust 1.86 🦀 in #1575 by @sam0x17
- Feat/crowdloan pallet in #1503 by @l0r1s
- Make BondsMovingAverage and MaxBurn root only in #1573 by @keithtensor
- Extrinsic for setting sn owner hotkey in #1513 by @gztensor
- Update README.md in #1533 by @dedyshkaPexto
- docs: fix broken Substrate docs link in #1536 by @mdqst
- docs: added a new CodeQL badge in #1537 by @sashaphmn
- Benchmark Action in #1562 by @JohnReedV
- Remove obsolete storage items. in #1569 by @shamil-gadelshin
- add check before sending burned register in #1568 by @open-junius
- Bump tokio from 1.40.0 to 1.44.2 in #1517 by @app/dependabot
- Add netuid to
SelectiveMetagraphIndex
object in #1565 by @basfroman - Introduce stake jobs batching and delayed execution in #1525 by @shamil-gadelshin
- fix the wrong spec file path in #1561 by @open-junius
- missing pow faucet feature in #1560 by @open-junius
- Feat/aggregate stakes more extrinsics in #1549 by @shamil-gadelshin
- Delay aggregated staking jobs. in #1556 by @shamil-gadelshin
- Add retry for all extrinsic in #1554 by @open-junius
- Add Missing Benchmarks in #1555 by @JohnReedV
- Added migration to remove total hk/ck stakes this interval in #1539 by @l0r1s
- Add missing benchmarks. in #1544 by @shamil-gadelshin
- Improve EVM test stability in CI in #1548 by @open-junius
- John/Fix-Benchmarks in #1528 by @JohnReedV
- Add retry logic for Bittensor e2e test in #1546 by @basfroman
- fix a type issue in evm test in #1541 by @open-junius
- Feat/subtoken enable in #1512 by @open-junius
- add evm test to ci in #1422 by @open-junius