Before we make pointer contract address stable, we want no pointer upgrade to happen. However if someone registers a contract via gov with a version number lower than the current version and then run a regular pointer deployment, they will upgrade the gov-deployed contract. This PR restricts the version being passed by the gov proposal to be at least as large as the current version. We may remove this restriction once the stable address change is in and upgrades become allowed.
Describe your changes and provide context
Before we make pointer contract address stable, we want no pointer upgrade to happen. However if someone registers a contract via gov with a version number lower than the current version and then run a regular pointer deployment, they will upgrade the gov-deployed contract. This PR restricts the version being passed by the gov proposal to be at least as large as the current version. We may remove this restriction once the stable address change is in and upgrades become allowed.
Testing performed to validate your change
unit test