Spending Yield
The yield earned by the third-party Stake Pools is spent on climate-positive projects.
The system that controls the spending of yield is called the Yield Controller.
The Yield Controller is responsible for:
- Collecting yield from the stake program
- Splitting it among the various spending destinations (called "targets")
- Triggering the spending processes of these targets.
1. Yield transfer to the yield account
The yield you earn by staking SOL is transferred to the yield account.
It is a Program Derived Address (PDA) meaning that it is owned and controlled by a smart contract (the yield controller), not a private key nor anyone behind Sunrise Stake.
The yield account is specified in the state of the Sunrise program.
The permissionless extract_yield
instruction transfers any accrued yield to this account.
2. Splitting to targets
The Yield Controller protocol includes a program called the Yield Router
.
This program is configured with a number of targets
and proportions
.
Executing the yield router's allocate_yield
instruction sends funds from the yield account
to a number of target input accounts
.
Each input account is a PDA owned by a given target program.
3. Targets
3.1 Toucan Nature Carbon Tonne
Sunrise Stake currently donates your yield by buying and retiring the Toucan Nature Carbon Tonne (NCT) token.
NCT represents a tonne of CO2 or equivalent greenhouse gas removed from the atmosphere in various nature-based projects. It is issued on the Polygon and Celo blockchains.
More on the NCT can be found on Toucan’s blog or GitHub repository.
3.1.1 Buying and Retiring NCT
Sunrise has built the Offset Bridge, a cross-chain protocol that to bridge funds from Solana to Polygon and Celo, and then uses them to buy and retire carbon credits using the Toucan protocol.
Structure of the Offset Bridge
The Offset Bridge is made up of:
- The TokenSwap contract on Solana
- The Holding contract on Polygon/Celo
- The CarbonOffsetSettler contract on Polygon/Celo
The steps are as follows:
- The Yield Controller transfers funds to the Offset Bridge target
- The Offset Bridge Solana program swaps SOL to USDCpo (Wormhole-wrapped Polygon USDC)
- The Offset Bridge Solana program bridges the USDCpo to Polygon and deposits it into a Holding Contract on Polygon
- The Holding Contract is a smart contract that is configured to retire carbon to a particular project on Toucan
- The Holding Contract calls the Toucan CarbonOffsetSettler contract and sends all USDC to it
- The CarbonOffsetSettler contract performs the following steps (atomically) 6a. Buys NCT with the USDC using SushiSwap 6b. Converts the NCT to tCO2 tokens using Toucan contracts 6c. Retires the tCO2 to the project specified in the Holding Contract 6d. Sends the resultant retirement certificate NFT to the Holding Contract
- The Holding Contract then bridges the NFT back through Wormhole, resulting in a retirement certificate NFT on Solana
The Offset Bridge can be used by any Solana users to buy and retire carbon credits and retrieve the resultant retirement certificate NFT.
Sunrise Stake uses a Holding Contract configured to retire to high-impact projects, such as the Mai Ndombe REDD+ lighthouse project.
The target project is managed by Sunrise Stake, and can be changed by the Sunrise team. In future, it is expected that the management of the Holding Contract, and other configuration of the yield controller, will be moved to an independent governance team.
More details for the Offset Bridge can be found at https://github.com/sunrise-stake/offset-bridge.
3.2 ecoToken
A portion of your donated staking rewards is also sent to ecoToken, a Solana-native project that issues a variety of eco-credits.
ecoToken bridges carbon credits from Regen Network, which certifies and issues them.