âïļMonitor cross-chain actions
Last updated
Last updated
As mentioned at Cross-chain execution, Unfungibles leverages cross-chain messaging to execute expensive operations in a much cheaper way.
It is simpler to grasp than it may seem at first glance, and here you can check how to make sure everything works smoothly.
In the current version, we have 2 asynchronous flows: join queue and execute Battle Royale. When either happens, users will receive a notification which can then be inspected via the UI:
The notifications can be inspected further:
There are 2 important links:
A link to the L1 transaction, usual Etherscan information.
A link to Axelarscan, all details about the cross-chain propagation can be found there.
How to monitor those messages is well explained by Axelar at their monitoring docs. In any case, here we list and explain the most common situations that are worth checking.
One issue could be that there wasn't enough gas fee to propagate the cross-chain message. We use the Axelar SDK to estimate the Axelar costs before sending the transaction, but in some cases the problem can occur during times of unexpected gas cost variation.
Luckily, it is very easy to check and fix, if that is the case, Axelarscan will be stuck on the "confirm" step and will also allow you to fix it by adding a bit more gas to make sure the message gets propagated properly.
This can be done by anyone, either by a user with a stuck transaction or by the team, should we notice such an issue.
Something important has to be noted in the case of executing a Battle Royale: there are two messages involved, a message from L1 to L2 asking to resolve the battle, and then another message from L2 to L1 with the result which is used to trigger the payment to the winner. This secures the entire flow.
In the case of a 2-way call message, we need to click there to see the L2->L1 message and check its status. It can be a similar issue as above, and in some cases it can be fixed by just adding a bit more gas to propagate the message.