Gravity Bridge

Infrastructure

Proposal Details

Proposal #211

Rejected

Proposal title

The Apollo Upgrade

Submit time

Deposit end time

Voting start time

Voting end time

Tally result

95.86%

Proposal #211 description

The Apollo Upgrade

This proposal intends to deploy the Apollo upgrade on Gravity Bridge Chain, which includes the following changes:

  • Add the Auction module
  • Set the Auction module Params according to Proposals #200-#203
  • Send half of all collected Send To Eth ChainFees to the Auction Pool according to Proposal #204
  • Add support for EIP712 transaction signing (a.k.a. MetaMask signing)

Auction Module Differences

Leading up to the Apollo upgrade, the community voted to pass Proposals #200 through #204. These previous proposals affect the Params which will be set during the Apollo migration logic, however they described auction module behavior which is no longer accurate.

The previous descriptions of the Auction module mentioned that the source of funds for all of the auctions will be the Community Pool. To prevent problems like unintended auctions (including the large GRAV balance in the Community Pool), and accidental auction of lost tokens destined for other chains, the Auction Module will instead pull from a new module-controlled account called the Auction Pool.

The Auction module includes a new "Enabled" Param, which when false can halt in-progress auctions until made true again.

The NonAuctionableTokens list still controls which tokens may be put up for auction, but if the Auction Pool account holds a balance of any token on the NonAuctionableTokens list then those balances will be transferred to the Community Pool at the start of the next Auction Period. These transfers to the Community Pool ensure that tokens will not become stuck in the Auction Pool.

Finally, the fees described in Proposal #204 will be instead directed to the Auction Pool and not the Community Pool. This change preserves the intention of Proposal #204, as the collected fees are meant for Auction module use, but avoids safety concerns involved with automatically taking funds from the Community Pool. The name of the Gravity module Param has also changed from

chain_fee_community_pool_fraction
to
chain_fee_auction_pool_fraction
to reflect the change in destination.

Auction Module Behavior

With these differences in behavior, it is important to understand the full updated Auction module behavior:

The Auction module is a CosmosSDK module which regularly takes all of the balances in the Auction Pool (except for those on the non_auctionable_tokens list) and puts them up for auction. Each token held in the Auction Pool will be a separate auction, so if the pool only holds USDC, WBTC, and PAXG then there would be 3 new auctions to bid on. These auction balances are then transferred out of the Auction Pool and into the Auction module account. The auctions are only open for a period of time known as the Auction Period (determined by the auction_length parameter), during which anyone may bid on an auction by submitting a MsgBid. Every bid requires paying at least a minimum fee (determined by the min_bid_fee parameter) and locks the provided amount of GRAV (ugraviton) in the Auction module. At the end of the auction period the highest bidder will be transferred the full balance of the auction tokens, and their bid will either be burned or sent to the Community Pool (depending on the burn_winning_bids parameter). Once an auction period is over, the next one begins with the new Auction Pool balances.

For a more thorough description of the Auction module and how fees feed the Auction Pool, see the official documentation here.

Params Set by the Apollo Migration Logic

The following Gravity Param will be added and set accordingly:

  • chain_fee_auction_pool_fraction
    will be set to "0.5" so that 50% of collected Send To Eth ChainFees are directed to the Auction Pool account, based on Proposal #204

The following Auction Params will be added and set accordingly:

  • enabled
    will be set to true so that the Auction module is immediately active
  • auction_length
    will be set to 85600 in accordance with Proposal #201
  • min_bid_fee
    will be set to 3110 in accordance with Proposal #203
  • non_auctionable_tokens
    will be set to ["ugraviton"] in accordance with Proposal #200
  • burn_winning_bids
    will be set to true in accordance with Proposal #202

EIP712 Transaction Signing

Previously, with the Polaris upgrade, Gravity Bridge added support for Ethereum key transaction signing, enabling users to sign transactions using Ethereum SECP256K1 private keys. The support offered with the Polaris upgrade restricted users to only signing a hash of the transaction, which offers no understanding as to what they are signing. By adding support for EIP712 transaction signing, users are able to sign CosmosSDK transactions using their preferred Ethereum wallet interface and have great visibility about precisely what they are signing. EIP712 makes it much easier to work with wallets like MetaMask to provide a familiar experience for Ethereum users interacting with Cosmos.

Relevant Links

Proposal #200: https://commonwealth.im/gravity-bridge/proposal/200-set-nonauctionable-tokens-to-ugraviton Proposal #201: https://commonwealth.im/gravity-bridge/proposal/201-set-auction-length-parameter-to-85600 Proposal #202: https://commonwealth.im/gravity-bridge/proposal/202-set-burn-winning-bids-parameter-to-true Proposal #203: https://commonwealth.im/gravity-bridge/proposal/203-set-minimum-bid-fee-parameter-to-3110-grav Proposal #204: https://commonwealth.im/gravity-bridge/proposal/204-send-50-of-send-to-eth-fees-to-the-community-pool

EIP-712: https://eips.ethereum.org/EIPS/eip-712

Proposal #211 overview

Total votes
325
Voters
320
Total deposit
100,001 GRAV

Proposal #211 votes

#

Validator

Account Address

Options
1Cypher CoreNo
2TekuNo
3MMSNo
4axcel42-nodeNo
5DjoNo
6RandomBitsNo
7Citadel.oneNo
8corianderNo
9🪐ramuchi.tech🪐No
10Active NodesNo
11PS350No
12Crypto PlantNo
13InterblocNo
14WeyounNo
15Bro_n_BroNo
16A-gamingNo
17Althea_scamNo
18ggwpNo
19✅ CryptoCrew Validators 🏆 Winner #GameOfChainsNo
20AnonstakeNo
21Please REDELEGATENo
22KingSuperNo
23SpectrumNo
24Pro-Nodes75No
25[SHUTTING DOWN] AUDIT.oneNo
26☉ MercuryYes
27MEME-FoundationNo
28GoooodnesNo
29AVIAONE.com 🟢No
30POSTHUMAN ꝏ DVSNo
31Crypto Lion 🦁No
32[Sunsetting, please redelegate] ForboleNo
33Cosmos Cats 🐈No
34Ubik CapitalNo
35OldcatNo
36Ansybl 2 - retiring please redelegateNo
37Cybernodes High YieldAbstain
38StakersNo
390base.vcNo
40Inter Blockchain ServicesNo
41NodiumsNo
42Bloclick | autocompound on restakeNo
43bitsznNo
44CosmoWizNo
45Army IDsNo
46Swiss StakingNo With Veto
47BlockHunters 🎯No
48wombatNo
49Architect NodesNo
50mediumNo
51OtterSyncNo
52blitmoreNo
53linakNo
54goto5kNo
55CosmostationNo
56redelegate_pleaseNo
57MZONDERNo
58KalpaTechNo
591ceNo
60StakeAngleNo
61cyberGNo
62web34everNo
63alkadetaNo
64OneplusNo
65MaxFoton nodesNo
66🔥STAVR🔥 REStake ON✅No
67StingRayNo
68Cros-nestNo
69YurbasonNo
70AlxVoy ⚡ ANODE.TEAMNo
71polkachu.comNo

View: