Generalized merkle drop framework for rewards
- The backend worker that periodically fetches data needed to compute merkle root and then publishes to github
- The generalized frontend to view rewards and set merkle roots. It reads locked rewards from merkle data in github and claimable rewards from the chain.
- The backend worker frequently polls TheGraph for data of hop transfers.
- The backend worker computes the reward amount for each account within a time range.
- The backend worker computes the merkle data for the reward amounts.
- The backend worker stores the merkle data locally for tracking real time rewards.
- The backend worker once a week publishes the merkle data to github.
- The backend worker auto-submits a post to hop forum post about the latest published merkle data.
- The backend worker serves real time locked rewards via an endpoint for frontend.
- The community multisig verifies the latest merkle data using backend docker image.
- The community multisig publishes the lates merkle root onchain using generalized frontend.
- The frontend displays locked rewards (unpublished rewards merkle root) and claimable rewards (published rewards merkle root onchain) for account.