DOCS

Reserve Rights (RSR)

Reserve Rights (RSR) is an ERC-20 token common across all Reserve tokens (RTokens). RSR can be staked on a particular RToken, where it has two roles:

  1. Staked RSR receives a portion of the RToken collateral’s revenue in exchange for being the first capital-at-risk in the case of collateral default.
  2. Staked RSR proposes and votes on changes to the RToken’s configuration.


All the relevant information regarding RSR’s supply, audits, etc. can be found through the links below:

Staking

Reserve Rights (RSR) exists as an overcollateralization mechanism to protect RToken holders in the unlikely event of a collateral token default. In order for RSR holders to provide this overcollateralization, they can decide to stake on any one RToken, or divide their RSR tokens by staking on multiple RTokens. RSR holders can also decide not to stake their RSR at all.

In return for providing this overcollateralization, RSR stakers can expect to receive a portion of the revenue from the specific RToken that they stake on. As a general rule, RSR stakers will receive more revenue as the market cap of the RToken they stake on increases.

When RSR is staked on an RToken, it is deposited into a staking contract specific to that RToken, and the staker receives a corresponding ERC-20 token, representing their staked RSR position on that particular RToken. This token is transferrable and fungible with other staked RSR balances for that RToken, so you can send any portion of the staked position to someone else or trade it, and the new holder can un-stake it if they choose to.

Staked RSR can earn rewards, based on three factors:

  1. The amount of revenue the RToken generates
  2. The portion of revenue that governance has directed to RSR stakers
  3. Your portion of the total RSR staked on that RToken


As a simple example, suppose (these numbers are just made up for simplicity, to make the arithmetic clear):

  • A fictional RToken generated $100 in revenue in a period
  • 20% of revenue was designated for RSR stakers
  • 1000 total RSR was staked
  • You had staked 100 of the total 1000 RSR that is staked

In this simple example, you would get $100 20% (100/1000) = $2 for that period.

The protocol stores revenue for a particular RToken in different ERC20s (including RTokens). When staking rewards are distributed, it market-buys RSR via auctions with these ERC20s and deposits it into the staking contract to distribute the rewards to RSR stakers. Thus, as rewards are earned, the exchange rate of staked RSR to RSR increases.

When RSR is staked, it is actually at stake. Staked RSR can be seized by the protocol in the event of a collateral token default, in order to cover losses for RToken holders. It is seized pro-rata if this happens.

Un-staking RSR comes with a delay, which is configurable by governance, and predicted to usually be between about 7 and 30 days. This delay is necessary so that in the event of a default, the staked RSR will remain in the staking contract for long enough to allow the RToken to seize any RSR it needs to cover losses.

During the unstaking delay period, the staker does not earn any rewards. This is necessary to prevent stakers from withdrawing and re-depositing over and over in order to subvert the withdrawal delay mechanism. It is possible for users to cancel unstakings at any time to resume staking and earning rewards.

The easiest way to stake your RSR is to use a user interface that interacts with the Reserve Protocol smart contracts, such as Reserve Register. If you're looking for an easy tutorial on how to stake, please refer to this article.

Slashing

In the event a collateral defaults RSR will be seized to cover the loss. As a result, the StRSR exchange rate to RSR will decrease. In most cases this will not impact balances, but it is important to note that in the case of a 100% slashing event (rare) the balances will be zeroed out in order to allow the staking pool to continue operating under new stakers.

Governance

While each RToken can have its own customized governance system, we expect most RTokens to use our default configuration where the amount of RSR tokens a participant holds serves as the voting weight.

If an RToken’s overcollateralization & governance is both done by RSR token holders, there is the incentive for the RSR governance participants to keep the RToken as safe as possible, rather than taking unnecessary risk with the collateral, as it’s their funds that would be seized first if any of the RToken’s collateral were to default.

The governance process designed by Reserve follows a transparent and democratic approach. It allows holders of RSR to propose, discuss, and vote on changes to the protocol.

It is designed to be community-driven, which means anyone can propose changes to modify or improve an RToken. Once a proposal is submitted, RSR holders vote on it. If the proposal passes and meets the required criteria, the code to update the RToken can be executed (after a pre-defined delay period).

