-
Notifications
You must be signed in to change notification settings - Fork 2
SDK Doc: Message details for cross-chain sending ethereum transact messages. #107
Comments
As mentioned in #101 comment, here is point 4:
|
According to my understanding, we only have when cross-chain call So, maybe we can remove the |
if |
|
I need to deep into that logic, then discuss it later. A little complicated |
Now, ethereum pallet only need the gas_price >= min_gas_price. updated it? if gas_price < base_fee {
return Err(InvalidTransaction::Payment.into());
} |
Make sense. |
|
|
|
For
For relayer, he should ensure enough funds at his account for dispatching
|
Setmessage.dispatch_fee_payment == DispatchFeePayment::AtTargetChain
because for the evm transact call to be dispatched successfully, we must have enough gas in dispatch origin, and we will need customizepay_dispatch_fee
closure in runtime, to transfer enough fee (gas_price * gas_limit) from relayer to dispatch origin.Continue use
message.dispatch_fee_payment == DispatchFeePayment::AtSourceChain
Will not be called in our case.
For non evm.transact messages, the dispatch relayer will help pay for the msg's actually weight on target chain by including the msg's actual weight in
receive_messages_proof
extrinsic' PostDispatchInfo. These message should setmessage.dispatch_fee_payment == DispatchFeePayment::AtSourceChain
For evm.transact messages, the dispatch relayer will help pay for the msg's gas limit * gas_price by transferring gas on target chain to dispatch_origin(in Ethereum format).
TODO: Make changes to #105
darwinia-messages-substrate/modules/dispatch/src/lib.rs
Line 327 in 8c877be
The text was updated successfully, but these errors were encountered: