# [Impact Evaluation Service](https://github.com/tnkshuuhei/ies-contracts) IES incentivize people to create impact evaluation reports. Everyone can be a evaluator on IES, and they conduct impact evaluations on specific projects and create attestations on the blockchain. The reports created are approved through the DAOs on-chain governance and the evaluator can qualify for tokens for retroactive funding. Grant operators such as Optimism and Gitcoin can permissionlessly reference the project's impact evaluations through IES. Links: - [Website](https://ies-interface.vercel.app/) - [Deployed Contracts](https://github.com/tnkshuuhei/ies-contracts/blob/main/src/README.md) - [EAS schema](https://sepolia.easscan.org/schema/view/0x2989a5fa235ab527276c3373cabedd103f7fc97d672ce1baa06e2136f8f1d1bb) - [Splits](https://app.splits.org/accounts/0xd492DF1E59a3e14C986E3b5C00F8f2762AbE0BEF/?chainId=11155111) - [Hats tree](https://app.hatsprotocol.xyz/trees/11155111/630) Github repos: - [Smart Contract](https://github.com/tnkshuuhei/ies-contracts): core smartcontract of IES - [Interface](https://github.com/tnkshuuhei/ies-interface): interface of IES ## Problem we solve Many ways to fund public goods and OSS have been invented in the last few years. Examples include [Quadratic Funding](https://www.wtfisqf.com/) and [Retroactive Public Goods Funding](https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c). These have been very successful and have brought great value to previously unfunded projects. The problem, however, is that there is no outcome measurement or evaluation of what value the projects have subsequently brought to the world. In the case of retrospective funding, there are also cases where funding is provided without properly evaluating the results and impact of the project. Outcome measurement is being done by [Open Source Observer](https://www.opensource.observer/) based on-chain and Github activity, and projects such as [Karma GAP](https://gap.karmahq.xyz/) are now able to observe project progress and outputs on a milestone basis. Beyond that, there are still many issues to be addressed regarding evaluation. Originally, project impact evaluations are very human resource and time consuming, and in the world, when involved in [Social Impact Bond(SIB)](https://en.wikipedia.org/wiki/Social_impact_bond), we sometimes outsource project impact evaluations to a group of experts, but these are contracts that exceed several million dollars. If you are going to put this amount of money into an evaluation for funding a public good, you might as well put the money into funding it. However, incentives for evaluators are essential, and IES exists to address this issue. ## Overview ![Screenshot 2024-10-16 at 14.28.14](https://hackmd.io/_uploads/HJ77s1aJJx.png) ## User Stories ### Impact Creators #### Projects - As impact evaluation is being introduced in grant programs like Gitcoin and Optimism, we want to conduct impact evaluations on our own products. - We want to receive funding from more grants. #### Grant Operators - We want to conduct evaluations to improve the quality of grant programs. - We want to attract more funding by evaluating grant programs. ### Evaluators - We want opportunities to earn more funds. - We want projects to receive funding based on appropriate evaluations. ### Voters - We hope that by producing more appropriate reports, more OSS and public goods projects will receive funding. - We want to earn funds by participating in governance. - We want to make protocol decisions. ## Workflow - Project owners register their project through the IES contract. - Projects create impact in the market. - Evaluators identify these facts from the market and evaluate the projects. - Evaluators submit impact evaluation reports to the IES contract and deposit a certain amount of tokens. - The IES contract creates a proposal through the Governor contract. - Voters reference the report and vote through the Governor contract. - If passed: - The deposited tokens are returned. - The Governor contract creates [an Attestation](https://sepolia.easscan.org/attestation/view/0xa73cdc2e1536fa797bbd6bb61256d2fa42c558340ad6b97439db9a63621b8ed9) through the EAS contract. - The IES contract sends Liquid Splits to the evaluator. - If rejected: - The deposited tokens are sent to the Treasury. - liquid splits contract tracks all contributions. To reward all contributors, just send fund to [splits contract](https://app.splits.org/accounts/0xd492DF1E59a3e14C986E3b5C00F8f2762AbE0BEF/?chainId=11155111). - The share of the token directly equals the Allocation of Splits, and this share is updated each time the token is minted. ![image](https://hackmd.io/_uploads/HJEKxWRy1e.png) ## Implementation This product is built on top of the following stacks: [Splits(Liquid Splits)](https://docs.splits.org/templates/liquid) for funds distribution and tracking contributions. [Ethereum Attestation Service](https://attest.org) for attestation [Hats protocol](https://hatsprotocol.xyz) for on-chain role management ### Sequence Diagram ```mermaid sequenceDiagram participant p as Project participant m as Market participant c as IES contract participant g as Governor contract participant e as Evaluator participant v as Voter participant t as Treasury p->>c : register project p->>m : create impact e->>m : capture impact e->>c : create impact report, deposit token c->>g : create proposal, transfer deposited token v->>g : vote for proposal alt proposal has passed g->>e: funds will back g->>c: attest() c->>c: attest reports on-chain(EAS) c->>e: mint liquid splits c->>v: mint liquid splits else voting has not passed g->>t: token will send to treasury end note over p, t: liquid splits contract tracks all contributions.The share of the token directly equals the Allocation of Splits, and this share is updated each time the token is minted. ``` ### Hats Tree The Hats tree allows us to visualize which reports have been created for which projects and who has contributed in what role. ![Screenshot 2024-10-28 at 15.05.41](https://hackmd.io/_uploads/r1gg8p3l1l.png)