From dcbcbb57a05c95e3cf589107d9f59fc23a80f22a Mon Sep 17 00:00:00 2001 From: Waren Gonzaga Date: Thu, 23 Apr 2026 13:58:35 +0800 Subject: [PATCH 1/4] Refresh depository contract addresses from live Chains API Regenerates the per-chain depository table in references/protocol/addresses.mdx against the current api.relay.link/chains response: - Adds 13 chains newly supported by the API: monad, stable, hyperliquid, tempo, megaeth, plasma, mythos, doma, gensyn, lighter, ethereal, tron, plus the hyperliquid-vm/tron-vm/lighter-vm VM types. - Removes 12 chains no longer returned by the API: mint, appchain (466), polygon_zkevm, gravity, sanko, hychain, powerloom, arena_z, onchain_points, funki, xai, forma. - Renames 8 chains to match current API slugs: bnb->bsc, manta->manta-pacific, worldchain->world-chain, flow->flow-evm, b3->B3, arbitrum_nova->arbitrum-nova, anime->animechain, zero->zero-network. - Updates bitcoin depository address to 1KT3zCYUrmQxjcveUNs1Rs7WcXDcPQZ4av. - Fixes the generator jq snippet in the leading comment (was referencing .protocol.v2.chainId; now matches the actual column output: .name). - Widens VM Type column to fit hyperliquid-vm (14 chars). Prompted by SafePal (Pylon #4519) flagging that newly supported chains were missing from the docs. The Chains API remains the authoritative source; this refresh brings the static page back in sync. Co-Authored-By: Claude Opus 4.7 (1M context) --- references/protocol/addresses.mdx | 156 +++++++++++++++--------------- 1 file changed, 78 insertions(+), 78 deletions(-) diff --git a/references/protocol/addresses.mdx b/references/protocol/addresses.mdx index d8e89422..89b53d24 100644 --- a/references/protocol/addresses.mdx +++ b/references/protocol/addresses.mdx @@ -24,84 +24,84 @@ The [Allocator](/references/protocol/components/allocator) and [Security Council ## Depository Contracts -{/* Generated using: "curl https://api.relay.link/chains | jq '.chains[] | "|\(.protocol.v2.chainId)|\(.protocol.v2.depository)|\(.vmType)|\(.id)"" */} +{/* Generated using: curl https://api.relay.link/chains | jq -r '.chains[] | "|\(.name)|\(.protocol.v2.depository)|\(.vmType)|\(.id)"' */} [Depository](/references/protocol/components/depository) contracts are deployed on every supported origin chain. -| Chain | Address | VM Type | EVM Chain Id | -| -------------- | -------------------------------------------- | ----------- | ------------ | -| ethereum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1 | -| optimism | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 10 | -| cronos | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 25 | -| bnb | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 56 | -| gnosis | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 100 | -| unichain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 130 | -| polygon | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 137 | -| sonic | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 146 | -| manta | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 169 | -| mint | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 185 | -| boba | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 288 | -| zksync | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 324 | -| shape | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 360 | -| appchain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 466 | -| worldchain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 480 | -| redstone | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 690 | -| flow | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747 | -| hyperevm | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 999 | -| metis | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 1088 | -| polygon_zkevm | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 1101 | -| lisk | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1135 | -| sei | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1329 | -| perennial | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1424 | -| story | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1514 | -| gravity | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1625 | -| soneium | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1868 | -| swellchain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1923 | -| sanko | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1996 | -| ronin | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2020 | -| abstract | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2741 | -| morph | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2818 | -| hychain | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 2911 | -| mantle | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 5000 | -| somnia | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5031 | -| superseed | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5330 | -| cyber | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7560 | -| powerloom | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7869 | -| arena_z | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7897 | -| b3 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8333 | -| base | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8453 | -| onchain_points | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 17071 | -| apechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 33139 | -| funki | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 33979 | -| mode | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 34443 | -| arbitrum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42161 | -| arbitrum_nova | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42170 | -| celo | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42220 | -| hemi | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43111 | -| avalanche | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43114 | -| gunz | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43419 | -| zircuit | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 48900 | -| superposition | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 55244 | -| ink | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 57073 | -| linea | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 59144 | -| bob | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 60808 | -| anime | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 69000 | -| berachain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 80094 | -| blast | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 81457 | -| plume | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 98866 | -| taiko | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 167000 | -| syndicate | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 510003 | -| scroll | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 534352 | -| zero | 0xa88cf7864951147a08707ed732237eaa9b1c3b9b | ethereum-vm | 543210 | -| xai | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 660279 | -| katana | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747474 | -| forma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 984122 | -| zora | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7777777 | -| bitcoin | bc1qdqqsq6y7csd0cr3ye45h9lv8ydh777j2wehgl6 | bitcoin-vm | | -| eclipse | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | -| soon | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | -| corn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 21000000 | -| degen | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 666666666 | -| solana | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | -| ancient8 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 888888888 | -| rari | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1380012617 | +| Chain | Address | VM Type | EVM Chain Id | +| -------------- | -------------------------------------------- | -------------- | ------------ | +| ethereum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1 | +| optimism | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 10 | +| cronos | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 25 | +| bsc | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 56 | +| gnosis | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 100 | +| unichain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 130 | +| polygon | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 137 | +| monad | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 143 | +| sonic | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 146 | +| manta-pacific | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 169 | +| boba | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 288 | +| zksync | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 324 | +| shape | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 360 | +| world-chain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 480 | +| redstone | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 690 | +| flow-evm | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747 | +| stable | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 988 | +| hyperevm | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 999 | +| metis | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 1088 | +| lisk | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1135 | +| sei | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1329 | +| hyperliquid | 0x865eb9baa5492cef598adf7afb1038654fcb7081 | hyperliquid-vm | 1337 | +| perennial | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1424 | +| story | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1514 | +| soneium | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1868 | +| swellchain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1923 | +| ronin | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2020 | +| abstract | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2741 | +| morph | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2818 | +| tempo | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 4217 | +| megaeth | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 4326 | +| mantle | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 5000 | +| somnia | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5031 | +| superseed | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5330 | +| cyber | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7560 | +| B3 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8333 | +| base | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8453 | +| plasma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 9745 | +| apechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 33139 | +| mode | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 34443 | +| mythos | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42018 | +| arbitrum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42161 | +| arbitrum-nova | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42170 | +| celo | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42220 | +| hemi | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43111 | +| avalanche | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43114 | +| gunz | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43419 | +| zircuit | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 48900 | +| superposition | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 55244 | +| ink | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 57073 | +| linea | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 59144 | +| bob | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 60808 | +| animechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 69000 | +| berachain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 80094 | +| blast | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 81457 | +| doma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 97477 | +| plume | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 98866 | +| taiko | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 167000 | +| syndicate | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 510003 | +| scroll | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 534352 | +| zero-network | 0xa88cf7864951147a08707ed732237eaa9b1c3b9b | ethereum-vm | 543210 | +| gensyn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 685689 | +| katana | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747474 | +| lighter | 723071 | lighter-vm | | +| ethereal | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5064014 | +| zora | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7777777 | +| bitcoin | 1KT3zCYUrmQxjcveUNs1Rs7WcXDcPQZ4av | bitcoin-vm | | +| eclipse | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | +| soon | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | +| corn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 21000000 | +| degen | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 666666666 | +| tron | TXtEs6t2oUWQsNos7m68gbHdE9Q5n6x2oN | tron-vm | | +| solana | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | +| ancient8 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 888888888 | +| rari | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1380012617 | From e85cfbb4aaa33b714669d366d1c0221b6933eaf8 Mon Sep 17 00:00:00 2001 From: Waren Gonzaga Date: Thu, 23 Apr 2026 14:11:09 +0800 Subject: [PATCH 2/4] Address Copilot review feedback - Rename "EVM Chain Id" column to "Chain ID" since the column now includes non-EVM chains (bitcoin, solana, tron, etc.) whose values are Relay chain IDs, not EVM chain IDs. - Fill in the Relay chain ID for all non-EVM rows (bitcoin, eclipse, soon, tron, solana, lighter) so the column is consistently populated. - Lowercase the b3 slug to match the convention used for other chain slugs in the table and in references/protocol/depository/addresses.mdx. - Add the trailing pipe to the jq format string in the generator comment so regenerated output matches the table format exactly. Co-Authored-By: Claude Opus 4.7 (1M context) --- references/protocol/addresses.mdx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/references/protocol/addresses.mdx b/references/protocol/addresses.mdx index 89b53d24..98b3008f 100644 --- a/references/protocol/addresses.mdx +++ b/references/protocol/addresses.mdx @@ -24,11 +24,11 @@ The [Allocator](/references/protocol/components/allocator) and [Security Council ## Depository Contracts -{/* Generated using: curl https://api.relay.link/chains | jq -r '.chains[] | "|\(.name)|\(.protocol.v2.depository)|\(.vmType)|\(.id)"' */} +{/* Generated using: curl https://api.relay.link/chains | jq -r '.chains[] | "|\(.name)|\(.protocol.v2.depository)|\(.vmType)|\(.id)|"' */} [Depository](/references/protocol/components/depository) contracts are deployed on every supported origin chain. -| Chain | Address | VM Type | EVM Chain Id | +| Chain | Address | VM Type | Chain ID | | -------------- | -------------------------------------------- | -------------- | ------------ | | ethereum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1 | | optimism | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 10 | @@ -65,7 +65,7 @@ The [Allocator](/references/protocol/components/allocator) and [Security Council | somnia | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5031 | | superseed | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5330 | | cyber | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7560 | -| B3 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8333 | +| b3 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8333 | | base | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8453 | | plasma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 9745 | | apechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 33139 | @@ -93,15 +93,15 @@ The [Allocator](/references/protocol/components/allocator) and [Security Council | zero-network | 0xa88cf7864951147a08707ed732237eaa9b1c3b9b | ethereum-vm | 543210 | | gensyn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 685689 | | katana | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747474 | -| lighter | 723071 | lighter-vm | | +| lighter | 723071 | lighter-vm | 3586256 | | ethereal | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5064014 | | zora | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7777777 | -| bitcoin | 1KT3zCYUrmQxjcveUNs1Rs7WcXDcPQZ4av | bitcoin-vm | | -| eclipse | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | -| soon | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | +| bitcoin | 1KT3zCYUrmQxjcveUNs1Rs7WcXDcPQZ4av | bitcoin-vm | 8253038 | +| eclipse | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 9286185 | +| soon | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 9286186 | | corn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 21000000 | | degen | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 666666666 | -| tron | TXtEs6t2oUWQsNos7m68gbHdE9Q5n6x2oN | tron-vm | | -| solana | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | | +| tron | TXtEs6t2oUWQsNos7m68gbHdE9Q5n6x2oN | tron-vm | 728126428 | +| solana | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 792703809 | | ancient8 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 888888888 | | rari | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1380012617 | From 7e50cb22e662b6360defe0a2dfaa960ac6ac72aa Mon Sep 17 00:00:00 2001 From: Waren Gonzaga Date: Fri, 24 Apr 2026 09:51:05 +0800 Subject: [PATCH 3/4] Render depository table dynamically from Chains API Replace the static depository table in references/protocol/addresses.mdx with a live-fetched table rendered by a new /snippets/Depositories.mdx, mirroring the pattern used by /snippets/Chains.mdx and /snippets/Contracts.mdx. New chains added to api.relay.link/chains will now appear automatically without a docs update. Per Pedro's review feedback on PR #298. Co-Authored-By: Claude Opus 4.7 (1M context) --- references/protocol/addresses.mdx | 84 ++-------------------------- snippets/Depositories.mdx | 93 +++++++++++++++++++++++++++++++ 2 files changed, 97 insertions(+), 80 deletions(-) create mode 100644 snippets/Depositories.mdx diff --git a/references/protocol/addresses.mdx b/references/protocol/addresses.mdx index 98b3008f..c1e11256 100644 --- a/references/protocol/addresses.mdx +++ b/references/protocol/addresses.mdx @@ -4,6 +4,8 @@ description: Contract addresses for the Relay Settlement Protocol sidebarTitle: Addresses --- +import { Depositories } from "/snippets/Depositories.mdx" + ## Relay Chain Core settlement contracts deployed on the [Relay Chain](/references/protocol/components/relay-chain) (Chain ID `537713`). @@ -24,84 +26,6 @@ The [Allocator](/references/protocol/components/allocator) and [Security Council ## Depository Contracts -{/* Generated using: curl https://api.relay.link/chains | jq -r '.chains[] | "|\(.name)|\(.protocol.v2.depository)|\(.vmType)|\(.id)|"' */} - -[Depository](/references/protocol/components/depository) contracts are deployed on every supported origin chain. +[Depository](/references/protocol/components/depository) contracts are deployed on every supported origin chain. The list below is fetched live from the [Chains API](https://api.relay.link/chains) and stays in sync as new chains are added. -| Chain | Address | VM Type | Chain ID | -| -------------- | -------------------------------------------- | -------------- | ------------ | -| ethereum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1 | -| optimism | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 10 | -| cronos | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 25 | -| bsc | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 56 | -| gnosis | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 100 | -| unichain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 130 | -| polygon | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 137 | -| monad | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 143 | -| sonic | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 146 | -| manta-pacific | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 169 | -| boba | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 288 | -| zksync | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 324 | -| shape | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 360 | -| world-chain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 480 | -| redstone | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 690 | -| flow-evm | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747 | -| stable | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 988 | -| hyperevm | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 999 | -| metis | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 1088 | -| lisk | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1135 | -| sei | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1329 | -| hyperliquid | 0x865eb9baa5492cef598adf7afb1038654fcb7081 | hyperliquid-vm | 1337 | -| perennial | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1424 | -| story | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1514 | -| soneium | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1868 | -| swellchain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1923 | -| ronin | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2020 | -| abstract | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2741 | -| morph | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 2818 | -| tempo | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 4217 | -| megaeth | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 4326 | -| mantle | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 5000 | -| somnia | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5031 | -| superseed | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5330 | -| cyber | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7560 | -| b3 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8333 | -| base | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 8453 | -| plasma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 9745 | -| apechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 33139 | -| mode | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 34443 | -| mythos | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42018 | -| arbitrum | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42161 | -| arbitrum-nova | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42170 | -| celo | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 42220 | -| hemi | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43111 | -| avalanche | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43114 | -| gunz | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 43419 | -| zircuit | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 48900 | -| superposition | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 55244 | -| ink | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 57073 | -| linea | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 59144 | -| bob | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 60808 | -| animechain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 69000 | -| berachain | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 80094 | -| blast | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 81457 | -| doma | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 97477 | -| plume | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 98866 | -| taiko | 0x59916da825d2d2ec1bf878d71c88826f6633ecca | ethereum-vm | 167000 | -| syndicate | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 510003 | -| scroll | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 534352 | -| zero-network | 0xa88cf7864951147a08707ed732237eaa9b1c3b9b | ethereum-vm | 543210 | -| gensyn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 685689 | -| katana | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 747474 | -| lighter | 723071 | lighter-vm | 3586256 | -| ethereal | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 5064014 | -| zora | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 7777777 | -| bitcoin | 1KT3zCYUrmQxjcveUNs1Rs7WcXDcPQZ4av | bitcoin-vm | 8253038 | -| eclipse | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 9286185 | -| soon | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 9286186 | -| corn | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 21000000 | -| degen | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 666666666 | -| tron | TXtEs6t2oUWQsNos7m68gbHdE9Q5n6x2oN | tron-vm | 728126428 | -| solana | 99vQwtBwYtrqqD9YSXbdum3KBdxPAVxYTaQ3cfnJSrN2 | solana-vm | 792703809 | -| ancient8 | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 888888888 | -| rari | 0x4cd00e387622c35bddb9b4c962c136462338bc31 | ethereum-vm | 1380012617 | + diff --git a/snippets/Depositories.mdx b/snippets/Depositories.mdx new file mode 100644 index 00000000..c7e667eb --- /dev/null +++ b/snippets/Depositories.mdx @@ -0,0 +1,93 @@ +export const Depositories = ({ env, id }) => { + const key = `depositories-${env}` + + if (typeof window === "undefined") { + return null + } + + if (!window[key]) { + window[key] = { + fetching: false, + data: null + } + } + if (!window[key].fetching) { + const appendDepositories = (data) => { + const rootElement = document.getElementById(id) + if (!rootElement) { + return + } + const rows = data + .slice() + .filter((chain) => chain.protocol && chain.protocol.v2 && chain.protocol.v2.depository) + .sort((a, b) => a.id - b.id) + .map((chain) => { + return ` + ${chain.name} + ${chain.protocol.v2.depository} + ${chain.vmType} + ${chain.id} + ` + }) + rootElement.innerHTML = rows.join("") + const loaderContainer = document.getElementById(`loader-container-${id}`) + if (loaderContainer) { + loaderContainer.style.display = "none" + } + } + + const fetchChains = async () => { + try { + window[key].fetching = true + window[key].data = null + const response = await fetch( + env === "testnets" + ? "https://api.testnets.relay.link/chains" + : "https://api.relay.link/chains" + ) + const data = await response.json() + window[key].fetching = false + window[key].data = data.chains + appendDepositories(data.chains) + } catch (e) { + window[key].fetching = false + window[key].data = false + } + } + const loaderContainer = document.getElementById(`loader-container-${id}`) + if (loaderContainer) { + loaderContainer.style.display = "flex" + } + if (window[key].data) { + setTimeout(() => { + appendDepositories(window[key].data) + }, 1000) + } else { + fetchChains() + } + } + + return ( + + + + + + + + + + +
+
+
+
ChainAddressVM TypeChain ID
+ ) +} From 921e5a89ea82b513e761bd0dd5363d14da6eb4bd Mon Sep 17 00:00:00 2001 From: Waren Gonzaga Date: Fri, 24 Apr 2026 09:52:35 +0800 Subject: [PATCH 4/4] Map raw API vmType codes to human-friendly labels The /chains response returns short codes (evm, bvm, svm, tvm, hypevm, lvm). Mapping them to the ethereum-vm / bitcoin-vm / solana-vm / tron-vm / hyperliquid-vm / lighter-vm labels preserves the phrasing the static table used, so integrators scanning the page see consistent wording. Unknown codes fall through unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) --- snippets/Depositories.mdx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/snippets/Depositories.mdx b/snippets/Depositories.mdx index c7e667eb..725c125e 100644 --- a/snippets/Depositories.mdx +++ b/snippets/Depositories.mdx @@ -1,3 +1,12 @@ +export const VM_TYPE_LABELS = { + evm: "ethereum-vm", + bvm: "bitcoin-vm", + svm: "solana-vm", + tvm: "tron-vm", + hypevm: "hyperliquid-vm", + lvm: "lighter-vm" +} + export const Depositories = ({ env, id }) => { const key = `depositories-${env}` @@ -25,7 +34,7 @@ export const Depositories = ({ env, id }) => { return ` ${chain.name} ${chain.protocol.v2.depository} - ${chain.vmType} + ${VM_TYPE_LABELS[chain.vmType] || chain.vmType} ${chain.id} ` })