Skip to content

Conversation

@jlehtimaki
Copy link
Contributor

@jlehtimaki jlehtimaki commented Oct 8, 2025

Description

Add Warden Protocol chain

Backward compatibility

Yes

Testing

Yes, everything has been tested.

Summary by CodeRabbit

  • New Features
    • Added Warden Protocol network configuration (chain identifiers, display name, native token, RPC endpoints, block explorers, confirmations, block timing).
    • Added public address mappings for core protocol components (mailbox, routers, ISM factories, hooks, proxy admin, validator announce, test recipient).
  • Chores
    • Bumped registry package version to include Warden Protocol.

@changeset-bot
Copy link

changeset-bot bot commented Oct 8, 2025

🦋 Changeset detected

Latest commit: cb45094

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@hyperlane-xyz/registry Minor

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

Copy link
Collaborator

@paulbalaji paulbalaji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add a minor changeset with yarn changeset add

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 8, 2025

📝 Walkthrough

Walkthrough

Adds Warden Protocol chain configuration: two new YAML files under chains/wardenprotocol containing static address mappings and chain metadata (RPCs, explorers, IDs, token info, deployer and block parameters). Also adds a changeset recording the registry update. No executable code changes.

Changes

Cohort / File(s) Summary
Warden Protocol addresses
chains/wardenprotocol/addresses.yaml
New YAML with 14 key→address mappings (domainRoutingIsmFactory, interchainAccountRouter, interchainGasPaymaster, mailbox, merkleTreeHook, proxyAdmin, staticAggregationHookFactory, staticAggregationIsmFactory, staticMerkleRootMultisigIsmFactory, staticMerkleRootWeightedMultisigIsmFactory, staticMessageIdMultisigIsmFactory, staticMessageIdWeightedMultisigIsmFactory, testRecipient, validatorAnnounce).
Warden Protocol metadata
chains/wardenprotocol/metadata.yaml
New YAML defining chainId/domainId, RPC endpoints, block explorer entries, confirmations/estimateBlockTime/reorgPeriod, native token (decimals/name/symbol), deployer info, protocol (ethereum) and stack metadata.
Changeset
.changeset/pretty-pumas-sort.md
New changeset bump for @hyperlane-xyz/registry with description "Add Warden Protocol".

Sequence Diagram(s)

No sequence diagrams — changes are static configuration additions without control-flow or behavioral modifications.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • paulbalaji
  • Mo-Hussain

Poem

In a swamp of YAML, neat and small,
Warden’s addresses stand up tall.
RPCs whisper, explorers peer,
A tiny change, loud and clear.
Ship it steady — that’s the call.

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title "feat: add Warden Protocol" is spot-on. It's concise, follows conventional commit format, and directly describes what's happening in this changeset. The PR introduces three files for Warden Protocol chain support—addresses, metadata, and a changeset file—and the title captures the main objective cleanly without any fluff or confusion.
Description Check ✅ Passed The PR description covers all required template sections: a clear description stating what's being added, backward compatibility marked as "Yes" (which is appropriate for adding new configuration data), and a testing confirmation. While the testing section could provide more specific details about which Hyperlane tooling was used to validate the new metadata and addresses, the response acknowledges that testing was performed. The description is sufficiently complete and follows the established template structure.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 30de64d and d811f2f.

📒 Files selected for processing (1)
  • chains/wardenprotocol/metadata.yaml (1 hunks)
🔇 Additional comments (1)
chains/wardenprotocol/metadata.yaml (1)

17-17: Verify the gasCurrencyCoinGeckoId reference.

Line 17 references warden-2, which appears to point to an older "Warden" token (WAD), not the Warden Protocol's native WARD token. The CoinGecko API ID for Warden Protocol is "warden-protocol", which would be more appropriate for the chain's native gas currency. Confirm whether warden-2 is intentional or if it should be updated.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (2)
chains/wardenprotocol/metadata.yaml (2)

20-23: Token naming polish

Usually name is human-friendly (“Warden”) and symbol is ticker (“WARD”). If the chain’s native coin is indeed named “WARD”, all good—otherwise consider:

   nativeToken:
     decimals: 18
-    name: WARD
+    name: Warden
     symbol: WARD

25-27: Add a backup RPC for resilience

Consider a second RPC (different provider/host) to avoid single-point outages.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 186efa0 and dbeeb5c.

⛔ Files ignored due to path filters (1)
  • chains/wardenprotocol/logo.svg is excluded by !**/*.svg
📒 Files selected for processing (2)
  • chains/wardenprotocol/addresses.yaml (1 hunks)
  • chains/wardenprotocol/metadata.yaml (1 hunks)
🔇 Additional comments (5)
chains/wardenprotocol/metadata.yaml (4)

8-10: Double-check block params

Confirm 2s block time and 7 confirmations with reorgPeriod 5 reflect actual chain conditions; these feed UX and safety margins in downstream apps.


14-19: Uniqueness verified for chainId/domainId and name
No conflicts found for 8765 or “wardenprotocol”.


2-6: Verify correct Blockscout API endpoint

Neither https://explorer.wardenprotocol.org/api nor https://blocksync.wardenprotocol.org/api returned a valid Blockscout response—please double-check which host actually serves the API (and update apiUrl and family accordingly).


16-16: CoinGecko slug confirmed
All set—‘warden-2’ is the official slug per CoinGecko and Warden Protocol docs.

chains/wardenprotocol/addresses.yaml (1)

1-14: Aye, that rogue backslash before “!=” is trippin’ Python. Remove it so the check reads len(addr) != 42, then rerun the checksum script. Once you’ve got the output, ping me back.

@jlehtimaki jlehtimaki requested a review from paulbalaji October 16, 2025 12:02
@jlehtimaki
Copy link
Contributor Author

@paulbalaji could we get a review, please :)

Copy link
Collaborator

@paulbalaji paulbalaji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

almost there, just needs a yarn lint:fix

@jlehtimaki
Copy link
Contributor Author

@paulbalaji done 🫡

@paulbalaji paulbalaji enabled auto-merge October 23, 2025 12:37
@paulbalaji paulbalaji added this pull request to the merge queue Oct 24, 2025
Merged via the queue into hyperlane-xyz:main with commit 2832953 Oct 24, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants