Repository navigation
v0.11.0 — the verifiers come from libid-contracts
The ceremony verifiers now come from libid-contracts. bb no longer runs in this repo, and nothing
is generated here at all.
Changes
- Pins
libid-contracts/libid-identity/libid-profiles0.10.0 → 0.12.0. - Deletes
scripts/vendor-artifacts.sh, thevendor-artifactsCI action andcircuits-manifest.json.
Building this repo needs neither forge nor bb. ceremony.rsis replaced bycircuits.rs: bindings, artifacts,CircuitandInitializercome
from the crate, and this repo only decides where things land.- Libraries deploy through
Libraries::deploy— CREATE2, address derived from the bytecode, so a
re-run and any later circuit find the same pair instead of deploying their own. - Platform Verifiers initialize through
Initializer::call, which checks the contract's own rules
before a transaction is built. plan,--print-addressesand the apply summary list the libraries.
Addresses
The canonical table is unchanged — the factory and proxy artifacts are byte-identical in 0.12.0. Only
the circuit verifiers move, because their names now carry the circuits version:
| contract | was | now |
|---|---|---|
| bearer-link verifier | 0x21c26fde…1879 |
0xab8c8aabbcd921a8bd944ca693cd2426369d702f |
| oidc-google verifier | 0xfe6de589…2ba6 |
0xc1150bc7e095aa56654b5c9f6b4561c1751b8352 |
RelationsLib |
nonce-dependent | 0x306319f854a5596e1e9e2ec59f99f82ea48abeef |
ZKTranscriptLib |
nonce-dependent | 0x7bb464aa25203cc5b199e0fd7a4258580d71d2a1 |
libid-circuits 0.3.0 and 0.4.0 carry the same verification keys, so every artifact is byte-identical
to what was vendored here. Only the verifiers' code hashes change, through the library addresses they
now carry.
Known
An existing deployment is not migrated. A later apply deploys the new pair and rotates the affected
trust roots; the previously deployed verifiers stay on chain, unreferenced.