Bribe Protocol

💡 Bribe Protocol allows you to loan the voting power of your governance tokens by staking them in a designated pool. Other users bid to take control of that voting power.

The bidding users can use this power to influence protocol direction. 👩‍⚖️

The staking users just get some extra money. 🤑

A number of protocols have attempted to solve/exploit this problem. Bribe operates in the same space as convex, hidden hand, and redacted cartel.

The Challenge

Most DeFi users don’t care about governance. They receive gov tokens as farming rewards, but do not use them to vote, and either let them sit in their wallet or stake them somewhere. As a result, proposals are easily swayed by a small number of voters with a large amount of voting power.

To give a real example, here is a proposal on Aave that got more YAY votes than NAY votes, that nevertheless failed to pass:

This is because a differential of 0.5% is needed and the differential for this proposal was only 0.19%. In other words, you need 50.5% of the votes to win.

In this case, one of the YAY party could have bribed our users to borrow their tokens and easily swung the vote.

The Process

There are two user types:

1. Apathetic Staking User

As an apathetic staking user, I want to stake my governance tokens in order to farm yield.

2. Engaged Bribing User

As an engaged bidding user, I want more tokens in order to influence proposals.

With the two personas established, I created a high-level user flow to work out how the protocol would operate:

I also broke down the main user flow into two detailed flows for each user in order to identify:

  • the pages to design

  • the actions the user would perform:

The Outcome

I created wireframes for every page and every state.

The original plan was to start with integrations for Aave, Sushi and Yearn, and then add more DAOs as we went.

The home page show the projects as vaults, copying the design pattern people are familiar with from other DeFi projects.

The data for each vault card contains:

  • current APR

  • Bribe token rewards to collect (from staking interest)

  • USDC rewards to collect (from bids that have been placed)

  • ‘APR’ for the bid (calculated from ROI, extrapolated over 365 days)

  • Highest bid

  • Estimated reward from bid

The page also featured a quick-access section at the top of the page, taking you to claim your rewards, and showing the latest active proposal:

The proposal page pulled the info from the DAO’s governance page and allowed the user to place a bid. The user could also check the effect of the estimated Bribe by toggling a switch:

High-fidelity UI

Finished light mode and dark mode. We wanted something that looked professional rather than edgy, so we opted for a very open, clear, design with lots of white space. I chose Sofia Pro as the font for its elegance and readability, and we used a mix of bold and light weights to create contrast and personality.

While analysing the user flows for this, I realised how many possible “endpoints” there would be, based on the combination of bid outcome on Bribe vs vote outcome on the project.

Somewhat amusingly, it would be possible to have the top bid, but still fail to secure the vote outcome you wanted. In that case, you’d lose you money, and lose the vote. Oof, sorry Mr Whale.

To add a bit of character, we added some subtle illustrations for each Bribe vote vs Final vote outcome. The talented Gabriela Rojas designed these illustrations, and lent an enormous helping hand with the final UI in general.

Final thoughts

Bribe had a lot of potential outside of pure financial applications. It was envisaged as a way of empowering voters (really), by organising them into powerful coalitions. Internally, we had interesting discussions about futarchy, Voter Extractable Value, and meta-delegation. The project initially caught a bit of attention from Coindesk and various people on crypto Twitter:

After a strong launch, it secured a respectable TVL in the first few months. I think somewhere around $15 million. I wish I took a screenshot.

Sadly, due to forces outside my control, the project eventually died, but I had nothing to do with it at that point.

Such is the pace of DeFi. I was already onto the next project… 🛠

© 2022 Jon Crabb