In this governance proposal, we propose to execute the Celo Core Contracts Release 13. This release follows the release process.
Changes that are being proposed in this release are described in this Github release. Nethermind has completed an code audit of this release, and the tooling provided ensures the version control references included in the report match the contract deployment described in the proposal content.
This release removes code that is no longer used with Celo as an L2 using the Optimism Stack.
Updated contracts:
New contracts:
N/A
Deprecated contracts: N/A
First, make sure to download latest celo-monorepo with
$ git clone git@github.com:celo-org/celo-monorepo.git --branch release/core-contracts/13
And a version of the cli compatible with this contract release, you can install it with:
$ npm install -g @celo/celocli@6.1.0
Then build the project it with:
$ yarn && yarn build
Once built, cd to the protocol folder with:
$ cd packages/protocol
From there, you can download the current proposal:
$ celocli governance:show --proposalID 242 --jsonTransactions release-13-proposal.json --node https://forno.celo.org
And then verify that the proposal deployment matches the audited release:
yarn release:verify-release -p release-13-proposal.json -b core-contracts.v13 -n mainnet -f -i "releaseData/initializationData/release13.json"
The output should verify that the bytecodes and storages match what is expected, it should look something like this:
Success, no bytecode mismatches found!
Writing linked library addresses to libraries.json
✨ Done in 30.86s.
Celo Core Contracts are critical for the functioning of the Celo Platform. While cLabs have invested significant efforts to expand testing and verification tooling, and a third party audit has been completed, errors in this proposal could lead to situations that are only recoverable with a very difficult hard fork.