[FPIIP - 11] Integrate Revest veFPIS liquid wrapper


RobAnon (Revest Finance)

Ekkila (Revest Finance)


Background & Motivation

With the current system of veFPIS, users who have locked up their FPIS cannot sell/lend their positions to others. Fortunately, with Revest Core technology, users can deposit their FPIS and receive a Financial NFT (FNFT) as a record of their deposits. This FNFT shows all the information, such as amount, time lock period, and even their yield at real time. Through this FNFT, users can deposit additional amounts, extend their locking periods, as well as claim their yield. Since veFPIS balance is attached to an FNFT smart wallet address, users can now have an option to sell/lend their positions to others while tokens are locked.

In order to make this happen, a Revest smart contract needs to have the right to add/remove smart wallets connected to the FNFTs whenever the user deposits/withdraws their FPIS in/out of veFPIS contract. Thus, a replacement of veFPIS’s smart wallet checker is required.

A new implementation utilizes a role-based access control system with different levels of authorization: superAdmin and admin. At the top, a super admin role will be designated to Frax’s current multisig address. Super admin has an ability to add/remove admins as well as an admin’s ability. A normal admin will be able to add/remove any wallet addresses.

This new system has won the second prize of FraxBuild Hackathon 2023, and Revest are looking forward to integrating this new system to the current veFPIS.


Change the smart wallet checker of veFPIS system to the new smart wallet checker implementation. Whitelist all the current whitelisted contracts. Add Revest wrapper contract as an admin.

New implementation of smartWalletChecker as well as Revest veFPIS liquid wrapper can be found in the following links:


  • For: Add the new smart wallet checker to veFPIS. Add Revest veFPIS liquid wrapper contract as an admin. Whitelist all the whitelisted contract to the new smart wallet checker.

  • Against: Do nothing


All related testings can be found in the file: https://github.com/Revest-Finance/veFPIS-FNFT/blob/master/hardhat/test/foundry/veFPIS.t.sol

Project Repo: GitHub - Revest-Finance/veFPIS-FNFT

1 Like

This proposal is up for voting here: Snapshot

Hey guys,

I read your Twitter thread. First off, I want to apologize for the situation here as it’s a big misunderstanding and miscommunication on our part (mainly me), and I’m confident we can get something to pass that works for all builders in the Frax ecosystem. Let me give some concrete points that will help explain the situation:

1.) The request for veFXS and veFPIS wrapper lockers in the Frax hackathon was actually my personal request. I wrote that idea in the suggested projects myself. As such, I should have been more active in giving feedback+judging the Frax hackathon.

2.) Your overall idea and proposal for NFT-based lockers is fantastic and I like it, with one big caveat. This specific issue is something I actually agree with Convex on myself. Convex’s team always lets us know what they personally think about a proposal or when they will vote no with their own vlCVX. As you can see from their team’s history of active engagement, they are veryyy active and constructive in the forums to give balanced feedback if they think there is an issue. I wish there was more activity in the original forum post and we both had a chance to give feedback but since votes are automatically moved to formal vote after the min time period (unless extension requested by the original submitter) things just moved forward. Convex’s team obviously doesn’t have enough vlCVX to entirely control everything, but as your twitter thread says, the Convex team themselves have a decent amount of tokens, so it really does sway a lot of votes. So I fully understand the frustration and I personally apologize here, I should have posted on your forum thread before it was automatically moved for a vote to explain my own issues that I wanted to see fixed rather than agreeing with Convex on it. There’s so many governance votes and Frax is so autonomous it’s almost impossible for me to be able to keep up with even half of the stuff myself and thus sometimes I end up just having to give input on the formal vote which is not ideal. I apologize for not talking to you guys or posting earlier.

3.) As the founder of Frax, I designed the veFXS and veFPIS tokenomics, decided to go with the token whitelist and the multipliers, and every unique aspect of the functionality was designed by me for a reason. The idea is that teams (such as Convex, StakeDAO, other lockers etc) would take some kind of ownership of their stash of FXS or FPIS and lock it, then hypothecate it as wrappers or unique designs that they come up with. But the one requirement that I always envisioned is that DAOs would own their locked tokens and issue their own wrapped tokens/stablecoins/NFT tokens that represent/are backed by those tokens.

Here is the main issue: the entire use case of how Revest’s veNFTs work is by de facto removing the whitelist entirely by giving unlimited ability to create any kind of lock, any duration, any amount, any time. Effectively, it removes the limitation of smart contracts requiring gov approval to lock. If we wanted to do that, we’d simply just not use the smartwallet contract from the beginning and do some kind of veNFT similar to Solidly. We specifically want this part of the design in both FXS & FPIS tokens so proposing simply removing it in a roundabout way is not in and of itself interesting. Now, what WOULD be very interesting with the technology you guys have built is if Revest commits to intaking the FXS and FPIS onto its own DAO balance sheet and owns those tokens and hypothecates NFTs/tokens against them. There wouldn’t be abritrary length locks but we would love to work with you guys to give extra whitelists so that there are multiple types of locks, say 1 year, 2 year, 3 year, 4 year (or less if you see fit to have less). But just devising a way to allow anyone to lock veFXS and veFPIS into transferrable, self-ownable assets is not something that would add value to the nascent ecosystem at the current moment. Again, if we thought it would, we’d simply not started off both tokens having the smartwallet checker contract at all. Why would we bother with having it if anyone should be able to lock transferrable NFTs/tokens?

So in conclusion, I apologize for this poor communication and situation. We would be honored and love for you guys to build this technology within the Frax ecosystem if the following is done: Revest should own the FXS+FPIS tokens on its own DAO balance sheet/treasury like Convex, StakeDAO etc, not simply come up with a way to pass through the tokens to everyone else, effectively undoing the mechanism we designed intentionally to foster DAO accumulation of these tokens. You guys can hypothecate the tokens however you want after that fact. To be honest, this viewpoint of DAOs accumulating the tokens is actually good for you and good for Revest’s interests. We want Revest to own the tokens it accumulates in their whitelisted locker contracts. That is the goal, that is the desire. We want you to succeed and own a direct piece of the Frax Protocol, not build a thin layer over the smartwallet contract. Your protocol can have multiple whitelists (let’s tentatively say 4?) if you’d like to offer different duration wrappers to users. Or you can design anything else you want (the point is you can build whatever other than just dismantling the entire system and calling it a feature). We will work with you and be much more communicative and helpful to make sure a follow-on governance post passes the vote (or at least gets all of our own direct, public, and onchain support) and collaborate with Convex to make sure disagreements and community feedback is discussed prior to formal voting. I apologize for this on my own behalf this instance. I’m excited to help push a follow-on vote to whitelist Revest and get that to pass! :slight_smile:


There are a few considerations to take into account before such a big change is put in place. Things such as whitelist bypassing and consolidating nfts and returning to vanilla fpis, etc etc

Things like this should be discussed and thought on a bit longer. I’m always open to discuss, feel free to get in contact