You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Matching XCM transfers in XCMv2 has not been easy due to the lack of XCMHash in events for DMP and UMP cases.
To compensate for this, multi-chain indexer/dApp developers are required to call state_traceBlock on every chain, decode it, and look for state changes like Dmp:DownwardMessagesQueues.
At the same time, the state_traceBlock solution is no longer practical as many parachains now consider this call "unsafe" and have gradually locked away this RPC method.
Current Status (As of Runtime 9382)
XCMv3 (#697) partially solves this annoyance with the addition of the "parachainSystem:UpwardMessageSent" event (#1228)
UMP transfers initiated via "PolkadotXcm" pallet (e.g., XCMv3 Statemine -> Kusama for 1KSM) can now be easily matched without any trace dependency.
DMP transfers initiated via "XcmPallet" pallet continue to require trace (e.g., XCMv3 Kusama -> Statemine for 0.2KSM) as it only emits xcmPallet:Attempted and still missing the XCMHash associated with it.
Feature Request
To improve its usability and fully eliminate the trace dependency for dApp developers, I would like to see an event showing DMP XCMHash when it has been attempted or enqueued (e.g., xcmPallet:DownwardMessageEnqueued) right before the xcmPallet:Attempted. Can we see this getting implemented soon?
Additional question:
Should {xcmPallet:DownwardMessageEnqueued, xcmpQueue:XcmpMessageSent, parasystem:UpwardMessageSent} be augmented to include xcmContext besides xcmHash?
Background
Matching XCM transfers in XCMv2 has not been easy due to the lack of XCMHash in events for DMP and UMP cases.
To compensate for this, multi-chain indexer/dApp developers are required to call
state_traceBlockon every chain, decode it, and look for state changes likeDmp:DownwardMessagesQueues.At the same time, the
state_traceBlocksolution is no longer practical as many parachains now consider this call "unsafe" and have gradually locked away this RPC method.Current Status (As of Runtime 9382)
XCMv3 (#697) partially solves this annoyance with the addition of the "parachainSystem:UpwardMessageSent" event (#1228)
xcmPallet:Attemptedand still missing the XCMHash associated with it.Feature Request
To improve its usability and fully eliminate the trace dependency for dApp developers, I would like to see an event showing DMP XCMHash when it has been attempted or enqueued (e.g.,
xcmPallet:DownwardMessageEnqueued) right before thexcmPallet:Attempted. Can we see this getting implemented soon?Should {
xcmPallet:DownwardMessageEnqueued,xcmpQueue:XcmpMessageSent,parasystem:UpwardMessageSent} be augmented to include xcmContext besides xcmHash?