Currently distributor may cause DoS on implementation by removing trusted distribution.
Users MAY solve this by having a proxy or aggregator distributor contract, however it would be more DX and UX convenient if they are able simply re-route this at Installer level:
It should:
- Take:
- List of contracts
- new distributor address
distributionId of new distributor
- Revert if caller is not owner (for ownable implementation)
- Change all
distributorOf for instances to a new distributor
- Revert if new distributor does not support ERC7746 interface
- add new distributor to
whitelistedDistributors
- add
distributionId of new distributor to _permittedDistributions