Original Thread: Commonwealth
TLDR
This is a proposal to give the address osmo1raa4kyx5ypz75qqk3566c6slx2mw3qzsu6rymw
permission to upload CosmWasm contracts to Osmosis without seeking governance approval for subsequent uploads.
Deploying this contract will allow Skip to leverage Osmosis swap hooks to build a service that simplifies cross-chain transfers, swaps, and fee management. Skip will provide this functionality via our free API, which enables applications anywhere in Cosmos to seamlessly draw on Osmosis liquidity.
Proposal
The Skip API is a unified RPC service that helps developers create seamless cross-chain product experiences using IBC. Our goal is to enable frontend developers to be as productive as possible by offering the following IBC functionality out of the box:
- One-click, any-to-any, cross-chain transfers and swaps
- Multi-hop, cross-chain transfers and “token unwinding”
- Denom and IBC channel path recommendations for any asset and chain
- Multi-denom fee estimation for composite transfer and swap routes
- Multi-hop transaction lifecycle tracking
- Protection from common cross-chain UX failures (e.g. bridging to a chain where the end user doesn’t have gas)
To provide these capabilities the Skip API consists of two components, one off-chain and one on-chain, the later of which requires a contract deployment on Osmosis. More specifically:
- The off-chain system indexes a variety of chain data, including deployed IBC version, IBC packet forward middleware support, and accepted fee tokens for each chain. Skip’s off-chain service then combines this will realtime oracle feeds and fee market data to create a recommendation system that can build arbitrarily complex cross-chain routes + the corresponding Cosmos SDK messages to craft a complete transaction sequence.
- The resulting transaction sequence is then sent to Skips on-chain system , which uses the ICS-20 memo field to chain together a series of transactions that use Packet Forward Middleware and IBC hooks, wherever supported, to create a one-click experience to move from any-to-any chain and any-to-any token.
Skip’s contracts are currently undergoing an audit by Oak security. Any contract revisions will be uploaded and the audit report will be posted on this forum before contracts are used in production. The Skip contracts do not escrow funds, automatically refunding transactions in the event of workflow disruption.
Contract payload
- Contract repo: GitHub - skip-mev/skip-api-contracts: Contracts for Skip API
- Commit hash:
08e2ff80c86936f03bef001ca3aa5786cf4fd44b
- Compiler Version: cosmwasm/workspace-optimizer-arm64:0.13.0
- Contract checksums:
- skip_swap_entry_point-aarch64.wasm =
599f3ebacaf7a56d6f703c4bd2a7ce2dc27e31f416fc35aa5b1f352c50985bb3
- skip_swap_osmosis_ibc_transfer-aarch64.wasm =
16ab3cbf84617b78bb21b408292d51d5cd68afac680e0b0dd2781e77e29152c0
- skip_swap_osmosis_poolmanager_swap-aarch64.wasm =
b6752f85ec262b6f6b60e0b3c501a167a0b2337efc8aed06692ad02ffe64ebdc
- skip_swap_entry_point-aarch64.wasm =
About Skip
Skip helps developers provide extraordinary user experiences across all stages of the transaction lifecycle, from transaction construction, through cross-chain relaying + tracking, to block construction.
We build two main products:
- Protocol-owned-builder (POB): Developed in partnership with Osmosis as an extension of our collaboration on ProtoRev. POB is a Cosmos SDK module for creating customized mempools that provide MEV recapture + protection, advanced fee markets, oracles, and more.
- Skip API: A unified REST/RPC service and SDK that helps developers create more seamless cross-chain experiences for their end users with IBC. The Skip API is carefully designed to enable developers who are new to IBC to build applications that offer powerful cross chain functionality.
Contact
Twitter: https://twitter.com/skipprotocol
Discord: Skip
Website: https://skip.money/
Target on-chain date
06 July, 2023