chore: deploy MulticallHandler and SpokePoolPeriphery to Robinhood#1477
chore: deploy MulticallHandler and SpokePoolPeriphery to Robinhood#1477melisaguevara wants to merge 2 commits into
Conversation
Deploys MulticallHandler at 0xa8aD2e87E2043711d8BeC77e8BC3E2683C0ab6BD on Robinhood (chain 4663) via the Arachnid CREATE2 deployer. Address does not match the canonical 0x0F7Ae28d... because the contract bytecode has been recompiled since the original deploys, consistent with the chain-specific addresses on Monad, Lens, zkSync, Hyperliquid, and Tempo. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Deploys SpokePoolPeriphery at 0xe05E3798Ce2ae9afCb637fb53BF5a51253BBe2af on Robinhood (chain 4663) via the Arachnid CREATE2 deployer. Internally deploys SwapProxy at 0x6489982210e7964256a0C8b46cCd04D4Ad5D33aD. Also adds the L2_ADDRESS_MAP[ROBINHOOD] entry in src/consts.ts so getPermit2(4663) resolves correctly for future scripts. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
| | SpokePool | [0xD29C85F15DF544bA632C9E25829fd29d767d7978](https://explorer.testnet.chain.robinhood.com/address/0xD29C85F15DF544bA632C9E25829fd29d767d7978) | | ||
| | Contract Name | Address | | ||
| | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| | MulticallHandler | [0xa8aD2e87E2043711d8BeC77e8BC3E2683C0ab6BD](https://explorer.testnet.chain.robinhood.com/address/0xa8aD2e87E2043711d8BeC77e8BC3E2683C0ab6BD) | |
There was a problem hiding this comment.
Is this a testnet or mainnet deployment as the explorer here says testnet?
There was a problem hiding this comment.
these contracts are not showing up in the testnet explorer and I couldn't find it in https://robinhoodchain.blockscout.com/ either
| | Safe | [0xd396CcB6770EAB84045c9Bce2939c478639E2A7F](https://explorer.testnet.chain.robinhood.com/address/0xd396CcB6770EAB84045c9Bce2939c478639E2A7F) | | ||
| | SP1Helios | [0x9b4A302A548c7e313c2b74C461db7b84d3074A84](https://explorer.testnet.chain.robinhood.com/address/0x9b4A302A548c7e313c2b74C461db7b84d3074A84) | | ||
| | SpokePool | [0xD29C85F15DF544bA632C9E25829fd29d767d7978](https://explorer.testnet.chain.robinhood.com/address/0xD29C85F15DF544bA632C9E25829fd29d767d7978) | | ||
| | SpokePoolPeriphery | [0xe05E3798Ce2ae9afCb637fb53BF5a51253BBe2af](https://explorer.testnet.chain.robinhood.com/address/0xe05E3798Ce2ae9afCb637fb53BF5a51253BBe2af) | |
There was a problem hiding this comment.
since we changed the folder structure in the repo, SpokePoolPeriphery CREATE2 addresses are different now 😞
@grasphoper I think we should set bytecode_hash = "none" for all contracts so that addresses don't drift with metadata changes, wdyt?
| @@ -0,0 +1,55 @@ | |||
| { | |||
There was a problem hiding this comment.
I was able to deploy the SpokePoolPeriphery to Robinhood to the same address (https://robinhoodchain.blockscout.com/address/0x10D8b8DaA26d307489803e10477De69C0492B610) (by deploying it from the old branch)
here is the run-latest.json for the deployment txn
Summary
Adds two contract deploys to Robinhood (chain 4663) via the Arachnid CREATE2 deployer.
0xa8aD2e87E2043711d8BeC77e8BC3E2683C0ab6BD0x6ed347…048030xe05E3798Ce2ae9afCb637fb53BF5a51253BBe2af0x3d3493…e3cbeSpokePoolPeriphery internally deploys SwapProxy at
0x6489982210e7964256a0C8b46cCd04D4Ad5D33aD(via CREATE during construction).Also adds
L2_ADDRESS_MAP[ROBINHOOD]to src/consts.ts with the canonical Permit2 (0x000000000022D473030F116dDEE9F6B43aC78BA3, verified on-chain to be Permit2 with the chain-id immutable correctly set to 4663) and the SP1Helios address, then regeneratesgenerated/constants.json. This makesgetPermit2(4663)andgetL2Address(4663, "helios")resolve for future scripts.Notes
The deployed addresses do not match the canonical addresses used on most chains (MulticallHandler
0x0F7Ae28d…, SpokePoolPeriphery0x10D8b8Da…). The contract bytecode has been recompiled since the original deploys, so the Arachnid CREATE2 deployer produces different addresses. Same pattern as the chain-specific entries on Monad, Lens, zkSync, Hyperliquid, and Tempo.Test plan
## Robinhood (4663)in broadcast/deployed-addresses.mdgetDeployedAddress("MulticallHandler", 4663)andgetDeployedAddress("SpokePoolPeriphery", 4663)resolve viaDeployedAddresses.solgetPermit2(4663)returns canonical Permit2 from the regenerated constants.json🤖 Generated with Claude Code