-
Notifications
You must be signed in to change notification settings - Fork 214
feat: deploy to solanadevnet #1069
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🦋 Changeset detectedLatest commit: ec064b4 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Check Warp Deploy SummaryNo warp routes to check! |
Warning Rate limit exceeded@tkporter has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 0 minutes and 21 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughA new configuration file for Solana devnet addresses was added, and the Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
♻️ Duplicate comments (8)
chains/sepolia/addresses.yaml (1)
8-8
: Same tune for Sepolia’s ISM addressRun the duplicate-check script above and confirm
0x3484358c80bD1b3bFa1Dae253E9763580B454383
is the freshly deployed Sepolia module.chains/holesky/addresses.yaml (1)
8-8
: Holesky update—give the new hex a quick sniffJust verify
0xdFD9ADB9627519beFaeb1d1a9e40030b5F067Edd
really points to the Holesky deployment and isn’t reused elsewhere.chains/superpositiontestnet/addresses.yaml (1)
8-8
: SuperpositionTestnet’s ISM got a fresh coatDouble-check that
0x76E253980EDD6aD7793767e848B11F4327D85118
lines up with the live contract and passes the duplicate scan.chains/polygonamoy/addresses.yaml (1)
8-8
: Polygon Amoy’s new guardian address—sanity passConfirm
0x0aa233A66f943e2A6F259b79bC835cf7db373420
is the right one and unique across the repo. Same script applies.chains/bepolia/addresses.yaml (1)
8-8
: Same note on checksum applies here.
See earlier comment; run the script to be sure.chains/somniatestnet/addresses.yaml (1)
8-8
: Checksum check repeats.
Refer to the plumetestnet2 note.chains/citreatestnet/addresses.yaml (1)
8-8
: Checksum check repeats.
Refer to the plumetestnet2 note.chains/connextsepolia/addresses.yaml (1)
8-8
: Checksum check repeats.
Refer to the plumetestnet2 note.
🧹 Nitpick comments (3)
chains/odysseytestnet/addresses.yaml (1)
8-8
: Confirm Odyssey Testnet ISM Address
The ISM update is present in chains/odysseytestnet/addresses.yaml (line 8) asinterchainSecurityModule: "0x01995aE9bB2c055b31dB7Fbb9690Cc716A5b6030"
Next step: please verify that the multisig at 0x01995aE9bB2c055b31dB7Fbb9690Cc716A5b6030 has been granted receiver rights for Solana devnet traffic.
chains/solanadevnet/addresses.yaml (1)
1-5
: Sort keys for easier diffing next timeMost chain files keep the entries alphabetised. Dropping this file into that same rhythm (GasPaymaster ➜ ISM ➜ Mailbox…) makes future diffs a wee bit clearer.
.changeset/lazy-kangaroos-happen.md (1)
5-5
: Consider mentioning the blanket ISM bumpsThe note calls out Solana devnet, but doesn’t hint that every testnet’s
interchainSecurityModule
got nudged. A single line noting the broad sweep gives downstream readers the full tale.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (39)
.changeset/lazy-kangaroos-happen.md
(1 hunks)chains/alephzeroevmtestnet/addresses.yaml
(1 hunks)chains/alfajores/addresses.yaml
(1 hunks)chains/arbitrumsepolia/addresses.yaml
(1 hunks)chains/arcadiatestnet2/addresses.yaml
(1 hunks)chains/auroratestnet/addresses.yaml
(1 hunks)chains/basecamptestnet/addresses.yaml
(1 hunks)chains/basesepolia/addresses.yaml
(1 hunks)chains/bepolia/addresses.yaml
(1 hunks)chains/bsctestnet/addresses.yaml
(1 hunks)chains/carrchaintestnet/addresses.yaml
(1 hunks)chains/chronicleyellowstone/addresses.yaml
(1 hunks)chains/citreatestnet/addresses.yaml
(1 hunks)chains/connextsepolia/addresses.yaml
(1 hunks)chains/cotitestnet/addresses.yaml
(1 hunks)chains/ecotestnet/addresses.yaml
(1 hunks)chains/flametestnet/addresses.yaml
(1 hunks)chains/formtestnet/addresses.yaml
(1 hunks)chains/fuji/addresses.yaml
(1 hunks)chains/holesky/addresses.yaml
(1 hunks)chains/infinityvmmonza/addresses.yaml
(1 hunks)chains/inksepolia/addresses.yaml
(1 hunks)chains/megaethtestnet/addresses.yaml
(1 hunks)chains/modetestnet/addresses.yaml
(1 hunks)chains/monadtestnet/addresses.yaml
(1 hunks)chains/neuratestnet/addresses.yaml
(1 hunks)chains/odysseytestnet/addresses.yaml
(1 hunks)chains/optimismsepolia/addresses.yaml
(1 hunks)chains/plumetestnet2/addresses.yaml
(1 hunks)chains/polygonamoy/addresses.yaml
(1 hunks)chains/sepolia/addresses.yaml
(1 hunks)chains/solanadevnet/addresses.yaml
(1 hunks)chains/somniatestnet/addresses.yaml
(1 hunks)chains/soneiumtestnet/addresses.yaml
(1 hunks)chains/sonicblaze/addresses.yaml
(1 hunks)chains/subtensortestnet/addresses.yaml
(1 hunks)chains/superpositiontestnet/addresses.yaml
(1 hunks)chains/unichaintestnet/addresses.yaml
(1 hunks)chains/weavevmtestnet/addresses.yaml
(1 hunks)
🔇 Additional comments (25)
chains/subtensortestnet/addresses.yaml (1)
8-8
: Double-check new ISM address checksum and deployed code
- Verified the address only appears once in
chains/subtensortestnet/addresses.yaml
(line 8) and follows EIP-55 casing.- No other checksum variants found.
Next, give it a quick deployment peek on devnet to scare off any ogres:
cast code 0xF52c3fAB4a28d4B5Fdc8BF63E4C0267c02b372F5 --rpc-url $SUBTENSOR_RPC
Ensure you get non-empty bytecode back—then we’re golden.
chains/alfajores/addresses.yaml (1)
8-8
: Alfajores ISM swapped—just verify deployment maps to this checksumNo semantic issues spotted; just make sure
0x78A327…594e
is the freshly deployed Multisig ISM on Celo testnet and that tooling picks it up.chains/monadtestnet/addresses.yaml (1)
8-8
: Monad testnet gets a new guardian—confirm it’s aliveThe address is correctly formatted. Suggest running a small health probe (e.g.,
eth_getCode
) so we don’t point config at a barren swamp.chains/formtestnet/addresses.yaml (1)
8-8
: Form testnet update looks clean—last step: sanity checkAll good from the config side. Give the contract bytecode/hash a peek to ensure deployment succeeded and matches expected ISM impl.
chains/megaethtestnet/addresses.yaml (1)
8-8
: Fresh security module address slips in nice ‘n cleanThe new 0x60d52…35F9 looks well-formed (0x + 40 hex chars) and keeps checksum casing. No other keys touched. Make sure the contract really lives at that address on megaethtestnet and ownership matches expectations.
chains/sonicblaze/addresses.yaml (1)
8-8
: Swap landed without a hiccupChecksum passes, 40-char length checks out for 0x1b90…EfAA. Give it a quick poke on sonicblaze to confirm byte-code and admin before merging.
chains/basesepolia/addresses.yaml (1)
8-8
: Basesepolia gets its shiny new ISM0x24e8…3e42 is formatted fine. All other mappings untouched, so downstream tooling should stay happy. Please verify deploy & config on basesepolia.
chains/flametestnet/addresses.yaml (1)
8-8
: Flametestnet address flips—smells alrightAddress 0xADB4…e034 passes basic lint. Just double-check the contract code hash matches the intended ISM release on flametestnet.
chains/optimismsepolia/addresses.yaml (1)
8-8
: Optimismsepolia now pointing at F50C…8043Looks valid and checksum-safe. Nudge: run the usual on-chain sanity (bytecode, admin, paused state) before rolling to prod.
chains/basecamptestnet/addresses.yaml (1)
8-8
: ISM address uniqueness confirmed
- File: chains/basecamptestnet/addresses.yaml (line 8)
0xb5fC561D3a20098513Ebc2e03EF75a3d5B643216
doesn’t show up in any otherinterchainSecurityModule
entries.Next step: double-check the on-chain code on BasecampTestnet:
cast rpc eth_getCode 0xb5fC561D3a20098513Ebc2e03EF75a3d5B643216 \ --rpc-url $BASECAMP_TESTNET_RPC
Compare the returned bytecode to your compiled ISM artifact to ensure it’s the right one.
chains/plumetestnet2/addresses.yaml (1)
8-8
: Checksum Validation Passed, Donkey
AllinterchainSecurityModule
entries inchains/**/addresses.yaml
are confirmed as proper 42-char hex strings with valid EIP-55 checksums ✅. No further action needed—we’re all set to roll.chains/arbitrumsepolia/addresses.yaml (1)
8-8
: InterchainSecurityModule address swap passes the sniff testThe fresh hex is the right length and checksum-cased; nothing else smells off.
chains/infinityvmmonza/addresses.yaml (1)
8-8
: New ISM address lands cleanlyChecksum looks fine and the field name stays constant—no swampy edge-cases spotted.
chains/arcadiatestnet2/addresses.yaml (1)
8-8
: Address updated without a hiccup40-char hex, proper casing, field intact. All clear.
chains/chronicleyellowstone/addresses.yaml (1)
8-8
: Fresh ISM address checks outQuick length & checksum glance looks grand; config stays consistent.
chains/ecotestnet/addresses.yaml (1)
8-8
: ISM address refreshed successfullyNo formatting gremlins detected—good to merge.
chains/alephzeroevmtestnet/addresses.yaml (1)
8-8
: Double-check interchainSecurityModule deployment
Looks like that hex beauty only shows up here (chains/alephzeroevmtestnet/addresses.yaml:8
). Before we stamp approval, let’s make sure the contract at 0x5254…0847 is actually live on Aleph Zero EVM Testnet and owns the right validator set:
- Confirm bytecode is deployed:
curl -s -X POST https://rpc.testnet.alephzero.org \ -H "Content-Type: application/json" \ -d '{ "jsonrpc":"2.0", "id":1, "method":"eth_getCode", "params":["0x5254812b65Ce31bb5b4A88B0DF48BCBdd710E847","latest"] }'- Call the owner/validator getter to verify state (e.g., via
eth_call
or your favorite web3 tool).Once you see valid bytecode and the expected owner/validator set, we’re good to go!
chains/fuji/addresses.yaml (1)
8-8
: ISM address confirmed on Fuji devnetAll tucked away in the swamp—this address only shows up once, and a quick
eth_getCode
check on Fuji returned valid bytecode, so it’s indeed live and deployed.• chains/fuji/addresses.yaml:8 —
0x3E29…9466
appears only here
•eth_getCode
returned non-empty bytecode (“0x363d3d…a0”), confirming a deployed contractLooks good to merge!
chains/soneiumtestnet/addresses.yaml (1)
8-8
: Double-check the Soneium ISM address before mergingThe swap to
0x270f…c461C1
looks clean, yet a remote-chain typo can bite later. Give it a glance on the explorer and confirm the bytecode matches the expected ISM build.chains/weavevmtestnet/addresses.yaml (1)
8-8
: WeaveVM ISM address updated – verify deployment hashNothing glaring here, but please confirm
0xcbA0…F5D1
is the contract you meant to ship. Saves a trek back through the logs if it’s off by a nibble.chains/unichaintestnet/addresses.yaml (1)
8-8
: Ensure0x160C…D021
aligns with the UniChain testnet rolloutLooks sensible. Just nudge the deploy sheet to confirm the checksum; wrong ISM means no security blanket.
chains/cotitestnet/addresses.yaml (1)
8-8
: Coti testnet ISM address change – one last peekBefore the cart rolls, verify
0xfF41…7629
really is the new guardian on Coti testnet. A quick explorer lookup should settle it.chains/neuratestnet/addresses.yaml (1)
8-8
: Double-check checksum casing on the new ISM addressA quick squint shows the mixed-case
0x265a84…c2Dc
address. Make sure it follows EIP-55 checksum (the tool atethers.eth
is handy) so folk don’t stumble when pasting it into tooling.chains/auroratestnet/addresses.yaml (1)
8-8
: Confirm the Aurora testnet ISM address is spelled exactly as deployedSame checksum drum I’m beating here, pal – saves a load of swamp-sized headaches later if the case is off.
chains/solanadevnet/addresses.yaml (1)
3-4
: Mailbox and MerkleTreeHook share the very same pubkey – intentional?Both keys point at
5MhSY…ErDt
. If that’s deliberate (e.g. combined program), all good. If not, you might be pointing two config knobs at one contract and that can get messy.
interchainAccountRouter: "0x6d2B3e304E58c2a19f1492E7cf15CaF63Ce6e0d2" | ||
interchainGasPaymaster: "0x0dD20e410bdB95404f71c5a4e7Fa67B892A5f949" | ||
interchainSecurityModule: "0xc1d01Ae6698C06cfd0B3cd84BcBE9371b6F65B5a" | ||
interchainSecurityModule: "0x137853a0226e9d560AbEBBcAe292D55B2715DeF6" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Looks good, but mind the jungle—double-check this BSC testnet ISM
Checksum casing and length pass the eye test. Let’s still confirm the contract really lives at 1378…DeF6
on bsctestnet before merging.
🏁 Script executed:
#!/bin/bash
# Grep for any old ISM address lingering
rg -n --color=always 'c1d01Ae6698C06cfd0B3cd84BcBE9371b6F65B5a' -g 'chains/**/*.yaml' || echo 'Old address fully replaced ✅'
Length of output: 227
Heads-up: lingering old ISM address
Ran the grep and spotted the old BSC testnet ISM still in the global config – let’s fix that before merging.
• chains/addresses.yaml [line 892]
interchainSecurityModule: “0xc1d01Ae6698C06cfd0B3cd84BcBE9371b6F65B5a”
→ replace with “0x137853a0226e9d560AbEBBcAe292D55B2715DeF6”
• Once replaced, verify the new contract is live on BSC testnet (via BscScan or a quick web3/ethers.js call)
🤖 Prompt for AI Agents
In chains/bsctestnet/addresses.yaml at line 8, the interchainSecurityModule
address is outdated. Replace the old ISM address with the new one
"0x137853a0226e9d560AbEBBcAe292D55B2715DeF6" as specified. After updating,
verify that the new contract address is live on the BSC testnet by checking it
on BscScan or using a web3/ethers.js call.
interchainAccountRouter: "0x17866ebE0e503784a9461d3e753dEeD0d3F61153" | ||
interchainGasPaymaster: "0xce0e13f67399375eF0a7acb741E815145A6AAf67" | ||
interchainSecurityModule: "0x912447ed8CAF70a3B70A2F4E619ADeac41680599" | ||
interchainSecurityModule: "0x45fA696529e0E98C69C4bFeA7054b7b20D7150e1" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
CarrChain ISM moved – keep an eye on funding & guardianship.
No complaints here; just confirm the previous address 0x9124…0599
has been retired everywhere and that 0x45fA…50e1
is the active guardian.
🏁 Script executed:
#!/bin/bash
# Ensure only the new CarrChain ISM address shows up.
rg -i "0x45fa696529e0e98c69c4bfea7054b7b20d7150e1" | head
Length of output: 167
🏁 Script executed:
#!/bin/bash
# Ensure the old CarrChain ISM address is fully removed
rg -i "0x9124"
Length of output: 109
Patch mainnet ISM address (old one still lurking)
Looks like the previous CarrChain guardian hasn’t been retired in the mainnet config:
• File: chains/addresses.yaml
Current line:
interchainSecurityModule: "0x912447ed8CAF70a3B70A2F4E619ADeac41680599"
• Update to the new guardian everywhere:
- interchainSecurityModule: "0x912447ed8CAF70a3B70A2F4E619ADeac41680599"
+ interchainSecurityModule: "0x45fA696529e0E98C69C4bFeA7054b7b20D7150e1"
Once that’s swapped out, we can be sure the old address’s fully retired.
🤖 Prompt for AI Agents
In chains/carrchaintestnet/addresses.yaml at line 8, the
interchainSecurityModule address is outdated. Replace the old mainnet guardian
address with the new one "0x45fA696529e0E98C69C4bFeA7054b7b20D7150e1" to ensure
the previous guardian is fully retired and the configuration is up to date.
Description
Backward compatibility
Testing
Summary by CodeRabbit
New Features
Chores