@bumi and I are talking about this topic in person in Berlin currently, so we’ll try to keep notes of the steps/requirements that we’re discussing. Could be random, might organize more later.
Mainnet choice
As discussed in multiple weekly calls before, we’d like to try deploying to RSK, as it’s both tied to bitcoin as well as compatible with Solidity contracts (which we’re currently using).
Challenges
- No Aragon registry, no ENS available (Question: can we get rid of the AragonPM dependency somehow?)
- …
Required features
- Kredits withdrawals
- Reimbursement app
- Data migration (without ERC20 tokens)
Ideas
- Use OpenZeppelin upgradable contracts with hardhat plugin
- Upgrades can currently be managed by one admin key - can be changed later to a multisig or voting contract
- permissions can be hardcoded in the contracts - we use only 4-5 different roles/permissions
- contracts can manually be linked together (the contribution contract knows the address to the contributor proxy contract address - those do not need to be changed)
- …