Files
smom-dbis-138/scripts/deployment/verify-monad-ccip-bridges.sh
defiQUG 1ec308c3a0
Some checks failed
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m12s
CI/CD Pipeline / Security Scanning (push) Successful in 2m21s
CI/CD Pipeline / Lint and Format (push) Failing after 25s
CI/CD Pipeline / Terraform Validation (push) Failing after 24s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 22s
Deploy ChainID 138 / Deploy ChainID 138 (push) Failing after 41s
Validation / validate-genesis (push) Successful in 27s
Validation / validate-terraform (push) Failing after 25s
Validation / validate-kubernetes (push) Failing after 9s
Validation / validate-smart-contracts (push) Failing after 9s
Validation / validate-security (push) Failing after 1m6s
Validation / validate-documentation (push) Failing after 16s
OMNL reconcile anchor / Run omnl:reconcile and upload artifacts (push) Failing after 23s
Verify Deployment / Verify Deployment (push) Failing after 13m52s
Add Monad CCIP deploy scripts, relay hardening, and bridge contract updates.
Includes Monad↔Chain138 CCIP proof/deploy/verify tooling, relay service guards,
bridge integration tweaks, and frontend ENS/network config follow-ups.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-13 12:52:49 -07:00

65 lines
2.0 KiB
Bash
Executable File

#!/usr/bin/env bash
# Verify Monad (chain 143) CCIP WETH9/WETH10 bridges on monadscan (Etherscan V2 API).
#
# Usage: cd smom-dbis-138 && ./scripts/deployment/verify-monad-ccip-bridges.sh
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
cd "$PROJECT_ROOT"
if [[ -f "$SCRIPT_DIR/../lib/deployment/dotenv.sh" ]]; then
# shellcheck disable=SC1090
source "$SCRIPT_DIR/../lib/deployment/dotenv.sh"
load_deployment_env --repo-root "$PROJECT_ROOT"
elif [[ -f "$PROJECT_ROOT/.env" ]]; then
set -a
# shellcheck disable=SC1090
source "$PROJECT_ROOT/.env"
set +a
fi
ROUTER="${CCIP_MONAD_ROUTER:-0x33566fE5976AAa420F3d5C64996641Fc3858CaDB}"
WMON="${WMON_MAINNET:-0x754704Bc059F8C67012fEd69BC8A327a5aafb603}"
FEE="${CCIP_MONAD_LINK_TOKEN:-0x0000000000000000000000000000000000000000}"
W9="${CCIPWETH9_BRIDGE_MONAD:-}"
W10="${CCIPWETH10_BRIDGE_MONAD:-}"
if [[ -z "$W9" || -z "$W10" ]]; then
echo "Set CCIPWETH9_BRIDGE_MONAD and CCIPWETH10_BRIDGE_MONAD in .env" >&2
exit 1
fi
if [[ -z "${ETHERSCAN_API_KEY:-}" ]]; then
echo "ETHERSCAN_API_KEY required (Etherscan V2 unified key for chainid=143)" >&2
exit 1
fi
CTOR9=$(cast abi-encode "constructor(address,address,address)" "$ROUTER" "$WMON" "$FEE")
CTOR10=$(cast abi-encode "constructor(address,address,address)" "$ROUTER" "$WMON" "$FEE")
echo "=== Verify CCIPWETH9Bridge on Monad ($W9) ==="
forge verify-contract \
--chain-id 143 \
--num-of-optimizations 200 \
--watch \
--constructor-args "$CTOR9" \
--etherscan-api-key "$ETHERSCAN_API_KEY" \
"$W9" \
"contracts/ccip/CCIPWETH9Bridge.sol:CCIPWETH9Bridge"
echo ""
echo "=== Verify CCIPWETH10Bridge on Monad ($W10) ==="
forge verify-contract \
--chain-id 143 \
--num-of-optimizations 200 \
--watch \
--constructor-args "$CTOR10" \
--etherscan-api-key "$ETHERSCAN_API_KEY" \
"$W10" \
"contracts/ccip/CCIPWETH10Bridge.sol:CCIPWETH10Bridge"
echo ""
echo "Verification submitted. Check https://monadscan.com/"