# Mainnet and Multi-Chain RPC Tasks — Completed (In-Repo) **Last Updated:** 2026-02-16 **Purpose:** What was completed for tasks that require Mainnet and other RPCs; what to run from a machine with network access. --- ## Completed in-repo 1. **Infura: API key + secret** - `INFURA_PROJECT_ID` and `INFURA_PROJECT_SECRET` set in `smom-dbis-138/.env`; `ETHEREUM_MAINNET_RPC` points to Infura. - Scripts use `scripts/lib/infura.sh` to build Infura RPC URLs (with Basic Auth when secret is set). - Relay uses `INFURA_PROJECT_SECRET` for Mainnet Basic Auth. 2. **Mainnet deploy script** - `smom-dbis-138/scripts/deployment/deploy-all-mainnet.sh` now uses Infura with Basic Auth when `INFURA_PROJECT_SECRET` is set (no longer falls back to public RPC for broadcasts). 3. **RPC verification script** - `smom-dbis-138/scripts/deployment/verify-all-rpcs.sh` tests Mainnet, Chain 138, and all configured Infura/other RPCs. Run from a machine with outbound HTTPS to Infura/public RPCs to confirm connectivity. 4. **Balance and gas check** - `smom-dbis-138/scripts/deployment/check-balances-gas-and-deploy.sh` (no `--deploy`): uses Infura Gas API when `INFURA_PROJECT_ID` is set; reports deployer balance on Chain 138 and other chains. Chain 138 OK; other chains show INSUFFICIENT until deployer is funded with that chain’s native gas token. 5. **Mapper tasks** - `./scripts/run-remaining-mapper-tasks.sh`: config validation passed; Chain 138 on-chain check 46/46 contracts present. - `./scripts/complete-all-mapper-operator.sh`: runs the above and, when `smom-dbis-138/.env` has bridge addresses and `PRIVATE_KEY`, runs `complete-config-ready-chains.sh` to add destinations. --- ## Run from a machine with Mainnet/Infura access From a host that can reach Infura and other RPCs (e.g. your LAN or a server with outbound HTTPS). **Run each command separately** (after the first, you are already in `smom-dbis-138`): ```bash # From repo root: verify all RPCs (Mainnet, 138, Polygon, Base, etc.) cd smom-dbis-138 && bash scripts/deployment/verify-all-rpcs.sh # Balance check (report only; no deploy) — run from repo root, or if already in smom-dbis-138 just: bash scripts/deployment/check-balances-gas-and-deploy.sh # Mapper validation + operator checklist (from repo root) cd /path/to/proxmox && ./scripts/complete-all-mapper-operator.sh ``` --- ## Remaining (require gas and keys on each chain) - **Mainnet:** Fund deployer with ETH; then run `deploy-all-mainnet.sh` or Trustless/CCIP deploy scripts as needed. - **Gnosis (100), Celo (42220), Wemix (1111):** Deploy CCIP WETH9/WETH10 per chain (xDAI/CELO/WEMIX for gas), add destinations, fund bridges with LINK. Runbook: [CONFIG_READY_CHAINS_COMPLETION_RUNBOOK.md](CONFIG_READY_CHAINS_COMPLETION_RUNBOOK.md). - **Other chains (Polygon, BSC, Avalanche, etc.):** Fund deployer with that chain’s native token, then run the relevant deploy script with the chain’s RPC. See [REMAINING_OPERATOR_STEPS.md](REMAINING_OPERATOR_STEPS.md) for the full list.