⚠️ The content has been moved to kleros/cross-chain-realitio-proxy
- Get the Reality.eth contract address and deployment block number from the Reality monorepo.
- Add the new chain configuration to hardhat.config.
- Make sure to add the correct tag (home or foreign) and the correct companion network for the home and foreign networks (so that both networks have a companion network referring to the other). The deployment scripts rely on them.
- In
package.json
, add the extra convenience scripts:metaevidence:xxx
,deploy:xxx
- Build the bridging logic in the proxies if needed.
- E.g. for an OP L2 it is not needed, the logic is the same for all OP L2s and is already implemented.
- Test, review etc
- Add the Reality.eth contract and deployment block number to the script files here and here.
yarn build
- Upload the file
dynamic-script/dist/realitio-dynamic-script-vx.x.x.js
to IPFS. - Upload the folder
evidence-display/evidence-display-vx.x.x
to IPFS.
- In this script, update the CIDs with the latest dynamic and evidence scripts uploaded to IPFS in the above steps.
- Run
yarn metaevidence:xxx
for the new chain - Upload the resulting metaevidence-xxx.json to IPFS
- Configuration:
- In the home and foreign proxy deployment script, add a configuration object to
params
. - The home script needs the Reality contract address.
- The foreign script needs the desired courtId and number of jurors (arbitratorExtraData), the L1 bridge address (messenger) and the metaEvidence IPFS URI (from earlier step).
- In the home and foreign proxy deployment script, add a configuration object to
- Deploy and verify with
yarn deploy:xxx
. - Update the contracts README by running
./scripts/populateReadme.sh
, expand the script if needed. - Make sure to commit to
deployments
folder to git.
- Add support for the new chain (because the dynamic/evidence scripts need a RPC provided by the court).
- Whitelist the newly deployed arbitrable.