Farming Manager
A Farming Manager is a component that allows an organization (of the root or governance layer) to interact with a Covenant farming contract.
Linked to an organization as a Component, it replaces the Farming Extension.
The Farming Managers supports ERC20s and Items (using the Item Interoperable Interface).
We have two different Farming Manager Components:
Standard Farming Manager
Model-Based Farming Manager
The first acts as a standard Farming Extension, i.e. it allows the organization to interact with the Farming contract in a simple way according to standard operations. In particular, it allows the Organization to:
Send reward tokens from the organization's Treasury Manager to the farming contract
Receive any unissued tokens from the farming contract after it has ended, and send them back to the Treasury Manager
Add and modify farming setups in the farming contract, by calling the
setFarmingSetups
function.
The second one acts as a custom Farming Extension, i.e. it allows you to:
Send reward tokens from the Model-Based Farming Manager to the farming contract
Receive any unissued tokens from the farming contract after it has ended, and provide a flush function to send them back to the Treasury Manager or any other Organization Component
Add and modify farming setups in the farming contract, by calling the
setFarmingSetups
function.Create, at each interval of blocks defined, one or more farming setups by dividing the amount of reward tokens present in the model-based Farming Manager among the setups to be created.
In this way, it is possible to create a more complex governance token distribution logic. For example, by integrating Farming with an Inflation Routine it is possible to:
create a setup of farming.
inflate the token, minting it, with fixed frequency sending the tokens to the Model-Based Farming Manager.
create one or more new Farming setups every time the interval of time defined in the model-based is reached.
This is just an example of how you can use the model-based Farming Manager.
Moreover, each developer can create his own Farming manager different from the Standard Farming Manager and Model-based Farming Manager.
Last updated