mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-12-26 16:25:21 +00:00
7292b8843a
* fix: update params in spec to match implementation * feat: add variable length lockups for incentive rewards * fix typos * update spec * address review comments * feat: improve claim test
23 lines
852 B
Markdown
23 lines
852 B
Markdown
<!--
|
|
order: 3
|
|
-->
|
|
|
|
# Messages
|
|
|
|
Users claim rewards using a `MsgClaimReward`.
|
|
|
|
```go
|
|
// MsgClaimReward message type used to claim rewards
|
|
type MsgClaimReward struct {
|
|
Sender sdk.AccAddress `json:"sender" yaml:"sender"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
MultiplierName string `json:"multiplier_name" yaml:"multiplier_name"`
|
|
}
|
|
```
|
|
|
|
## State Modifications
|
|
|
|
* Accumulated rewards for active claims are transferred from the `kavadist` module account to the users account as vesting coins
|
|
* The number of coins transferred is determined by the multiplier in the message. For example, the multiplier equals 1.0, 100% of the claim's reward value is transferred. If the multiplier equals 0.5, 50% of the claim's reward value is transferred.
|
|
* The corresponding claim object(s) are deleted from the store
|