pub async fn upgrade_light_client_v2(
provider: impl Provider,
contracts: &mut Contracts,
is_mock: bool,
blocks_per_epoch: u64,
epoch_start_block: u64,
) -> Result<TransactionReceipt>Expand description
Upgrade the light client proxy to use LightClientV2. Internally, first detect existence of proxy, then deploy LCV2, then upgrade and initializeV2. Internal to “deploy LCV2”, we deploy PlonkVerifierV2 whose address will be used at LCV2 init time. Assumes:
- the proxy is already deployed.
- the proxy is owned by a regular EOA, not a multisig.
- the proxy is not yet initialized for V2
Returns the receipt of the upgrade transaction.