fix: remove double conversion in stake swap functionality [--swap_all]#328
Merged
thewhaleking merged 1 commit intoopentensor:stagingfrom Feb 19, 2025
Merged
Conversation
thewhaleking
approved these changes
Feb 19, 2025
Contributor
|
Great catch! |
ibraheem-abe
approved these changes
Feb 19, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix Double Conversion Bug in Stake Swap Functionality
Issue Description
A bug was discovered in the stake swap functionality when using the
--swap-allflag. The bug caused massive stake amount inflation due to an unnecessary double conversion of the Balance object.Problem Details
--swap-all, the code was incorrectly converting an already-converted Balance objectRoot Cause
The bug occurred in
move.pywhere:The
current_stakewas already a Balance object, butBalance.from_tao()was being called on it again, causing double conversion.Solution
Fixed by removing the unnecessary
Balance.from_tao()conversion:This change ensures the Balance object is only converted once, maintaining the correct stake amount.
Testing Performed
Impact
This fix prevents potential significant financial losses that could occur due to incorrect stake amount calculations when using the
--swap-allflag.