An Upgrade to the Barnbridge DAO — Part I

Tyler Scott Ward
BarnBridge
Published in
7 min readNov 30, 2022

--

BarnBridge DAO migrates to Arbitrum

Since its inception, BarnBridge has always taken a “DAO First Approach.” The first iteration of the DAO has been live on the mainnet and is currently governed by over 1,000 BOND token holders.

With this in mind, we’re excited to announce our next step in the “DAO First” journey. This week, we will be releasing a refactored & upgraded version of the BarnBridge DAO on Arbitrum in our second swing at DAO First. The creation of this new DAO empowers BOND holders to manage our treasury, make decisions around treasury inflows, and help determine which protocols BarnBridge integrates with. The decision to move to Arbitrum was driven by two primary factors: 1) substantially lower gas fees will reduce barriers to voting on the DAO & 2) the burgeoning ecosystem that’s continuing to grow on Arbitrum.

DAO Infrastructure

The migration from Ethereum mainnet to Arbitrum, paired with the improvements we have made to our governance systems, will expand the ability of our governance system to work at scale. Our new DAO introduces a new approach to empowering user participation, centered around the idea of user generated proposals.

Let’s take a deeper dive into the mechanics of the new DAO, how it’s structured, & how users can start playing a more active role in governance today.

Governance on Arbitrum starts with moving your BOND holdings from mainnet to Arbitrum One. Here’s how you can do it too:

Bridging BOND to Arbitrum

  • Select BOND from the token dropdown and specify the amount you want to bridge over. Make sure that you are bridging to the Arbitrum One network and hit the “Move funds” button to bridge.
  • Approve the transaction and confirm it in your wallet.
  • Wait until the transactions go through and your Arbitrum balance updates. The bridging process usually takes around 15 minutes and you are able to track the progress by checking the progress tracker on the page.

Congrats, you have successfully bridged BOND to Arbitrum 🎉

BOND Staking

To participate in the BarnBridge governance, a user needs xBOND in their wallet, which can be claimed by staking their BOND tokens.

To receive xBOND, you need to stake your BOND in the staking contract. After staking, there is a 2-day waiting period until you are able to vote or create proposals.

To unstake BOND, you will need to deposit your xBOND back into the staking contract. If you haven’t submitted, activated, voted or executed a proposal in the past 7 days you can unstake immediately. If however you have done any of those 4 actions you will not be able to unstake until 7 days have passed since your last action, at that time you can deposit your xBOND back and get your BOND.

Proposal Thresholds

Any user with 1.5% of the xBOND supply in their wallet can create a proposal. There is no limit on the number of proposals a user can submit.

Create proposal: 1.5% of all xBOND or 5k xBOND, at 1m xBOND total supply = 15k xBOND, at 100k xBOND total supply = 5k xBOND

Minimum acceptance: For a proposal to be executed, there needs to be a difference >33% between yes and no votes.

  • Best case scenario takes 33% of all xBOND to execute a vote if there are 100% yes and 0% no
  • Worst case scenario takes 100% of all xBOND to execute a vote if there are 66% yes and 33 % no

Proposal collateral: While creating a proposal, 5000 xBOND or 1.5% of the xBOND supply (whichever is bigger) tokens will be locked and held by the contract for a period of 16 weeks (4 months). After the period ends xBOND can be claimed back. This is an additional security measure to ensure the users who set up the proposal are good actors.

Proposal is formed of:

  • ID
  • Title/Name
  • Description
  • List of targets (addresses)
  • List of actions (what the target is going to be, an amendment to a policy or module)
  • InstallModule
  • UpgradeModule
  • ApprovePolicy
  • TerminatePolicy
  • ChangeExecutor

Proposal state

After being created a proposal enters the warm-up phase where it will stay for a minimum of 2 days and a maximum of 3. After 2 days have passed the proposal creator needs to activate the proposal which will push the proposal into the Voting phase, if the creator does not activate the proposal by the third day the proposal will timeout and move into the Failed phase.

After getting activated, the proposal enters the voting period. Each proposal gets a maximum of 3 days to be voted upon.

2 days after the voting period is over a proposal becomes executable only by the proposal submitter. This is an on-chain action and requires the user to pay the asked gas fees.

Canceling a Proposal

A proposal, once accepted enters the execution phase and can’t be canceled unless the DAO exercises its guardian mechanism. This mechanism has been strategically placed in the contract to protect the best interests of the BarnBridge protocol and the DAO by acting as an emergency cancellation function callable only by the DAO multisig. Thus, protecting against malicious actors and last-minute bugs.

Failed Proposals

There are two ways a proposal can fail. These are as follows:

  1. The proposal gets stale (fails to be active within 3 days of creation).
  2. The proposal is timed out (didn’t reach the minimum acceptance threshold within 3 days of activation).

Voting

  • Users can vote using their xBOND balance
  • The votes can only be pro or against

Acting as the LP

The Barnbridge DAO will continue powering the LP side of the Smart Yield v2 pools, after its migration to Arbitrum (Read more about it here). Similar to the Aave-based pools on mainnet, it will be our current treasury that will provide the initial APY and the junior deposits to all upcoming pools.

To continue powering the LP side, we will need a cost-effective method to acquire more capital in the treasury. A way of doing this is to employ a BONDing mechanism to bring in the capital as stablecoins (DAI at the moment) into our treasury. To achieve this, the DAO will have to sell BOND tokens from the treasury at a discounted price for DAI. These DAI stablecoins then could be deployed on the LP side to further encourage users to deposit on the fixed yield side, as the higher the deposits in the protocol (fixed + LP side), the higher the advertised APY for the users.

When users deposit into the fixed side, the DAO charges a “funding rate” on those deposits. This funding rate is the primary incentive for the DAO to power the LP side and is expected to grow with the users’ deposits.

Bird’s eye view of the working mechanism of Barnbridge v2

Moving Liquidity to Arbitrum

With Arbitrum becoming the new epicenter for all of our DAO activities, deep liquidity for BOND would be needed on this L2 to keep transactions smooth.

To achieve this, we intend to use a fraction or all of the funds from the BOND/USDC UNI V2 pool on the mainnet. This pool has ~$3.6M worth of liquidity sitting inside it which is more than what we currently need on the mainnet. Moreover, we already have a $OHM/BOND pool set up on Balancer with ~$1M in liquidity. This doubled liquidity is not doing us any good and can be better utilized somewhere else.

After a long discussion with the Sushi team and contemplating all possibilities we are inclined towards moving this liquidity from the Mainnet to Arbitrum using xSwap — the cross-chain swap platform by Sushi.

We will need to set up liquidity for BOND/ETH first then we should be able to port this to their cross-chain swap platform as it’s rolled out. This means we would have liquidity for BOND on multiple L1s, L2s, and the mainnet.

Audits

The BarnBridge DAO worked with Halborn to successfully audit the entire system of BarnBridge v2 and the new DAO.

In the coming days, we’ll post further explainer articles elaborating on the BarnBridge DAO as we build out our documentation.

Join us on Discord, follow us on Twitter to get to know our community, and provide your feedback as you use the app.

--

--