#!/usr/bin/env bash set -euo pipefail PRIMARY_DOMAIN="${PRIMARY_DOMAIN:-https://explorer.d-bis.org}" COMPANION_DOMAIN="${COMPANION_DOMAIN:-https://blockscout.defi-oracle.io}" paths=( "/" "/wallet" "/operations" "/bridge" "/api/v2/stats" "/explorer-api/v1/track1/bridge/status" "/token-aggregation/api/v1/routes/matrix?includeNonLive=true" "/explorer-api/v1/walletconnect/config" ) failures=0 check_path() { local domain="$1" local path="$2" local code code="$(curl -ksS -o /dev/null -w '%{http_code}' --max-time 20 "${domain}${path}")" if [[ "$code" =~ ^(200|301|302|307|308)$ ]]; then printf 'OK %3s %s%s\n' "$code" "$domain" "$path" else printf 'FAIL %3s %s%s\n' "$code" "$domain" "$path" failures=$((failures + 1)) fi } echo "Checking explorer dual-domain parity" echo "Primary: $PRIMARY_DOMAIN" echo "Companion: $COMPANION_DOMAIN" echo for path in "${paths[@]}"; do check_path "$PRIMARY_DOMAIN" "$path" check_path "$COMPANION_DOMAIN" "$path" done echo if (( failures > 0 )); then echo "Dual-domain parity check failed ($failures mismatches/non-200)." >&2 exit 1 fi echo "Dual-domain parity check passed."