Skip to content

New incentives contract penalty period implementation #122

Description

@tansawit

The current implementation of the incentives contract has a few improvements that can be made.

One that is arguably easiest to make is, currently, in order to start a new penalty period and distribute the previous period's rewards, a privileged party needs to send a NewPenaltyPeriod msg to the contract. This creates reliance on the party to do so, and to do so at regular/agreed-upon intervals.

An alternative design is to

  • define a PERIOD_DURATION variable, configurable by owner (most likely governance)
  • embed the NewPenaltyPeriod trigger into other interactions with the incentives contract that is executed whenever more than PERIOD_DURATION has passed since the last period

This way, new penalty periods will be triggered automatically by the community, without having to rely on a single party.

And although the added execution might increase the transaction cost for the user slightly, this cost should be amortized between users given a long enough timespan

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions