0g-chain/x/incentive/spec
Kevin Davis c5fc1c6b4f
Add hard and incentive spec updates (#817)
* wip: update hard spec

* feat: updated hard spec

* feat: updated incentive spec
2021-02-19 17:14:48 +01:00
..
01_concepts.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
02_state.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
03_messages.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
04_events.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
05_params.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
06_hooks.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
07_begin_block.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00
README.md Add hard and incentive spec updates (#817) 2021-02-19 17:14:48 +01:00

incentive

  1. Concepts
  2. State
  3. Messages
  4. Events
  5. Params
  6. Hooks
  7. BeginBlock

Abstract

x/incentive is an implementation of a Cosmos SDK Module that allows for governance controlled user incentives for users who take certain actions, such as opening a collateralized debt position (CDP). Governance proposes an array of rewards, with each item representing a collateral type that will be eligible for rewards. Each collateral reward specifies the number of coins awarded per second, the length of rewards periods, and the length of claim periods. Governance can alter the collateral rewards using parameter change proposals as well as adding or removing collateral types. All changes to parameters would take place in the next period. User rewards are opt in, ie. users must claim rewards in order to receive them. If users fail to claim rewards before the claim period expiry, they are no longer eligible for rewards.

Dependencies

This module uses hooks to update user rewards. Currently, incentive implements hooks from the cdp, hard, and staking (comsos-sdk) modules. All rewards are paid out from the kavadist module account.