📘
XCHandles Docs
  • XCHandles FAQ
  • Techincal Manual
    • Pricing Puzzles
    • State Scheduler
    • XCHandles
      • The Register Action
      • The Refund Action
      • The Extend Action
      • The Expire Action
      • The Oracle Action
      • The Update Action
    • DIG Reward Distributor
      • The Sync Action
      • The New Epoch Action
      • The Add Incentives Action
      • The Commit Incentives Action
      • The Add Mirror Action
      • The Remove Mirror Action
      • The Withdraw Incentives Action
      • The Initiate Payout Action
Powered by GitBook
On this page
  1. Techincal Manual
  2. DIG Reward Distributor

The Commit Incentives Action

"I'll probably incentivize this future round"

PreviousThe Add Incentives ActionNextThe Add Mirror Action

Last updated 3 months ago

Note: The commit incentives action code be found .

Unlike adding incentives, commitments are not necessarily binding. Rewards committed to a future epoch can be clawed back (minus a % fee) until the corresponding epoch starts.

This action can affect slots in two different ways. First, if the reward slot corresponding to the epoch the commitment is made for exists, the action will simply spend the slot and re-create it with higher rewards. Second, if the slot is not initialized, the user will provide the last initialized slot. In that case, the action will initialize all slots between the lastly initialized reward slot and the target one. A newly-initialized slot reward is 0 unless it's the target epoch, in which case the rewards will be set to the commitment amount.

The action also creates a puzzle announcement that be asserted to ensure the dApp singleton is running the right action with the right parameters. For the commit incentives action, the announcement prefix, c, is concatenated to (sha256tree (epoch_time next_epoch_time . total_rewards)) , which is also the value hash of the commitment slot that is created.

Written by from on Feb 16th, 2025.

here
yakuhito
FireAcademy.io