Skip to content

Hotkey splitting #1559

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 55 commits into
base: devnet-ready
Choose a base branch
from
Open

Hotkey splitting #1559

wants to merge 55 commits into from

Conversation

open-junius
Copy link
Contributor

@open-junius open-junius commented Apr 22, 2025

Description

Related Issue(s)

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Other (please describe):

Breaking Change

If this PR introduces a breaking change, please provide a detailed description of the impact and the migration path for existing applications.

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have run cargo fmt and cargo clippy to ensure my code is formatted and linted correctly
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

Screenshots (if applicable)

Please include any relevant screenshots or GIFs that demonstrate the changes made.

Additional Notes

Please provide any additional information or context that may be helpful for reviewers.

@open-junius open-junius requested a review from ales-otf May 6, 2025 15:34
Copy link
Contributor

@JohnReedV JohnReedV left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The validate-benchmarks job runs the benchmarks and then compares the result to what is written in the extrinsic's definition. It doesn't currently support DispatchResultWithPostInfo.

To get it to pass you can either update the reads/writes in the dispatch or add the skip-validate-benchmarks label to this PR.

@open-junius open-junius added the skip-validate-benchmarks This PR fails validate benchmarks but needs to be merged anyway label May 7, 2025
@ts-paulswaim
Copy link

ts-paulswaim commented May 12, 2025

Did the nonce fix get reverted/regressed in Bittensor? Nonce issue for setting weights on hotkey was addressed there a while back, regressed in Feb, then fixed again.
opentensor/bittensor#2534
Not opposed to this, but it had something addressing it at Bittensor layer.

  • This would also trigger identity fees on all subnets for valis using one hotkey atm.
  • How does this appear to stakers when looking for staking options?

@open-junius
Copy link
Contributor Author

Did the nonce fix get reverted/regressed in Bittensor? Nonce issue for setting weights on hotkey was addressed there a while back, regressed in Feb, then fixed again. opentensor/bittensor#2534 Not opposed to this, but it had something addressing it at Bittensor layer.

  • This would also trigger identity fees on all subnets for valis using one hotkey atm.
  • How does this appear to stakers when looking for staking options?

Can you elaborate your comment? can't understand it. Did you suggest any code change in Bittensor?

@ts-paulswaim
Copy link

Did the nonce fix get reverted/regressed in Bittensor? Nonce issue for setting weights on hotkey was addressed there a while back, regressed in Feb, then fixed again. opentensor/bittensor#2534 Not opposed to this, but it had something addressing it at Bittensor layer.

  • This would also trigger identity fees on all subnets for valis using one hotkey atm.
  • How does this appear to stakers when looking for staking options?

Can you elaborate your comment? can't understand it. Did you suggest any code change in Bittensor?

This PR's original issue mentioned resolving the fact that a single hotkey used as a validator across all subnets suffered from an inability to set weights consistently (related to nonces and transaction pools?). The link I provided was a resolution for that issue at the Bittensor level, not Subtensor, so I was unsure why this was being raised unless that fix regressed.
Original issue mentioned several things, but this was the item I mentioned above:
"Due to a ratelimits, validators can only set weights from one hotkey on one subnet in any given block."

@open-junius open-junius requested a review from ppolewicz May 13, 2025 15:46
@open-junius
Copy link
Contributor Author

Did the nonce fix get reverted/regressed in Bittensor? Nonce issue for setting weights on hotkey was addressed there a while back, regressed in Feb, then fixed again. opentensor/bittensor#2534 Not opposed to this, but it had something addressing it at Bittensor layer.

  • This would also trigger identity fees on all subnets for valis using one hotkey atm.
  • How does this appear to stakers when looking for staking options?

Can you elaborate your comment? can't understand it. Did you suggest any code change in Bittensor?

This PR's original issue mentioned resolving the fact that a single hotkey used as a validator across all subnets suffered from an inability to set weights consistently (related to nonces and transaction pools?). The link I provided was a resolution for that issue at the Bittensor level, not Subtensor, so I was unsure why this was being raised unless that fix regressed. Original issue mentioned several things, but this was the item I mentioned above: "Due to a ratelimits, validators can only set weights from one hotkey on one subnet in any given block."

My understanding for the solution is the new netuid parameter give the coldkey ability to swap hotkey in any subnet. It will remove the limit of tx rate. also save the cost to register hotkey in every subnet.
Please @ppolewicz give more context about it, and provide precise answer

@open-junius open-junius requested a review from a team May 14, 2025 06:36
@sam0x17 sam0x17 requested review from JohnReedV and l0r1s May 19, 2025 03:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip-cargo-audit This PR fails cargo audit but needs to be merged anyway skip-validate-benchmarks This PR fails validate benchmarks but needs to be merged anyway
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants