FIP-25: A Case For Directing TRIBE Rewards To G-UNI Pools

Hey everyone! My name is Dave Liebowitz and I lead growth at Gelato. Last week on the FEI snapshot, a vote was conducted on how to distribute TRIBE rewards via the TribalChief contract. It was concluded that more discussion was needed and in this post I want to make the case why Fei should adopt G-UNI for not only the FEI/USDC pool, but a future FEI/TRIBE pool as well.

For those who are not familiar, G-UNI is an easy-to-use, unopinionated framework for Uniswap v3. The contracts have been audited and projects such as Instadapp and Float are already utilizing G-UNI for their own liquidity mining schemes. Fei can benefit from using G-UNI because:

  • Essentially, users can enjoy the same experience they are used to when providing liquidity to Uniswap v2 without the overhead effort that it takes to manage a Uniswap v3 position. The two core components that make up G-UNI are the fees are automatically reinvested and positions that the user interacts with are ERC-20 tokens rather than NFTs The fungibility of positions allows them to be utilized as a money lego in other protocols beyond just liquidity mining. For example, a G-UNI FEI/USDC pair can be used as collateral in a lending pool on Rari.
  • The community can decide how much or how little they want to manage the pool and can decide what ranges they want to incentivize liquidity, under what conditions rebalances occur, what party has control of the G-UNI pool, etc. For example, the community can decide to delegate the “Manager” functionality to a specific smart contract that enables “rebalances” (changing the range of the pool on Uniswap v3) to happen automatically based on any conditions managers deem appropriate. An easy implementation of this would be to rebalance the position around the TWAP.
  • In the future, the community can decide to migrate Uniswap v2 positions to the G-UNI Uniswap v3 pair of FEI/TRIBE. This would simplify the transition of migrating liquidity to v3 as well as bring more capital efficiency to the FEI/TRIBE pair.

The Gelato team will be there to help with the process each step of the way and assist with setting everything up. If the community has any questions or feedback, we would love to hear from you!


Hey @DaveLiebowitz !

Tks for coming here with more details! Gelato is an interesting project! =)

Having more liquidity for Fei in Uniswap v3 is a strategic move for Fei Protocol as it is much more capital efficient. It seems a good start to incentivize G-UNI FEI-USDC.

I have some doubts about the “Manager” functionality. This would be under Fei community responsibility? Gelato has any influence on this “manager” decisions? We would need to code a smart contract for this? Can you provide more info or references of how other projects are doing?

I was looking, for example, through Zerion, the G-UNI DAI-USDC, but it was not clear to me who is the “Manager” and the strategy behind it.


To answer your concerns about the manager, that is completely up to the Fei community. Right now, both Float and Instadapp have the manager controlled by their respective dev teams (either in multi-sig or similar). Currently for the USDC/FEI pool, the Gelato team is at the helm of the manager role but we are ready to transfer control to whatever the Fei community wishes. There are a few options regarding how you all want to manage the liquidity including:

  • The manager role can be burned and you can have the pool completely trustless

  • You can transfer the manager role to a smart contract that automates rebalancing strategies under certain conditions (we can work together for creating the right strategy for a stablecoin pair)

  • The manager role can be a multi-sig where trusted members of the Fei community can make final decisions on how to manage the liquidity

Because FEI/USDC is a stablecoin pair and rebalancing is much less necessary, burning the manager role is a legitimate option but like I said, it is whatever the community decides!


This seems like an interesting way to manage Uni V3 LPs and I would support it. I think that the ‘Manager’ will have to be retained, possibly via multi-sig (see Optimistic Approvals), in case there is a significant de-peg event and someone needs to intervene as an emergency lever. If this can be done automatically to trigger a ‘reweight’, even better.


Tks for clarifying, Dave!

As @arcology pointed, it seems better to have a multisig for a while.

It would be good If we gather some data to define the better range and strategy, I read an interesting analysis from xtokens here.

I would support some Tribe rewards to FEI/USDC pool!


Yes, we can start off simply directing rewards to a FEI/USDC pool and having the manager role as a multi-sig. In fact, fees directed to the manager role could in theory be used to buy TRIBE and distribute it to FEI/USDC LPs (just an idea). As time progresses and data is collected, we can figure out the most optimal strategy for the pool in terms of ranges and managerial control.

1 Like

The DAI/USDC G-UNI pool which is in the process of being ratified, is an example of a pool where the manager functionality will be burned completely and the position made static and immutable. For stable coins with high likelihood of peg stability, this can work. Bit agree that FEI which is more new and volatile might want to keep the Manager in a multi sig at first to have the ability to adjust the chosen range. Float Protocol and Instadapp both have their dev teams as pool “manager.”

1 Like

Thanks for the details, good to know! Yes, it seems the multisig would be good for the first moment.

Hi Dave,

What would you say are the main differences between Gelato and xToken?

Does an implementation of this exist?

I’d support stable pair incentives of FEI with USDC, DAI, or RAI. Depending on the dev lift we can look into other pairs. For example we can use Gelato full range tokens instead of UniV2 to benefit from UniV3 oracles and get listed higher on the UniV3 leaderboard


I generally support a migration to Uniswap V3 as well.

I think it would be useful to compare a G-UNI pool to providing TRIBE directly through the Uniswap v3 staking contract. The latter would be less work for the protocol since it does not need to manage the ranges. On the other hand, it puts the burden of management on users. They have more freedom as market makers, but they would need to decide on a range and reinvest fees themselves.

Of course, even if the protocol uses the V3 staking contract, the G-UNI pools would most likely be able to harvest rewards from the contract just like other LPs. So users can still make use of the pool, but they will have to compete for rewards with LPs using different strategies.


You just spelled out several advantages for using G-UNI:

  • Easier for users to LP. No need to monitor ranges.

  • G-UNI pools can be used in harvest rewards. As mentioned before, both Instadapp and Float are doing this for their liquidity mining programs.

Since FEI/USDC is a stable/stable pair, there is very little monitoring the manager would need to do unless there is an absolute emergency to adjust the pool range.

Great Question countvidel,

Although Gelato and xToken are similar in some respects (both wrap positions into ERC-20 tokens and auto-reinvest fees), Gelato provides much more agencies to tokens because it is framework for Uniswap v3 allowing for customization of strategy and fees while xToken has both set in place. With xToken, the xToken team controls the multi-sig, there is a 0.1% fee every time a position is minted and burned, and xToken collects 2% from fees claimed.

With G-UNI, the community can decide who is the manager of a pool (dev team multi-sig, smart contract, burned altogether, etc.) In addition, there are no fees for minting and burning, a 1% fee from fees claimed, and a transaction fee to recoup the Gelato executor for gas costs on every automated transaction (such as a rebalance). Since FEI/USDC is a stable/stable pair I wouldn’t worry about the last point about rebalancing too much.

1 Like

We have several mock-ups of what such an implementation will look like, @kassandra.eth is the expert in that field.

It’s great to have your support for a stable/stable pair for FEI :slight_smile: and yes for volatile pairs we can definitely start out with having them full-range and work together to adjust them from there.

I support a potential integration with G-UNI pools. It gives us an opportunity to provide liquidity on UniV3 instead of UniV2 which offers an additional layer of liquidity for FEI pairs and helps FEI grow in the UniV3 leaderboard.

Being an easy-to-use and unopinionated framework as pointed out by @DaveLiebowitz, G-UNI is well suited for implementing a UniV3 strategy without much complexity (ie can start out full range if needed).


After much discussion here, there seems to be broad approval from the FEI community to have an incentivized G-UNI pool. Now, the next step from here is to figure out which pair to incentivize to start, which is why I created a poll below.

Straw Poll: Which G-UNI pair would you rather have incentivized?

  • Both
  • None

0 voters

Question - would these liquidity pairs cannibalize demand with our initiatives on Curve?

I don’t think so. Demand isn’t zero-sum and if there are incentives on Curve then I don’t see how G-UNI takes away from that.

Okay everyone! Here are the technical details of the proposal:

FEI liquidity mining on Uniswap V3 stablecoin pairs to strengthen FEI peg by incentivizing FEI/USDC and FEI/DAI G-UNI pools.

G-UNI is a fungible (ERC20) wrapper around an LP Position on a Uniswap V3 trading pair. Add liquidity into the G-UNI Pooled Position and mint G-UNI tokens. Stake the G-UNI to earn the liquidity mining rewards (in TRIBE). In the case of these stablecoin pools the G-UNI position will be a fixed range position that does not change. Fees earned by the position are automatically reinvested into the position by Gelato automation for compounding effects.

The G-UNI Pools are currently managed by the Gelato multisig but will be handing off to FEI’s optimistic approval multisig shortly after.

FEI/USDC specs

  • Fee Tier: 0.05% (see pool here)
  • Position Lower Bound: 1 FEI = 0.9904 USDC (tick = -276420)
  • Position Upper Bound: 1 FEI = 1.0105 USDC (tick = -276220)
  • AP Rewards: 50

FEI/DAI specs

  • Fee Tier: 0.05% (see pool here)
  • Position Lower Bound: 1 FEI = 0.9901 DAI (tick = -100)
  • Position Upper Bound: 1 FEI = 1.0101 DAI (tick = 100)
  • AP Rewards: 50
1 Like

Now that the proposal is fully specified, this proposal is in last call and be snapshotted in 48 hours!

1 Like