Open oberstet opened 5 years ago
after reviewing a couple of approaches, I think we should use OwnedUpgradeabilityProxy
by OpenZeppelin. here are a couple of links:
usage works like this:
networkProxy = OwnedUpgradeabilityProxy.new({ from: owner })
networkBehavior = XBRNetwork.new()
networkProxy.upgradeTo(networkBehavior.address, { from: owner })
network = XBRNetwork.at(networkProxy.address)
We should allow to upgrade our contract logic in the field (after deployment to mainnet):