Fix: ArgumentError (MAYBE-MARKETING-3M) #264
Open
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.
The error occurs because the ToolPercentage class inherits from ToolFloat but doesn't properly handle the validation constraints for percentage values. The original code inherits the min/max validation from ToolFloat but doesn't account for cases where percentages might need to exceed 100% (which can be valid in certain financial calculations, like returns over 100%).
The fix involves adding an explicit initializer to ToolPercentage that overrides any max/min constraints inherited from ToolFloat. This maintains the percentage conversion functionality (dividing by 100.0) while removing the upper bound restriction that was causing the ArgumentError.
This modification is necessary because:
The change ensures that all percentage values can be processed while maintaining the core functionality of converting string/numeric inputs into proper decimal percentages.
Error Details
Summary:
Stacktrace:
Tip
You can make revisions or ask questions of Revise.dev by using
/revise
in any comment or review!/revise Add a comment above the method to explain why we're making this change.
/revise Why did you choose to make this change specifically?
Important
If something doesn’t look right, click to retry this interaction.
Quick links: View in Sentry • View in Revise