Files
Evi Nova a5797bc2e2 refactor: generate scope upon deployment instead of manual generation and using setScope (#1117)
* refactor: generate scope for SelfVerificationRoot upon deploment

Utilise Poseidon to generate the scope for the deploying contract instead of relying on utilizing the Scope Generator tool on the frontend and calling a function that inherits the _setScope function

* style: use explicit import for PoseidonT3

* fix: link Poseidon library in TestSelfVerificationRoot deployments

* fix: Use same logic in SelfVerificationRoot as in hashEndpointWithScope

* refactor: use hardcoded PoseidonT3 addresses for Celo Mainnet + Sepolia

Also allowed functionality for testing environments which have a fresh deploy each time they are spun up, and which now utilize the testSetScope function for tests relying on TestSelfVerificationRoot

* style: change setTestScope to setGenerateScope for clarity

* refactor: Move logic out of SelfVerificationRoot into util files

* chore: update version

* fix: sepolia chain id

* fmt

---------

Co-authored-by: ayman <aymanshaik1015@gmail.com>
2025-09-26 01:26:27 +05:30
..

how to deploy and update the protocol

Main contracts:

  • Hub
  • Registries
    • Passports
    • ID cards

Hub and Registries are following an upgradeable proxy pattern. Use only the Proxy address for everything.

Secondary contracts:

  • vc_and_disclose verifiers
  • vc_and_disclose_id verifiers
  • register verifiers'
  • register id verifiers
  • dsc verifiers

How to update the protocol:

Deploy the Hub V2 and the Identity registry

yarn deploy:hub:v2
yarn deploy:registry:idcard

Set the registries address in the hub

yarn set:hub:v2

Set the verifiers in the hub

yarn set:verifiers:v2

Update the registries

yarn set:registry:hub:v2
```