#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" source "$SCRIPT_DIR/_common.sh" : "${BTC_NETWORK:=testnet}" : "${BTC_FEE_RATE:=5}" : "${OP_RETURN_PREFIX:=VM}" main() { root_hex="$(read_root_hex)" prefix_hex="$(ascii_to_hex "$OP_RETURN_PREFIX")" payload="${prefix_hex}${root_hex}" # OP_RETURN payload max is 80 bytes standard; we keep under 80 bytes (160 hex chars) payload="${payload:0:160}" echo "[PLAN] $(date -Iseconds) BTC Anchor" echo "[PLAN] Network: $BTC_NETWORK" echo "[PLAN] Fee rate (sat/vB): $BTC_FEE_RATE" echo "[PLAN] Prefix: $OP_RETURN_PREFIX (hex: $prefix_hex)" echo "[PLAN] Root hex (raw): $root_hex" echo "[PLAN] OP_RETURN payload hex: $payload" echo "[PLAN] Will create OP_RETURN tx via wallet RPCs: createrawtransaction -> walletcreatefundedpsbt -> walletprocesspsbt -> finalizepsbt -> sendrawtransaction" echo "[PLAN] Next: export DRY_RUN=0 && ./scripts/11_apply.sh" } main "$@"