feat(warp-routes): deployed eth -> celestia -> eden btc warp route#1391
feat(warp-routes): deployed eth -> celestia -> eden btc warp route#1391
Conversation
Check Warp Deploy Summary
Last updated: 2026-02-20 22:10:14 UTC |
Add 6 warp routes (3 tokens x 2 routes each): - SOL/celestia: Solana <-> Celestia - SOL/eden: Celestia <-> Eden - ETH/celestia: Ethereum <-> Celestia - ETH/eden: Celestia <-> Eden - WBTC/celestia: Ethereum (LBTC) <-> Celestia - WBTC/eden: Celestia <-> Eden Configs sourced from: - hyperlane-xyz/hyperlane-registry#1388 - hyperlane-xyz/hyperlane-registry#1389 - hyperlane-xyz/hyperlane-registry#1391 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 📝 WalkthroughWalkthroughThis changeadds configuration and deployment manifests to introduce BTC/LBTC warp routes connecting Ethereum, Celestia, and Eden, plus a changeset that bumps the Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord. 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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
.changeset/healthy-donuts-behave.md (1)
5-5: Changeset description mismatches the route's canonical symbol.The message says "lbtc warp route" but the files live under
BTC/and the Celestia/Eden synthetic tokens both carry symbolBTC. Only the Ethereum collateral is LBTC. The PR title itself says "BTC warp route." Worth keeping these consistent to avoid confusion down the road.✏️ Suggested wording
-Added lbtc warp route for eth<>celestia and celestia<>eden +Added BTC warp route (LBTC collateral on Ethereum) for eth<>celestia and celestia<>eden🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.changeset/healthy-donuts-behave.md at line 5, Update the changeset message to match the route's canonical symbol: replace "lbtc warp route" with "BTC warp route" (or explicitly state "LBTC (Ethereum collateral) ↔ BTC synthetic tokens" if you want to mention the ETH collateral distinction); ensure references to the BTC/ directory and the synthetic token symbol BTC are consistent with the PR title and files rather than using only "lbtc".deployments/warp_routes/BTC/eden-config.yaml (1)
1-1: Missing yaml-language-server schema comment.
celestia-config.yamlhas# yaml-language-server: $schema=../schema.jsonat the top for IDE validation. This file doesn't. Small thing, but keeps the tooling consistent across the route's config files.✏️ Proposed fix
+# yaml-language-server: $schema=../schema.json tokens:🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@deployments/warp_routes/BTC/eden-config.yaml` at line 1, Add the yaml-language-server schema comment as the first line of this YAML so IDE validation works; insert the line "# yaml-language-server: $schema=../schema.json" above the existing "tokens:" key in eden-config.yaml so the schema applies to the file.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@deployments/warp_routes/BTC/celestia-config.yaml`:
- Around line 1-22: The two-token route mixes symbols (celestia token symbol BTC
vs ethereum token symbol LBTC), so decide which side is the canonical symbol and
make the config match: either (A) if the route should reflect the ethereum-side
asset, rename the route/directory and any references to use LBTC as the primary
symbol and update metadata (token.symbol, name, logoURI) accordingly for the
celestia entry; or (B) if both tokens represent the same canonical BTC asset,
change the ethereum token entry’s symbol (token.symbol) and name from LBTC to
BTC and adjust coinGeckoId/logoURI to match; locate the entries by their
chainName fields (celestia and ethereum) and the token symbols BTC and LBTC and
update token.symbol/name/logoURI consistently across the route.
---
Nitpick comments:
In @.changeset/healthy-donuts-behave.md:
- Line 5: Update the changeset message to match the route's canonical symbol:
replace "lbtc warp route" with "BTC warp route" (or explicitly state "LBTC
(Ethereum collateral) ↔ BTC synthetic tokens" if you want to mention the ETH
collateral distinction); ensure references to the BTC/ directory and the
synthetic token symbol BTC are consistent with the PR title and files rather
than using only "lbtc".
In `@deployments/warp_routes/BTC/eden-config.yaml`:
- Line 1: Add the yaml-language-server schema comment as the first line of this
YAML so IDE validation works; insert the line "# yaml-language-server:
$schema=../schema.json" above the existing "tokens:" key in eden-config.yaml so
the schema applies to the file.
| # yaml-language-server: $schema=../schema.json | ||
| tokens: | ||
| - addressOrDenom: "0x726f757465725f6170700000000000000000000000000002000000000000000e" | ||
| chainName: celestia | ||
| connections: | ||
| - token: ethereum|ethereum|0x02D28685e808A962aF327180AD55cEE32Eb94C94 | ||
| decimals: 8 | ||
| logoURI: /deployments/warp_routes/BTC/logo.svg | ||
| name: BTC | ||
| standard: CosmosNativeHypSynthetic | ||
| symbol: BTC | ||
| - addressOrDenom: "0x02D28685e808A962aF327180AD55cEE32Eb94C94" | ||
| chainName: ethereum | ||
| coinGeckoId: lombard-staked-btc | ||
| collateralAddressOrDenom: "0x8236a87084f8B84306f72007F36F2618A5634494" | ||
| connections: | ||
| - token: cosmosnative|celestia|0x726f757465725f6170700000000000000000000000000002000000000000000e | ||
| decimals: 8 | ||
| logoURI: /deployments/warp_routes/BTC/lbtc-logo.svg | ||
| name: Lombard Staked Bitcoin | ||
| standard: EvmHypCollateral | ||
| symbol: LBTC |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Find all warp route config files
echo "=== Warp route config files ==="
find deployments/warp_routes -name "*-config.yaml" -type f | sort
# For context, check how many tokens/chains are in each config
echo -e "\n=== Token count per config file ==="
find deployments/warp_routes -name "*-config.yaml" -type f | while read file; do
count=$(rg -c "chainName:" "$file")
echo "$file: $count chains"
done | sortRepository: hyperlane-xyz/hyperlane-registry
Length of output: 36881
🏁 Script executed:
#!/bin/bash
# Check the naming pattern more specifically - multi-chain routes
echo "=== Checking multi-chain route naming patterns ==="
find deployments/warp_routes -name "*-config.yaml" -type f | while read file; do
chains=$(rg "chainName:" "$file" -o | sed 's/chainName: //' | tr '\n' ' ')
basename_file=$(basename "$file")
dirname_file=$(basename $(dirname "$file"))
echo "Dir: $dirname_file | File: $basename_file | Chains: $chains"
done | head -20Repository: hyperlane-xyz/hyperlane-registry
Length of output: 1770
🏁 Script executed:
#!/bin/bash
# Check the BTC directory specifically for symbol patterns
echo "=== Checking BTC directory structure ==="
find deployments/warp_routes/BTC -type f | head -20
# Also check symbols in BTC configs
echo -e "\n=== Symbols in BTC configs ==="
rg "symbol:" deployments/warp_routes/BTC/ -A 0 -B 1Repository: hyperlane-xyz/hyperlane-registry
Length of output: 1338
🏁 Script executed:
#!/bin/bash
# Get actual chain names from a few multi-chain configs to understand naming
echo "=== Analyzing celestia-ethereum route (TIA) ==="
rg "chainName:" deployments/warp_routes/TIA/celestia-ethereum-config.yaml -o | sed 's/chainName: //'
echo -e "\n=== Analyzing BTC celestia route ==="
rg "chainName:" deployments/warp_routes/BTC/celestia-config.yaml -o | sed 's/chainName: //'
echo -e "\n=== Checking if naming truly represents all chains ==="
echo "TIA/celestia-ethereum has: $(rg 'chainName:' deployments/warp_routes/TIA/celestia-ethereum-config.yaml -c) chains"
echo "BTC/celestia has: $(rg 'chainName:' deployments/warp_routes/BTC/celestia-config.yaml -c) chains"
echo -e "\n=== Checking other 2-chain routes with 1-chain labels ==="
for file in deployments/warp_routes/BEST/ethereum-config.yaml deployments/warp_routes/ETH/eni-config.yaml deployments/warp_routes/FORM/ethereum-form-config.yaml; do
if [ -f "$file" ]; then
chains=$(rg "chainName:" "$file" -o | sed 's/chainName: //' | tr '\n' '/' | sed 's/\/$//')
echo "$file: $chains"
fi
doneRepository: hyperlane-xyz/hyperlane-registry
Length of output: 601
🏁 Script executed:
#!/bin/bash
# Check if there are OTHER symbols in BTC routes (beyond LBTC)
echo "=== All unique symbols in BTC directory configs ==="
rg "symbol:" deployments/warp_routes/BTC/*.yaml | sed 's/.*symbol: //' | sort -uRepository: hyperlane-xyz/hyperlane-registry
Length of output: 136
🏁 Script executed:
#!/bin/bash
# Extract actual chain names from a few configs
echo "=== TIA/celestia-ethereum routes (2 files) ==="
echo "File 1:"
cat deployments/warp_routes/TIA/celestia-ethereum-config.yaml | grep -A 1 "chainName:"
echo -e "\n=== BTC/celestia route ==="
cat deployments/warp_routes/BTC/celestia-config.yaml | grep -A 1 "chainName:"
echo -e "\n=== BEST/ethereum route ==="
head -30 deployments/warp_routes/BEST/ethereum-config.yaml | grep -A 1 "chainName:"
echo -e "\n=== Summary: Checking if single-chain naming matches reality ==="
# For celestia-config.yaml: filename says "celestia" but has 2 chains
echo "BTC/celestia-config.yaml filename says 'celestia' but has:"
rg "chainName:" deployments/warp_routes/BTC/celestia-config.yaml | wc -l
echo "chains in reality"
echo -e "\nETH/eni-config.yaml filename says 'eni' but has:"
rg "chainName:" deployments/warp_routes/ETH/eni-config.yaml | wc -l
echo "chains in reality"Repository: hyperlane-xyz/hyperlane-registry
Length of output: 747
Symbol inconsistency worth noting in route structure.
The BTC directory contains two tokens with different symbols: BTC (on celestia) and LBTC (on ethereum, representing Lombard Staked Bitcoin). While this works technically, the registry has a precedent of keeping directory names aligned with primary token symbols (e.g., the oUSDT refactor). If this route intends to represent a cohesive asset bridge, consider whether the directory should reflect the ethereum-side symbol.
The single-chain label in the filename (celestia-config.yaml despite covering two chains) is common throughout the registry—many similar routes use this pattern—so that's not a structural concern.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@deployments/warp_routes/BTC/celestia-config.yaml` around lines 1 - 22, The
two-token route mixes symbols (celestia token symbol BTC vs ethereum token
symbol LBTC), so decide which side is the canonical symbol and make the config
match: either (A) if the route should reflect the ethereum-side asset, rename
the route/directory and any references to use LBTC as the primary symbol and
update metadata (token.symbol, name, logoURI) accordingly for the celestia
entry; or (B) if both tokens represent the same canonical BTC asset, change the
ethereum token entry’s symbol (token.symbol) and name from LBTC to BTC and
adjust coinGeckoId/logoURI to match; locate the entries by their chainName
fields (celestia and ethereum) and the token symbols BTC and LBTC and update
token.symbol/name/logoURI consistently across the route.
Add 6 warp routes (3 tokens x 2 routes each): - SOL/celestia: Solana <-> Celestia - SOL/eden: Celestia <-> Eden - ETH/celestia: Ethereum <-> Celestia - ETH/eden: Celestia <-> Eden - WBTC/celestia: Ethereum (LBTC) <-> Celestia - WBTC/eden: Celestia <-> Eden Configs sourced from: - hyperlane-xyz/hyperlane-registry#1388 - hyperlane-xyz/hyperlane-registry#1389 - hyperlane-xyz/hyperlane-registry#1391 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add 6 warp routes (3 tokens x 2 routes each): - SOL/celestia: Solana <-> Celestia - SOL/eden: Celestia <-> Eden - ETH/celestia: Ethereum <-> Celestia - ETH/eden: Celestia <-> Eden - WBTC/celestia: Ethereum (LBTC) <-> Celestia - WBTC/eden: Celestia <-> Eden Configs sourced from: - hyperlane-xyz/hyperlane-registry#1388 - hyperlane-xyz/hyperlane-registry#1389 - hyperlane-xyz/hyperlane-registry#1391 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Description
Add warp route deployment configs for btc token
Backward compatibility
Testing
https://explorer.hyperlane.xyz/message/0x9ce18c68beff3e85826556eeae2ffc2fb5745069db5e02aa8362b940aba40209
https://explorer.hyperlane.xyz/message/0x10579b581cb9465dfb70a41c7ab48498e04219b3c7984b6938dff804ebd5b19d
https://explorer.hyperlane.xyz/message/0x59ae8ade6304032eceb2e98bf6957bc4228dcd8c07b729f3f1f704bebf7121ba
https://explorer.hyperlane.xyz/message/0x41b348d541de9c94893f721dd94674cbac83ee261f4b092cf1b16e83d67a8c95
-https://explorer.hyperlane.xyz/message/0xbf4bb358fafef1b8760bbdef44407331bd46ef2bd46e5a6c7d3a7ff1318ec106
Summary by CodeRabbit
New Features
Chores