Closed Anyhowclick closed 4 years ago
We can, but we want this additional abstraction layer as it will help with upgradeability.
In the case where we want to upgrade the storage contract to store more contract types (like the staking contracts for example), then we don't have to re-initialise and do migration.
Shifting to ctor arguments should solve all the issues u mentioned
I think we could create history as mapping (bytes32 => []address) like https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/AccessControl.sol So we don't have to deploy
networkHistory
feeHandlerHistory
kyberDAOHistory
andmatchingEngineHistory