A website to dry-run calls with any origin

Hello everyone! I’ve come here to announce a small website I made to play around with, and test, the new dry run API, presented in Polkadot Decoded this year in Brussels.

The site lets you input a chain, an origin (root, signed, or any other governance track origin) and a call which you can create in PolkadotJS Apps and copy and paste.

You can already use the dry run api on PolkadotJS Apps itself, but this site follows the path of the XCM across chains, very much in the way described in my talk in decoded. This allows it to show if the call is successful across these multiple chains.

I’m using it myself to test the API but it also has the very practical example of being able to dry run OpenGov proposals.
Let’s take this proposal to fund the decentralized Polkadot X account for example. I created a URL with its preimage, ready to dry-run: Dry run. If you go to that link, wait until it finishes saying “Loading” (it’s converting the call to an actual transaction), you can click the “dry run” button and see it’s on-chain effects.

When the call fails it only shows the on-chain information of why it failed, so sadly not enough. Using chopsticks with logs enabled is much better to debug. This is just a quick sanity-check. I know I would’ve found it helpful before so I’m sharing it.

Future work

While the dry-run API is still being adopted by real apps with good UI and UX, there’s a lot of work that could be done on this simple app:

  • Make it responsive
  • Add Kusama. There’s a bug in Kusama whose fix is already making it’s way to the fellowship runtimes.
  • Light-client first
  • Add paseo
  • Add templates (getting preimages directly from the chain?)
  • Adding more chains
  • Etc
18 Likes

Amazing :clap:
Would be great if all parachains implement this api :smiley:

1 Like

Agreed! This API is implemented in the relay chain and in all system parachains.
I made a guide on how to use and implement them on your own runtime.

1 Like

Since it was the first question on the YouTube video. Our XCM Monitor Agent provides real time updates over Websockets and/or Webhooks of full XCM execution journeys :point_down:

The XCM Monitor Agent: XCM Monitor

Example Websockets tracking app for public subscriptions: https://xcm-tracker.ocelloids.net/