pendulum-chain / vortex

https://app.vortexfinance.co/
1 stars 1 forks source link

Research Axelar integration #30

Closed prayagd closed 4 months ago

prayagd commented 6 months ago

Context

For the upcoming phases of the prototype, as we want the starting point to be a EVM chain(Polygon or Base) for the prototype. For ex. user having USDC tokens on Base or Polygon should be able to offramp in onclick using the Prototype. This ticket is to research all the integrations and automations to achieve that.

Requirement

Additional requirements

Note

Research outcome

The result of the research can be found in this Notion page.

prayagd commented 6 months ago

@pendulum-chain/devs Let me know if the above is clear or any questions?

TorstenStueber commented 5 months ago

Does the research from this issue already answer the research?

prayagd commented 5 months ago

@TorstenStueber No, this linked issue is researching an alternate option for far future saying this because the mainnet of the snowbridge is still not live

prayagd commented 5 months ago

Hey team! Please add your planning poker estimate with Zenhub @b-yap @bogdanS98 @ebma @gianfra-t @TorstenStueber

TorstenStueber commented 5 months ago

This is quite a complex research topic. I think that we should break it down and first get familiar with Axelar for Moonbeam, test it and get a good understanding of its features and limitations (as well as time and fees) – also whether it allows to add memos to transactions and how to specify the target account.

Once we have this understanding, we can define the next steps (e.g., XCM automation)

prayagd commented 5 months ago

@TorstenStueber ok breaking it down into smaller tickets and making this a Axelar ticket

prayagd commented 5 months ago

@pendulum-chain/devs FYI changed the scope of this ticket as suggested by torsten, here is the follow-up ticket for XCM automation research #32

ebma commented 5 months ago

@prayagd for this research, it would probably make sense to perform a transfer of USDC from all the EVM source chains we want to support (e.g. Base, Polygon) to Moonbeam and see how the resulting transactions on Moonbeam look like. To speed this up, could you please already prepare an account with 1 USDC (and some gas token) on each source chain so that the tech team can use them once working on this ticket?

prayagd commented 5 months ago

@ebma That's a good idea, sure will setup this up. I will share the product account which already has some funds on Polygon will also do it for Base and share the credentials through 1pass

TorstenStueber commented 5 months ago

By the way, this research ticket here seems to be about using USDC. The Nabla prototype deployment and the prototype are currently intended to be used for USDT. Can we use Axelar for USDT instead or is it not ready.

Alternatively, we could also test both of course.

Is the USDC on Moonbeam the "same" as the USDC on Asset Hub? Is one the wrapped version of the other or is there an XCM teleport possible between them?

prayagd commented 5 months ago

Is the USDC on Moonbeam the "same" as the USDC on Asset Hub?

the USDC coming from axelar is a wrapped version called as USDC.wh on moonbeam network. The is different USDC on moonbeam which comes from Assethub its called USDC only.

prayagd commented 5 months ago

@pendulum-chain/devs updated the ticket description in the attempt to make research tickets more clear. Let me know if any questions

TorstenStueber commented 5 months ago

This gets complicated: So when we send USDC.wh from Moonbeam to Pendulum, it will become a wrapped token of a wrapped token? Or does it use the asset Hub as the asset reserve so that after sending the tokens via XCM to us, they stay simple wrapped versions of the token?

Either way: that means that Pendulum would have two distinct versions of USDC and we would need to use Nabla to swap the different kinds of (wrapped versions) of USDC into each other.

vadaynujra commented 5 months ago

@TorstenStueber the USDC.wh can be moved to a parachain and remains a different version of USDC, in addition to the Asset Hub USDC (screenshot from HydraDX which has a pool for USDC.wh)

image

So, I see 3 options to implement this:

TorstenStueber commented 5 months ago

How to swap USDC.wh to Asset Hub USDT on Moonbeam? Is there a DEX? I think we should avoid that and use Nabla instead as we can control that much better.

So it boils down to your options 1 and 3. Either way that would require to introduce a USDC.wh swap pool. Then it makes much more sense to swap directly to the offramping asset and not to USDT as an intermediate asset.

TorstenStueber commented 4 months ago

@bogdanS98 can we consider this research done? Can you check all the checkboxes that are completed?

bogdanS98 commented 4 months ago

@TorstenStueber I think we can close it, I checked all the boxes except for the estimation one since that will be done on each implementation task independently if I understood correctly (@prayagd ?).

The result of the research can be found in this Notion page.

prayagd commented 4 months ago

@bogdanS98 Yes you are right, I think we can close this ticket if all agree