{"id":26054983,"url":"https://github.com/morpho-org/morpho-blue-rewards-emissions","last_synced_at":"2025-03-08T10:01:17.079Z","repository":{"id":219975832,"uuid":"722618473","full_name":"morpho-org/morpho-blue-rewards-emissions","owner":"morpho-org","description":null,"archived":false,"fork":false,"pushed_at":"2024-03-02T20:38:09.000Z","size":69,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-03-02T21:35:33.013Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/morpho-org.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-23T14:34:26.000Z","updated_at":"2024-01-05T15:46:44.000Z","dependencies_parsed_at":"2024-02-29T14:40:54.114Z","dependency_job_id":null,"html_url":"https://github.com/morpho-org/morpho-blue-rewards-emissions","commit_stats":null,"previous_names":["morpho-org/morpho-blue-rewards-emissions"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morpho-org%2Fmorpho-blue-rewards-emissions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morpho-org%2Fmorpho-blue-rewards-emissions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morpho-org%2Fmorpho-blue-rewards-emissions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morpho-org%2Fmorpho-blue-rewards-emissions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/morpho-org","download_url":"https://codeload.github.com/morpho-org/morpho-blue-rewards-emissions/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242532348,"owners_count":20144726,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-08T10:00:34.329Z","updated_at":"2025-03-08T10:01:17.052Z","avatar_url":"https://github.com/morpho-org.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"## MarketRewardsProgramRegistry contract\n\n### Overview\n\nThe legacy `EmissionDataProvider` contract provides a streamlined method for tracking emissions of a specific ERC20 token within a rewards program operated on Morpho Blue. It allows users to set emission rates for various rewards tokens in different markets. The `MarketRewardsProgramRegistry` contract is the updated version of the `EmissionDataProvider` contract to handle time-bounded rewards programs.\n\n### Key Features\n\n- **Rate Setting**: Any user can set a rate for a particular rewards token and market. Rates must be linked to a Universal Rewards Distributor (URD) for the distribution of rewards.\n- **Trust Factor**: As rate setting is open to all, it's crucial for users to assess the credibility of the rate setter who is responsible for sending the rewards to the URD upon distribution.\n- **Rewards Structure**: Rates are indicative of potential rewards. The actual distribution is handled by the `UniversalRewardsDistributor` contract during each update cycle, contingent on the trustworthiness of the rewards curator.\n- **Program Structure**: The `MarketRewardsProgramRegistry` contract is designed to handle multiple rewards programs, each with its own start and end times. Once a program is registered, it is immutable and cannot be updated. Projects can set at most 30 programs per `id` with `id = keccak256(abi.encode(sender, urd, rewardToken, market))`.\n\n### Rewards Program Structure\n\n- **Sender**: Address defining the rate. Can be any user.\n- **URD (Universal Rewards Distributor)**: Address for distributing rewards. Can be any URD.\n- **RewardToken**: The ERC20 token address used for rewards.\n- **MarketId**: Identifier of the market in which rewards are being offered.\n- **MarketRewardsProgram**: A structure containing the programs rates for each aspect of a Morpho market (supply, borrow, collateral) as well as the period for which the rates are active.\n\n### Rates\n\nRates are defined per year and only apply to a certain period.\n\n### Specifications\n\n- **Discontinuing a Rate**: Rates cease when the program's `end` is reached.\n- **Validity and Trust**: Rates are effective immediately after a program registration. However, the contract is not trustless. It is a trust-minimized system, relying on the rewards distributor's commitment to distribute the rewards at each update.\n- **Transparency and Scalability**: This contract enhances transparency and scalability in the rewards distribution process, supported by distribution and reader scripts provided by the Morpho Association.\n\n### Deployment\n\n- **EmissionDataProvider address**: Ethereum Mainnet: [0xf27fa85b6748c8a64d4b0d3d6083eb26f18bde8e](https://etherscan.io/address/0xf27fa85b6748c8a64d4b0d3d6083eb26f18bde8e)\n\n### Additional Resources\n\n- [Rewards Distribution Script](#) _(Link to be added)_\n\n### License\n\nMarketRewardsProgramRegistry and EmissionDataProvider are licensed under MIT, see [LICENSE](./LICENSE).\n\n### Note\n\nThe information provided in this document is subject to change. Users should exercise due diligence and understand the inherent risks involved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmorpho-org%2Fmorpho-blue-rewards-emissions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmorpho-org%2Fmorpho-blue-rewards-emissions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmorpho-org%2Fmorpho-blue-rewards-emissions/lists"}