This discussion thread is meant to evaluate a proposal to
- make an ERTP issuer called DAI_axl out of the cosmos denom below, and
- start a new PSM contract to trade it for IST.
Rational:
Launched in 2018 DAI is the largest decentralized stablecoin, and fourth largest by market cap. All collateral backing DAI is completely transparent and accounted for on the Ethereum blockchain. Dai is collateralized using many different assets, some with counter party risk and many assets with no counter party risk, managed by MakerDAO. Over its history DAI has shown great resilience in the face of market volatility.
Some of the reasons to list DAI in addition to USDC or USDT could be:
- DAI is the 3rd most liquid stablecoin in Axelar bridge with ~$5M. By supporting DAI we could capture a constant liquidity flow and offer a decentralized alternative stablecoin for users
- DAI cannot be frozen, so if Circles/Tether froze Axelar/Gravity bridge deposit contracts on Ethereum, users would not be able to move funds back to mainnet through USDC/USDT, but in the meantime DAI can still be transferred freely
- Even if USDC backing DAI was frozen, underlying collateral within the Maker protocol is still held for the benefit of DAI holders so the odds of losing money is very low.
- DAI has many use cases within the Cosmos ecosystem. DAI is the 2nd most liquid stablecoin in Osmosis pools, making it an ideal option for arbitrage opportunities that could be beneficial for IST users
DAI has a proven track record as a useful medium of exchange and should be included in the PSM.
This is a swingset-core-eval
proposal. If passed,
the enclosed JavaScript code is executed and granted
access to the powers enumerated in the enclosed permit.
The IBC denom is a result of a transfer from axelar-dojo-1
.
We double-checked it as follows:
$ agd query ibc-transfer denom-trace 3914BDEF46F429A26917E4D8D434620EC4817DC6B6E68FB327E190902F1E9242 --node=https://agoric-rpc.polkachu.com:443
denom_trace:
base_denom: dai-wei
path: transfer/channel-9
{ "consume": { "agoricNamesAdmin": true, "bankManager": true, "board": true, "chainStorage": true, "zoe": "zoe", "feeMintAccess": "zoe", "economicCommitteeCreatorFacet": "economicCommittee", "provisionPoolStartResult": true, "psmCharterCreatorFacet": "psmCharter", "provisionPoolStartResult": true, "psmFacets": true, "chainTimerService": "timer" }, "produce": { "testFirstAnchorKit": true }, "installation": { "consume": { "contractGovernor": true, "psm": true, "mintHolder": true } }, "instance": { "consume": { "economicCommittee": true } }, "issuer": { "produce": { "DAI": true }, "consume": { "DAI": true } }, "brand": { "consume": { "DAI": true, "IST": true }, "produce": { "DAI": true } } }
/* global startPSM */ // @ts-nocheck /** * @typedef {{ * denom: string, * keyword?: string, * proposedName?: string, * decimalPlaces?: number * }} AnchorOptions */ /** @type {AnchorOptions} */ const anchorOptions = { keyword: 'DAI_axl', proposedName: 'DAI', decimalPlaces: 18, denom: 'ibc/3914BDEF46F429A26917E4D8D434620EC4817DC6B6E68FB327E190902F1E9242, }; const config = { options: { anchorOptions }, WantMintedFeeBP: 0n, GiveMintedFeeBP: 0n, MINT_LIMIT: 1_000_000000n, }; /** @param {unknown} permittedPowers see gov-add-psm-permit.json */ const main = async permittedPowers => { console.log('starting PSM:', anchorOptions); const { consume: { feeMintAccess: _, ...restC }, ...restP } = permittedPowers; const noMinting = { consume: restC, ...restP }; await Promise.all([ startPSM.makeAnchorAsset(noMinting, { options: { anchorOptions }, }), startPSM.startPSM(permittedPowers, config), ]); console.log('started PSM:', config); }; // "export" from script main;