Skip to content
Snippets Groups Projects
  • Francisco Aguirre's avatar
    Remove redundant XCMs from dry run's forwarded xcms (#5913) · 4a70b2cf
    Francisco Aguirre authored
    # Description
    
    This PR addresses
    https://github.com/paritytech/polkadot-sdk/issues/5878.
    
    After dry running an xcm on asset hub, we had redundant xcms showing up
    in the `forwarded_xcms` field of the dry run effects returned.
    These were caused by two things:
    - The `UpwardMessageSender` router always added an element even if there
    were no messages.
    - The two routers on asset hub westend related to bridging (to rococo
    and sepolia) getting the message from their queues when their queues is
    actually the same xcmp queue that was already contemplated.
    
    In order to fix this, we check for no messages in UMP and clear the
    implementation of `InspectMessageQueues` for these bridging routers.
    Keep in mind that the bridged message is still sent, as normal via the
    xcmp-queue to Bridge Hub.
    To keep on dry-running the journey of the message, the next hop to
    dry-run is Bridge Hub.
    That'll be tackled in a different PR.
    
    Added a test in `bridge-hub-westend-integration-tests` and
    `bridge-hub-rococo-integration-tests` that show that dry-running a
    transfer across the bridge from asset hub results in one and only one
    message sent to bridge hub.
    
    ## TODO
    - [x] Functionality
    - [x] Test
    
    ---------
    
    Co-authored-by: command-bot <>
    Unverified
    4a70b2cf
Code owners
Assign users and groups as approvers for specific file changes. Learn more.