Upon the passing of Proposition 180, Notional has been diverting resources to develop the Auction Module on the Gravity Bridge. This module will allow users to place bids on the transaction fees collected by the bridge using their GRAV tokens as payment. The purpose of this report is to update all stakeholders on the current progress and work being done on this development.
Command Line Additions
The added functionality will require new flexibility in the Gravity Bridge command line interface (CLI) and we are working to provide this. In particular, we are defining commands that will allow users to quickly query important information around the auctions such as
- auction periods
- highest current bid
- bidder addresses
These queries will become essential for data collection as the auction module evolves and its usage needs to be measured and made transparent to stakeholders.
Protocol Buffers (Protobufs)
Cosmos transactions are created from messages and these messages have to be structured in a highly standardized way to enable 1) security and validity checks to be performed within a chain and 2) the famous interoperability provided by the Inter-blockchain Communication Protocol (IBC). These data structures are referred to as protobufs and our most recent work has to been to define the required protobufs for auction-related messages like bid and auction creation (see this commit, PR 5, and this commit as well as PR 3 for parameter querying). Once this data has been structured properly in the context of messages, it also must be stored so that it can be accessed at any time. In particular, functions are required that allow users to Create, Read, Update, and Delete (CRUD) messages and parameters and we have been implementing these in PR 1.
Module Core Logic
The vast majority of the core logic of this module has already been completed, with only a few more pieces to finish up. Auctions will occur automatically and will repeat at intervals that can be controlled by a block-number parameter. Like many important parameters in Cosmos, the auction frequency can be controlled by governance. The token lock functions for bids are completed and PR 6 adds the rest of the bid function and defines some potential errors that could arise. We also needed to make some logic changes to the BeginBlocker and EndBlocker functions, as can be seen in PR 2.
Finally, we are also in the process of documenting these changes in a methodic way so that this auction module can be easily utilized by other developers and checked by community members looking to understand it better.
The Gravity Bridge is poised to be an important piece in cross-chain interoperability, particularly because of its role in connecting the Cosmos to Ethereum. We are approaching the final stages of development with this module, and will shortly be turning our attention towards rigorous testing of all its components, expecting to be finished within approximately two months time. Notional is honoured that the Gravity Bridge community has entrusted us with a feature that will bring a new and important use case for the GRAV token to life, and we hope reports like this will showcase the dedication with which we are applying ourselves to its development. As always, feel free to reach out with any feedback on this report.