-
Notifications
You must be signed in to change notification settings - Fork 340
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
Add support for XCM delivery fees in all runtimes #2851
Closed
Closed
Conversation
This file contains 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
Agusrodri
added
B7-runtimenoteworthy
Changes should be noted in any runtime-upgrade release notes
D5-nicetohaveaudit⚠️
PR contains trivial changes to logic that should be properly reviewed.
breaking
Needs to be mentioned in breaking changes
labels
Jun 28, 2024
Coverage Report@@ Coverage Diff @@
## master agustin-xcm-delivery-fees +/- ##
=============================================================
+ Coverage 81.30% 81.44% +0.14%
Files 301 301
+ Lines 85701 86098 +397
=============================================================
+ Hits 69675 70121 +446
- Misses 16026 15977 -49
|
not needed at this time |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
B7-runtimenoteworthy
Changes should be noted in any runtime-upgrade release notes
breaking
Needs to be mentioned in breaking changes
D5-nicetohaveaudit⚠️
PR contains trivial changes to logic that should be properly reviewed.
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.
What does it do?
This PR introduces XCM delivery fees to Moonbase, Moonriver and Moonbeam runtimes.
From now on, each XCM functionality that builds and send an XCM message, should account for these extra fees, which correspond to the cost of sending a message through the XCM protocol.
The full amount associated to delivery fees is paid by the account that executes the pallet/precompile call, and it's paid in the origin chain's native balance (DEV, MOVR or GLMR respectively).
Formula to compute delivery fees
To compute the final amount associated to delivery fees, we base on four elements:
DeliveryFeeFactor
: constant stored insideParachainSystem
pallet (for UMP) orXcmpQueue
pallet (for HRMP).BaseDeliveryFee
: constant set in our runtimes.TransactionByteFee
: constant set in our runtimes.XcmMsgBytes
: length in bytes of the final XCM message to send.More context on: paritytech/polkadot-sdk#1234