fix: apply configured gas and capital discount percents - #1533
Open
devtechedge wants to merge 1 commit into
Open
fix: apply configured gas and capital discount percents#1533devtechedge wants to merge 1 commit into
devtechedge wants to merge 1 commit into
Conversation
gasDiscountPercent and capitalDiscountPercent were validated and returned but never used in fee math. Apply them multiplicatively as (100 - discount) / 100 with BigNumber round-down on gas, capital, and aux native fee percents (aux shares the gas discount) so totals and relayFee aggregates reflect the configured discounts. Fixes across-protocol#1449
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.
Summary
gasDiscountPercentandcapitalDiscountPercentwere accepted onRelayFeeCalculatorConfig, validated in the constructor, and echoed onRelayerFeeDetails, but the fee path never multiplied them in. A non-zero config therefore leftgasFeeTotal,capitalFeeTotal, andrelayFeeTotalunchanged.This applies the discounts multiplicatively as
(100 - discount) / 100with BigNumber integer division (round down) on the gas and capital fee percents before totals are derived from them. Auxiliary native fees share the gas discount, matchingauxNativeDiscountPercent. Downstream aggregates (relayFee*,minDeposit,maxGasFeePercent) then use the discounted values.Test plan
yarn hardhat test test/relayFeeCalculator.test.ts(21 passing)Fixes #1449