Closed bowd closed 2 months ago
UMA merkle distributor: https://github.com/UMAprotocol/protocol/blob/master/packages/core/contracts/merkle-distributor/implementation/MerkleDistributor.sol
Can specify multiple merkles with unique reward outputs
https://github.com/balancer/erc20-redeemable
solidity 0.6.8;
https://github.com/pie-dao/vested-token-migration-app/blob/master/contracts/VestedTokenMigration.sol
Based on Aragon
Very old
Claude comparison of UMA vs Uniswap:
Still finding any relevant audits
Can you compare and list the functional differences between @MerkleDistributor.sol & @MerkleDistributor.sol
Certainly! I'll compare the two MerkleDistributor contracts and list the functional differences between them. I'll refer to the UMA version as "UMA MerkleDistributor" and the Uniswap version as "Uniswap MerkleDistributor".
1. Multiple Windows vs. Single Distribution:
2. Reward Token:
Claim Structure:
Claim Verification:
Batch Claims:
6. Admin Functions:
7. IPFS Hash:
Remaining Amount Tracking:
9. Error Handling:
Inheritance:
11. Solidity Version:
These differences show that the UMA MerkleDistributor is more feature-rich and flexible, supporting multiple distribution windows and administrative functions. The Uniswap MerkleDistributor, on the other hand, is simpler and more focused on a single distribution event.
Overview
We need a basic ERC20 token distributor based on a merkle-tree. This Uniswap Merkle Distributor is a good candidate but a bit more research can be done to pick the best one. It should fit the same baseline functionality as the Uniswap one.
Acceptance criteria