#!/usr/bin/env bash set -euo pipefail APP_DIR="${ORDERBOOKS_APP_DIR:-/opt/orderbooks}" PYTHON_BIN="${ORDERBOOKS_PYTHON:-${APP_DIR}/.venv/bin/python}" DATA_DIR="${ORDERBOOKS_DATA_DIR:-/var/lib/orderbooks}" COLLECTOR_CONFIG="${ORDERBOOKS_COLLECTOR_CONFIG:-/etc/orderbooks/polymarket_collector.vps.yaml}" DISCOVERY_DIR="${ORDERBOOKS_DISCOVERY_DIR:-${DATA_DIR}/discovery}" OUTPUT_DIR="${ORDERBOOKS_OUTPUT_DIR:-${DATA_DIR}/raw_orderbooks}" MANIFEST_DIR="${ORDERBOOKS_MANIFEST_DIR:-${DATA_DIR}/manifests}" DISCOVERY_JSON="${ORDERBOOKS_DISCOVERY_JSON:-${DISCOVERY_DIR}/polymarket_btc_markets_latest.json}" DISCOVERY_MANIFEST="${ORDERBOOKS_DISCOVERY_MANIFEST:-${DISCOVERY_DIR}/polymarket_btc_markets_manifest.json}" DISCOVERY_MARKDOWN="${ORDERBOOKS_DISCOVERY_MARKDOWN:-${DISCOVERY_DIR}/polymarket_btc_markets.md}" DISCOVERY_LIMIT="${ORDERBOOKS_DISCOVERY_LIMIT:-100}" DISCOVERY_MAX_PAGES="${ORDERBOOKS_DISCOVERY_MAX_PAGES:-3}" DISCOVERY_TIMEOUT="${ORDERBOOKS_DISCOVERY_TIMEOUT:-15}" cycle_id="$(date -u +%Y%m%dT%H%M%SZ)" COLLECTOR_MANIFEST="${ORDERBOOKS_COLLECTOR_MANIFEST:-${MANIFEST_DIR}/polymarket_orderbook_collector_${cycle_id}.json}" mkdir -p "${DISCOVERY_DIR}" "${OUTPUT_DIR}" "${MANIFEST_DIR}" cd "${APP_DIR}" "${PYTHON_BIN}" scripts/discover_polymarket_btc_markets.py \ --output-json "${DISCOVERY_JSON}" \ --manifest "${DISCOVERY_MANIFEST}" \ --markdown "${DISCOVERY_MARKDOWN}" \ --limit "${DISCOVERY_LIMIT}" \ --max-pages "${DISCOVERY_MAX_PAGES}" \ --timeout "${DISCOVERY_TIMEOUT}" exec "${PYTHON_BIN}" scripts/collect_polymarket_orderbooks.py \ --config "${COLLECTOR_CONFIG}" \ --discovery-path "${DISCOVERY_JSON}" \ --output-dir "${OUTPUT_DIR}" \ --manifest-path "${COLLECTOR_MANIFEST}"