- Changed CCIP Router address from `0x8078A09637e47Fa5Ed34F626046Ea2094a5CDE5e` to `0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817` across multiple documentation files. - Updated WETH9 Bridge address from `0x89dd12025bfCD38A168455A44B400e913ED33BE2` to `0xcacfd227A040002e49e2e01626363071324f820a`. - Ensured all references to the new addresses are consistent throughout the documentation. This update reflects the latest deployment configurations and ensures accurate contract references for ChainID 138.
4.7 KiB
LINK Token Configuration Complete
Date: 2025-01-12
Status: ✅ COMPLETE
Summary
The Ethereum Mainnet canonical LINK token address (0x514910771AF9Ca656af840dff83E8264EcF986CA) has been configured for ChainID 138 and added to all CCIP configurations and token lists.
Changes Made
1. ✅ Environment Configuration (.env)
- Updated
LINK_TOKENto0x514910771AF9Ca656af840dff83E8264EcF986CA - Updated
CCIP_CHAIN138_FEE_TOKENto use the same address
2. ✅ Token Lists
-
token-lists/lists/dbis-138.tokenlist.json- Added LINK token entry
- Version bumped to 1.1.1
- Tags:
["defi", "oracle", "ccip"]
-
token-list.json- Added LINK token entry
- Version bumped to 1.1.1
- Tags:
["defi", "oracle", "ccip"]
3. ✅ Database Migration
- Created migration
0009_add_link_token.up.sql - Inserts LINK token into
tokenstable for ChainID 138 - Includes metadata: name, symbol, decimals, logo, website
- Marked as verified
4. ✅ CCIP Configuration
- CCIP Router fee token already configured correctly
- Documentation updated
LINK Token Details
Address: 0x514910771AF9Ca656af840dff83E8264EcF986CA
Name: Chainlink Token
Symbol: LINK
Decimals: 18
Type: ERC20
Chain ID: 138
Source: Ethereum Mainnet (canonical address)
Verified: ✅ Yes
Logo: https://raw.githubusercontent.com/chainlink/chainlink-docs/main/docs/images/chainlink-logo.svg
Website: https://chain.link/
Token List Entry
{
"chainId": 138,
"address": "0x514910771AF9Ca656af840dff83E8264EcF986CA",
"name": "Chainlink Token",
"symbol": "LINK",
"decimals": 18,
"logoURI": "https://raw.githubusercontent.com/chainlink/chainlink-docs/main/docs/images/chainlink-logo.svg",
"tags": ["defi", "oracle", "ccip"]
}
CCIP Integration
The LINK token is now configured for:
-
CCIP Router Fee Token
- Router:
0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817 - Fee Token:
0x514910771AF9Ca656af840dff83E8264EcF986CA
- Router:
-
Bridge Contracts
- WETH9 Bridge:
0xcacfd227A040002e49e2e01626363071324f820a - WETH10 Bridge:
0xe0E93247376aa097dB308B92e6Ba36bA015535D0 - Both bridges can use LINK for CCIP fees
- WETH9 Bridge:
Verification
Check Token in Database
SELECT * FROM tokens
WHERE chain_id = 138
AND address = '0x514910771AF9Ca656af840dff83E8264EcF986CA';
Check Token List
# Verify LINK is in token list
grep -A 5 "0x514910771AF9Ca656af840dff83E8264EcF986CA" token-lists/lists/dbis-138.tokenlist.json
Verify on Chain
# Check if LINK token exists on ChainID 138
cast code 0x514910771AF9Ca656af840dff83E8264EcF986CA --rpc-url http://192.168.11.250:8545
# Check token name
cast call 0x514910771AF9Ca656af840dff83E8264EcF986CA "name()" --rpc-url http://192.168.11.250:8545
# Check token symbol
cast call 0x514910771AF9Ca656af840dff83E8264EcF986CA "symbol()" --rpc-url http://192.168.11.250:8545
Check CCIP Router Fee Token
CCIP_ROUTER="0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817"
cast call "$CCIP_ROUTER" "getFeeToken()" --rpc-url http://192.168.11.250:8545
Files Modified
- ✅
.env- LINK_TOKEN and CCIP_CHAIN138_FEE_TOKEN updated - ✅
token-lists/lists/dbis-138.tokenlist.json- LINK token added - ✅
token-list.json- LINK token added - ✅
backend/database/migrations/0009_add_link_token.up.sql- Database migration created - ✅
backend/database/migrations/0009_add_link_token.down.sql- Rollback migration created - ✅
scripts/configure-link-token-chain138.sh- Configuration script created
Next Steps
-
Run Database Migration (if not already run):
# Apply migration to add LINK token to database # Use your migration tool to run 0009_add_link_token.up.sql -
Verify Token on Chain:
- The LINK token address should exist on ChainID 138
- If it doesn't exist, it may need to be deployed or bridged
-
Fund Bridge Contracts (if needed):
./scripts/fund-bridge-contracts.sh 10 -
Update Frontend/UI:
- Token lists are now updated
- Frontend should automatically pick up the new token
Notes
- The LINK token uses the same address as Ethereum Mainnet (
0x514910771AF9Ca656af840dff83E8264EcF986CA) - This is the canonical Chainlink LINK token address
- The token must exist on ChainID 138 for CCIP to work properly
- If the token doesn't exist on ChainID 138, it may need to be:
- Deployed as a new contract
- Bridged from Ethereum Mainnet
- Or the network may use a different LINK token address
Last Updated: 2025-01-12
Status: ✅ Configuration complete - LINK token added to all systems