#!/usr/bin/env bash # Real-path verification against the LIVE commoncrawl HF bucket (needs HF_TOKEN). # Runs the actual estimate code (CDN index read) + a real hf-cdn WARC fetch for a # small domain/crawl, writing the output WARC locally, and validates it with warcio. # # Usage: HF_TOKEN=... scripts/verify_real.sh [DOMAIN] [CRAWL] set -euo pipefail cd "$(dirname "$0")/.." PY=.venv/bin/python CDXT=.venv/bin/cdxt DOMAIN="${1:-commoncrawl.org}" CRAWL="${2:-CC-MAIN-2026-21}" RANGES=/tmp/cc-real-ranges.csv OUT=/tmp/cc-real-out : "${HF_TOKEN:?set HF_TOKEN (or run via an env that has it) to query the bucket}" rm -rf "$OUT"; mkdir -p "$OUT" echo "== estimate: CDN index scan for $DOMAIN @ $CRAWL ==" CC_INDEX_MODE=cdn CC_CRAWLS="$CRAWL" CC_DOMAINS="$DOMAIN" CC_HOSTNAMES="" \ CC_RANGES_OUT="$RANGES" $PY -m src.index_query N=$(($(wc -l < "$RANGES") - 1)) # The fetch step runs the real `cdxt repackage` CLI (as the HF fetch job does). cdxt # is not a standing dev dependency — the estimate above uses the vendored SQL — so # install it on demand here if it is missing, mirroring the job's runtime install. if [ ! -x "$CDXT" ]; then echo "== installing cdx_toolkit for the fetch step (not a standing dev dep) ==" uv pip install --python .venv \ "cdx_toolkit[hf] @ git+https://github.com/commoncrawl/cdx_toolkit.git@feat/warc-range-sources" uvloop fi echo "== fetch: $N records from the commoncrawl bucket via hf-cdn ==" CDXT_UVLOOP=1 $CDXT -v repackage --target-source csv --csv-path "$RANGES" \ --warc-download-prefix hf://buckets/commoncrawl/commoncrawl --hf-reader cdn \ --prefix "$OUT/out" --processes 1 --parallel_readers 16 --size 1000000000 \ 2>&1 | grep -E "records extracted|execution time" || true echo "== validate output WARC ==" $PY - <