The developer commented on the Distributor contract, stating that although the contract is immutable after deployment, we can still upgrade the implementation contract by deploying a new one and changing the implementation address of the proxy contract. However, there are a few things that make this impossible.
The _implementation
variable in Proxy.sol is declared as immutable
.
Missing an upgrading function.
The _implementation
variable in Proxy.sol is declared as immutable
, preventing the implementation address from being changed after deployment. As a result, the proxy contract cannot be upgraded.
This contract cannot be upgraded because neither Proxy.sol nor Distributor.sol define an upgrading function. Therefore, there is no handle or entry point to upgrade the implementation contract.
The proxy contract cannot be upgraded.
None
Use ERC1967Proxy.sol and UUPSUpgradeable.sol from Openzeppelin.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.