-
Notifications
You must be signed in to change notification settings - Fork 41
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
Update xcm-format with v3 Instructions and Registers #31
Conversation
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Thank you for catching that!! Let me know if there is anything else you think would be wise to include/changed. |
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
For reference, the XCM v3 PR is here: paritytech/polkadot#4097, make sure that every new feature mentioned in the description there is reflected on this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Took a dive on the XCM v3 PR and diffed it here to add what was missing
Thank you for keeping the standard up-to-date with the code 🎉
|
@gavofyork Currently we describe most of the errors of the xcvm instructions as fallible or infallible. Do we want to change these error descriptions to the actual errors mentioned in the |
Maybe not relevant for this PR, but would including hyperlinks to the xcm code in the Polkadot repo be interesting? I feel it would bring the spec more cohesion. i.e., to specific instructions, or interfaces like |
Yes - that could be helpful. |
Sounds sensible. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments on error types
README.md
Outdated
|
||
Sets the Fees Mode Register. | ||
|
||
- `jit_withdraw: bool`: The fees mode item; if set to `true` then fees for any instructions are withdrawn as needed using the same mechanism as `WithdrawAssets`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not a good explanation, because naturally people will ask why we don't simply just use WithdrawAsset
to do the job. And I don't believe it is true that any fees are eligible to be withdrawn -- only a select few instructions do this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This better?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like it's good to go 🚀
Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com>
In an effort to sync, update, and expand the documentation around XCM in the Polkadot Wiki, I propose adding the newly added instructions and registers.
Most of the definitions for the instructions came from the XCM v3 commit code in the Polkadot repo.
Instructions Added:
ExpectAsset
ExpectError
ExpectOrigin
QueryPallet
ExpectPallet
ReportTransactStatus
ClearTransactStatus
LockAsset
UnlockAsset
NoteUnlockable
RequestUnlock
Registers Added:
TODO
MultiLocation
Junction
GeneralKey
network
fieldsMultiAsset
/WildMultiAsset
max_assets
removalNetworkId
BodyId
/BodyPart
UniversalLocation
(for the GlobalConsensus Junction)