diff --git a/CHANGELOG.md b/CHANGELOG.md index 80bf2ad1b5..d557470cc3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## 9.7.1 /2025-06-06 + +## What's Changed +* Update e2e-tests (metagraph_info, staking) by @basfroman in https://github.com/opentensor/bittensor/pull/2907 + +**Full Changelog**: https://github.com/opentensor/bittensor/compare/v9.7.0...v9.7.1 + ## 9.7.0 /2025-05-29 ## What's Changed diff --git a/pyproject.toml b/pyproject.toml index 15a1062fbe..51f6c28bff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "bittensor" -version = "9.7.0" +version = "9.7.1" description = "Bittensor" readme = "README.md" authors = [ diff --git a/tests/e2e_tests/test_metagraph.py b/tests/e2e_tests/test_metagraph.py index c3c485ebbe..c4ab3147f6 100644 --- a/tests/e2e_tests/test_metagraph.py +++ b/tests/e2e_tests/test_metagraph.py @@ -201,7 +201,7 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): metagraph_info = subtensor.get_metagraph_info(netuid=1, block=1) - assert metagraph_info == MetagraphInfo( + expected_metagraph_info = MetagraphInfo( netuid=1, name="apex", symbol="α", @@ -214,15 +214,15 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): last_step=0, blocks_since_last_step=1, subnet_emission=Balance(0), - alpha_in=Balance.from_tao(10).set_unit(netuid=alice_subnet_netuid), - alpha_out=Balance.from_tao(1).set_unit(netuid=alice_subnet_netuid), + alpha_in=Balance.from_tao(10).set_unit(1), + alpha_out=Balance.from_tao(1).set_unit(1), tao_in=Balance.from_tao(10), - alpha_out_emission=Balance(0).set_unit(netuid=alice_subnet_netuid), - alpha_in_emission=Balance(0).set_unit(netuid=alice_subnet_netuid), + alpha_out_emission=Balance(0).set_unit(1), + alpha_in_emission=Balance(0).set_unit(1), tao_in_emission=Balance(0), - pending_alpha_emission=Balance(0).set_unit(netuid=alice_subnet_netuid), + pending_alpha_emission=Balance(0).set_unit(1), pending_root_emission=Balance(0), - subnet_volume=Balance(0).set_unit(netuid=alice_subnet_netuid), + subnet_volume=Balance(0).set_unit(1), moving_price=Balance(0), rho=10, kappa=32767, @@ -234,7 +234,7 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): max_validators=64, num_uids=1, max_uids=256, - burn=Balance.from_tao(1), + burn=Balance.from_tao(0.1), difficulty=5.421010862427522e-13, registration_allowed=True, pow_registration_allowed=False, @@ -273,27 +273,29 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): validator_permit=(False,), pruning_score=[0.0], last_update=(0,), - emission=[Balance(0).set_unit(alice_subnet_netuid)], + emission=[Balance(0).set_unit(1)], dividends=[0.0], incentives=[0.0], consensus=[0.0], trust=[0.0], rank=[0.0], block_at_registration=(0,), - alpha_stake=[Balance.from_tao(1.0).set_unit(alice_subnet_netuid)], + alpha_stake=[Balance.from_tao(1.0).set_unit(1)], tao_stake=[Balance(0)], - total_stake=[Balance.from_tao(1.0).set_unit(alice_subnet_netuid)], + total_stake=[Balance.from_tao(1.0).set_unit(1)], tao_dividends_per_hotkey=[ ("5C4hrfjw9DjXZTzV3MwzrrAr9P1MJhSrvWGWqi1eSuyUpnhM", Balance(0)) ], alpha_dividends_per_hotkey=[ - ("5C4hrfjw9DjXZTzV3MwzrrAr9P1MJhSrvWGWqi1eSuyUpnhM", Balance(0)) + ("5C4hrfjw9DjXZTzV3MwzrrAr9P1MJhSrvWGWqi1eSuyUpnhM", Balance(0).set_unit(1)) ], ) + assert metagraph_info == expected_metagraph_info + metagraph_infos = subtensor.get_all_metagraphs_info(block=1) - assert metagraph_infos == [ + expected_metagraph_infos = [ MetagraphInfo( netuid=0, name="root", @@ -307,11 +309,11 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): last_step=0, blocks_since_last_step=1, subnet_emission=Balance(0), - alpha_in=Balance(0).set_unit(netuid=alice_subnet_netuid), - alpha_out=Balance(0).set_unit(netuid=alice_subnet_netuid), + alpha_in=Balance(0), + alpha_out=Balance(0), tao_in=Balance(0), - alpha_out_emission=Balance(0).set_unit(netuid=alice_subnet_netuid), - alpha_in_emission=Balance(0).set_unit(netuid=alice_subnet_netuid), + alpha_out_emission=Balance(0), + alpha_in_emission=Balance(0), tao_in_emission=Balance(0), pending_alpha_emission=Balance(0), pending_root_emission=Balance(0), @@ -327,7 +329,7 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): max_validators=64, num_uids=0, max_uids=64, - burn=Balance.from_tao(1), + burn=Balance.from_tao(0.1), difficulty=5.421010862427522e-13, registration_allowed=True, pow_registration_allowed=False, @@ -371,6 +373,8 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): metagraph_info, ] + assert metagraph_infos == expected_metagraph_infos + assert wait_to_start_call(subtensor, alice_wallet, alice_subnet_netuid) assert subtensor.burned_register( @@ -434,6 +438,8 @@ def test_metagraph_info(subtensor, alice_wallet, bob_wallet): assert metagraph_info is None + logging.console.info("✅ Passed test_metagraph_info") + # TODO: get back after SelectiveMetagraph come to the mainnet # def test_metagraph_info_with_indexes(subtensor, alice_wallet, bob_wallet): diff --git a/tests/e2e_tests/test_staking.py b/tests/e2e_tests/test_staking.py index f9bcc45510..38cdec4bad 100644 --- a/tests/e2e_tests/test_staking.py +++ b/tests/e2e_tests/test_staking.py @@ -223,13 +223,17 @@ def test_batch_operations(subtensor, alice_wallet, bob_wallet): bob_wallet.coldkey.ss58_address, ) - assert balances == { + expected_balances = { alice_wallet.coldkey.ss58_address: get_dynamic_balance( - balances[alice_wallet.coldkey.ss58_address].rao, 2 + balances[alice_wallet.coldkey.ss58_address].rao + ), + bob_wallet.coldkey.ss58_address: get_dynamic_balance( + balances[bob_wallet.coldkey.ss58_address].rao ), - bob_wallet.coldkey.ss58_address: Balance.from_tao(999_998).set_unit(3), } + assert balances == expected_balances + alice_balance = balances[alice_wallet.coldkey.ss58_address] success = subtensor.add_stake_multiple( @@ -260,11 +264,17 @@ def test_batch_operations(subtensor, alice_wallet, bob_wallet): bob_wallet.coldkey.ss58_address, ) - assert balances == { - alice_wallet.coldkey.ss58_address: ApproxBalance(alice_balance.rao), - bob_wallet.coldkey.ss58_address: Balance.from_tao(999_998), + expected_balances = { + alice_wallet.coldkey.ss58_address: get_dynamic_balance( + balances[alice_wallet.coldkey.ss58_address].rao + ), + bob_wallet.coldkey.ss58_address: get_dynamic_balance( + balances[bob_wallet.coldkey.ss58_address].rao + ), } + assert balances == expected_balances + success = subtensor.unstake_multiple( alice_wallet, hotkey_ss58s=[bob_wallet.hotkey.ss58_address for _ in netuids], @@ -288,12 +298,15 @@ def test_batch_operations(subtensor, alice_wallet, bob_wallet): bob_wallet.coldkey.ss58_address, ) - assert balances == { + expected_balances = { alice_wallet.coldkey.ss58_address: get_dynamic_balance( - balances[alice_wallet.coldkey.ss58_address].rao, 2 + balances[alice_wallet.coldkey.ss58_address].rao, ), - bob_wallet.coldkey.ss58_address: Balance.from_tao(999_998), + bob_wallet.coldkey.ss58_address: Balance.from_tao(999_999.8), } + + assert balances == expected_balances + assert balances[alice_wallet.coldkey.ss58_address] > alice_balance logging.console.success(f"✅ Test [green]test_batch_operations[/green] passed")