Governor Anastasius is the protocol's recommended governor implementation, which is detailed next.

Governor Anastasius

The Reserve team has deployed a recommended governance system for RTokens (Reserve Governor Anastasius) that will be suggested to RToken deployers by default. This governance system is a slightly modified version of OpenZeppelin Governor.

Governor Anastasius allows RSR holders to participate in the decision-making process of the protocol by proposing, voting on, and executing proposals. It follows a delegation system where RSR holders can delegate their voting power to other addresses. This enables efficient participation in the decision-making process and increases voter turnout.

The governance process is divided into three sub-phases:

  1. Proposal: Proposals can include changes to the protocol's parameters, new feature implementations, or anything else that requires the approval of RSR holders. Proposals can be created by anyone who holds the minimum required amount of tokens.
  2. Vote: A vote is a decision made by a token holder on a proposal. Votes can be cast in favor, against, or abstain. Token holders can also delegate their voting power to another address to vote on their behalf.
  3. Execution: Once a proposal has been approved, it can be executed to perform the intended action.

A timelock component is introduced once a proposal is approved. This adds a configurable delay between the approval of a proposal and its execution, which allows RToken holders to make a decision before something is changed.

The following parameters can be configured for the governance process:

  • Proposal Threshold: The minimum voting weight required to create a proposal.
  • Quorum: The minimum total voting weight required to consider a voting valid.
  • Voting snapshot delay: The time to stake between the proposal is created and the snapshot of voting weights is taken.
  • Voting period: The duration of the voting period for each proposal.
  • Execution delay: The delay before a successful vote is executed. Provides time for RToken holders to make a decision before changes are applied.

By default, the end-to-end process for approving & executing proposals is 8 days:

  • Voting snapshot delay: 2 days
  • Voting period: 3 days
  • Execution delay: 3 days

In addition to the Owner role, each RToken has several additional assignable roles: the Pauser, the Short Freezer, the Long Freezer, and the Guardian—which can be given to any Ethereum addresses by the RToken deployer/owner. Each has the ability to put their RToken’s system into certain states in the case of an attack, exploit, or bug. These states are:

  • Paused: when an RToken’s system is paused, all interactions besides redemption, ERC20 functions, staking of RSR, and rewards payout are disabled.
  • Frozen: when an RToken’s system is frozen, all interactions besides ERC20 functions and staking of RSR are disabled.

For additional information, please refer to the System States + roles section.

Supply

Reserve Rights (RSR) has a fixed total supply of 100 billion tokens, out of which there are currently 50.6b in circulation. The remaining 49.4b tokens belong to the Slow and Slower Wallets.

The Slow Wallet is a locked wallet controlled by the Reserve project team, used to fund RToken adoption initiatives. It has a hard-coded 4-week delay after initiating each withdrawal transaction on the blockchain.

In January 2024, organizational changes were announced to the Reserve Ecosystem. As part of these changes, Confusion Capital is a new entity who will manage funding for the Reserve Ecosystem, including Best Friend Finance, and ABC Labs (who focuses on core protocol development). The Slower Wallet is a wallet that is administered by Confusion Capital (receiving a portion of funds from the Slow Wallet), which imposes additional withdrawal restrictions.

The Slower Wallet maintains the 4-week withdrawal delay and adds a further limitation that no more than 1% of the total supply of RSR can be withdrawn in any 4-week period. The reason for the change is merely to reduce the degree of trust that anyone needs to place in Confusion Capital. Following is an illustrative example of how this works:

  1. No withdrawals are made for a while
  2. Throttle limit (max available): 1,000,000,000 RSR
  3. Withdrawal initiated for 1 billion RSR
  4. Throttle limit: 0 RSR
  5. 2 weeks pass
  6. Throttle limit: 500,000,000 RSR
  7. Withdrawal initiated for 250,000,000 RSR
  8. Throttle limit: 250,000,000 RSR
  9. 1 week passes
  10. Throttle limit: 500,000,000 RSR