Operator · deployment
Deploy PULL contracts
Real deployments signed by your wallet, one transaction per step, on Ethereum and Robinhood Chain. Addresses come directly from receipts and the plan resumes where you left off.
Deploy PullRelayMessenger on Robinhood ChainRobinhood Chain
localEid 56 · admin = your wallet
Reused: 0x58f09266de95b20de1ff06e9b47412a878208c56
Completed
Deploy PullBridge on Robinhood ChainRobinhood Chain
messenger = destination messenger · remoteEid 1
Reused: 0x0f73790ee8e322083fcadb76e18218e8dddd832a
Completed
messenger.setBridge(bridge)Robinhood Chain
The destination messenger only accepts sends from the destination bridge.
Receipt confirmed on chain
Completed
messenger.grantRole(RELAYER_ROLE, wallet)Robinhood Chain
Lets this wallet deliver messages from the Bridge page or scripts/relayer.mjs.
Role active
Completed
Deploy PullToken pUSDCRobinhood Chain
"PULL USDC" · verified on Robinhood Chain
Deployed and active
Completed
pUSDC.grantRole(BRIDGE_ROLE, bridge)Robinhood Chain
Only the bridge may mint or burn.
Role active on Robinhood Chain
Completed
bridge.setRoute(pUSDC → USDC, Token)Robinhood Chain
Registers the unwrap route on Robinhood Chain.
Unwrap route registered
Completed
Deploy PullRelayMessenger on EthereumEthereum
localEid 1 · admin = your wallet
Reused: 0xecC3bb68bCF41cA868e4B755e5b2DA369c231472
Completed
Deploy PullBridge on EthereumEthereum
messenger = source messenger · remoteEid 4663
Reused: 0xEaab9Ad8abBDcc19fb144CB764CCd0B7Cc226988
Completed
messenger.setBridge(bridge)Ethereum
The source messenger only accepts sends from the source bridge.
Receipt confirmed
Completed
Deploy PullVault · USDCEthereum
Single-asset custody for canonical USDC.
Deployed on Ethereum
Completed
PullVault.grantRole(BRIDGE_ROLE, bridge)Ethereum
Only the bridge may deposit and withdraw.
Role active on Ethereum
Completed
bridge.setRoute(USDC → pUSDC, Vault)Ethereum
Registers the wrap route on the source chain.
Wrap route registered
Completed