Files
proxmox/docs/06-besu/T1_2_CREATE2_DEPLOYMENT_READY.md
defiQUG fbda1b4beb
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
docs: Ledger Live integration, contract deploy learnings, NEXT_STEPS updates
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands
- CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround
- CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check
- NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere
- MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates
- LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 15:46:57 -08:00

2.1 KiB

CREATE2 Deployment to Canonical LINK Address - Ready

Last Updated: 2026-01-31
Document Version: 1.0
Status: Active Documentation


Date: 2026-01-18
Status: DEPLOYMENT SCRIPT READY


Created Scripts

1. Foundry Deployment Script

File: smom-dbis-138/script/DeployLinkToCanonicalAddress.s.sol

What it does:

  • Deploys CREATE2Factory contract
  • Gets MockLinkToken bytecode
  • Brute-force searches for salt value (up to 1M iterations)
  • Deploys LINK token using CREATE2 to canonical address
  • Mints 1M LINK to deployer

Target Address: 0x514910771AF9Ca656af840dff83E8264EcF986CA

2. Deployment Bash Script

File: scripts/deploy-link-canonical-create2.sh

What it does:

  • Checks if canonical address already has code
  • Runs the Foundry deployment script
  • Verifies deployment after execution

🚀 Deployment Command

cd /home/intlc/projects/proxmox
./scripts/deploy-link-canonical-create2.sh

Or manually:

cd smom-dbis-138
source .env

forge script script/DeployLinkToCanonicalAddress.s.sol:DeployLinkToCanonicalAddress \
    --rpc-url "$RPC_URL_138" \
    --broadcast \
    --private-key "$PRIVATE_KEY" \
    --legacy \
    -vvv

⚠️ Important Warnings

May Not Succeed If:

  1. Bytecode Mismatch: MockLinkToken bytecode doesn't match original LINK token bytecode on mainnet
  2. Different Factory: Original LINK was deployed using a different CREATE2Factory address
  3. CREATE vs CREATE2: Original LINK was deployed using CREATE, not CREATE2
  4. Salt Not Found: Required salt value exceeds 1 million (increase MAX_SALT_ITERATIONS)

Expected Behavior:

  • Script will search up to 1,000,000 salt values
  • If salt found: Deploys LINK token at canonical address
  • If salt not found: Outputs warning message and exits ⚠️

📋 After Deployment

If successful, update .env:

LINK_TOKEN=0x514910771AF9Ca656af840dff83E8264EcF986CA
CCIP_FEE_TOKEN=0x514910771AF9Ca656af840dff83E8264EcF986CA

Status: READY FOR EXECUTION

Last Updated: 2026-01-18