Celo Tech Talks Part 17 - Contract Release

Introduction and Background

  • Judy Piper, an engineer at Sea Labs, welcomes the audience to Celo Tech Talks.
  • Celo is a mobile-first blockchain platform focused on building a financial system for everyone.
  • The Tech Talks series aims to share Celo technology knowledge with the community.
  • York Rhodes, a member of the Contracts and Primitives team, introduces himself and his work on smart contracts.

Celo Core Contracts and Decentralized Governance

  • Celo has a set of core contracts that provide fundamental functions for the entire stack.
  • The registry contract allows communication between contracts and other components.
  • Decentralized governance allows the community to decide how the core contracts should evolve.
  • Users participate in governance by voting with the Celo token.
  • The governance contract enables administrative changes to the core contracts.

Smart Contract Upgradability and Development Workflow

  • Smart contract upgradability is a complex issue due to potential security risks.
  • OpenZeppelin’s proxy storage pattern is commonly used to separate storage and logic.
  • Celo aims to allow stakeholders to assess the safety of contract upgrades through decentralized governance.
  • The Contracts and Primitives team follows a development workflow to mitigate risks.
  • A custom continuous integration script ensures backwards compatibility and version control.

Release Process and Tools

  • The Contracts and Primitives team has developed tools for the Celo community to participate in the release process.
  • Four phases: verification of the previous release, backwards compatibility check, deployment of new contracts, and governance proposal.
  • The release tooling automates the deployment of contracts based on the audited release candidate.
  • The governance proposal represents the activation of the core contracts’ deployment.

Future Work: CIP8 and Off-Chain Storage

  • CIP8, presented by Alex Harley, is an off-chain storage specification for Celo applications.
  • It associates on-chain accounts and transactions with authenticated off-chain storage.
  • CIP8 aims to maintain privacy and security while preventing state bloat on the blockchain.

Conclusion

  • Judy concludes the talk and encourages the audience to join the Celo community and participate in the development process.