12345678910111213141516171819202122232425262728293031323334353637 |
- module.exports = async function (taskArgs, hre) {
- let owner = (await ethers.getSigners())[0]
- const router = await ethers.getContract("Router")
- let eventFilter = router.filters.Revert()
- let events = await router.queryFilter(eventFilter)
- let ctr = 0
- for (let e of events) {
- console.log(e.args)
- let chainId = e.args.chainId
- let srcAddress = e.args.srcAddress
- let nonce = e.args.nonce
- // try to get teh retryLookup - if its all 0s its already been cleared!
- let revertLookup = await router.revertLookup(chainId, srcAddress, nonce)
- console.log(`revertLookup[${chainId}][${srcAddress}][nonce:${nonce}]: ${revertLookup}`)
- if (revertLookup === "0x") {
- console.log(`the revertLookup was ${revertLookup}, indicating its already been withdrawn!`)
- continue
- }
- let tx = await (
- await router.revertRedeemLocal(
- chainId,
- srcAddress,
- nonce,
- owner.address,
- { dstGasForCall: 0, dstNativeAmount: 0, dstNativeAddr: "0x" },
- { value: ethers.utils.parseEther("3") } // send native value for the underlying message cost
- )
- ).wait()
- console.log(chainId, srcAddress, nonce, `tx: ${tx.transactionHash}`)
- ctr++
- }
- console.log(`found ${ctr} things to to the B portion of the A-B-A withdraw (0 means there were none)`)
- }
|