-
Notifications
You must be signed in to change notification settings - Fork 713
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
New messaging specification (replacing old deposit/withdrawal spec) #318
New messaging specification (replacing old deposit/withdrawal spec) #318
Conversation
Just a comment for clarity, in my head, the message could contain:
The Data field contains all needed information as it depends on what we want for the gateway to do, for erc20 example, we will need info on who is the new owner of the token, token id, and amount. MessageId can be hash over message fields. It feels like we could remove |
In the same style as Arbitrum/Optimism, I tried to keep the core message object as generic as possible to facilitate more than gateways. For example, a gateway deposit from Fuel to Ethereum would work like this:
I also imagined that there wouldn't be any onchain router and it would be up to the front end UI to help a user pick a gateway contract for a particular asset. Similar to how uniswap uses their off chain token lists to help a user swap with the correct token address they're looking for. I'm currently in the process of diagraming everything up to be scrutinized before we start writing contracts. |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as resolved.
This comment was marked as resolved.
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.
LGTM
Related issue: FuelLabs/fuel-specs#318
Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Related issue: FuelLabs/fuel-specs#318
Include message input and output with their respective validation rules. This commit will introduce a stateful property to the transaction validation. A valid transaction might not be validated anymore in post-execution since its outputs might be mutated at runtime in the VM. Related issue: FuelLabs/fuel-specs#318
Related issue: FuelLabs/fuel-specs#318
Changes to keep track of messages going in and out
Implementation:
SMO
instruction fuel-asm#76SMO
fuel-types#38