Proposal #602
Passed on 03 Sept 2023 with 82.2% of the votes for yes.
Yes
82.2%
99.7% without abstain
Veto
0.0%
of votes cast
Ended
03 Sept 2023
82.24%
of votes cast
17.51%
of votes cast
0.25%
of votes cast
0.00%
of votes cast
The purpose of this discussion is because we seek to provide the address osmo1u2sr0p2j75fuezu92nfxg5wm46gu22yw9ezngh the ability to upload CosmWasm contracts to Osmosis without seeking further governance approval for each upload. This address is administered by Composable core contributors.
[Hidden link]
Previously well-known as the XCVM, Composable VM (CVM) is a set of smart contracts that allow orchestration between protocols over IBC. Similar to generalized message passing, CVM can be used to abstract away individual actions from the end user to deliver a more streamlined UX. CVM operates on top of Composable's IBC-based transfer protocol, Centauri.
The end-goal of CVM will be to allow a user to interact with multiple chains and platforms while operating out of a single wallet, from a single chain. In its simplest form, this may be exemplified by a user swapping tokens between DEX's on different chains. That is, a Polkadot user may swap DOT with a token on Osmosis DEX by having their DOT transferred across Centauri to Osmosis, swapped for a given token, and having that token delivered back to their wallet on Polkadot. This creates an experience that abstracts away the complexities of asking a user to perform multiple bridge transfers, in addition to a swap within a separate ecosystem.
By deploying the CVM contract on Osmosis, users would be able to swap any DotSama token with any Cosmos based token with liquidity on Osmosis.
In addition to swap operations, actions such as staking are another strong example of operations CVM could perform for a user. Taking the last example, a user on Polkadot could transfer assets to Osmosis, swap to OSMO, perform a staking operation on Stride to receive stOSMO, and have this stOSMO transferred back to their Polkadot wallet all with only having to sign for one transaction. Once additional features are added to CVM, new contract versions will be uploaded to Osmosis. This proposal authorises uploading any contracts required for Composable VM to function, such as routing, transfers and swaps.
The CVM contract to be deployed on Osmosis is responsible for handling two things:
Since the only responsibility of this contract is to perform swaps, it is stateless and does not require any ownership or pausable functions.
The contract also handles fallback scenarios for IBC transfers in case of packet failure or timeout contract. In this scenario, it will transfer swapped funds to the specified fallback_address.
nix build github:ComposableFi/composable/d4d01f19d8fbe4eafa81f9f2dfd0fd4899998ce6#xc-cw-contracts[Hidden link] [Hidden link] [Hidden link]
Forum Post:[Hidden link]