#!/usr/bin/env bash set -euo pipefail SUITE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" REPO_ROOT="$(cd "$SUITE_DIR/.." && pwd)" PYTHON_BIN="${PYTHON_BIN:-python3}" if [[ ! -f "$REPO_ROOT/tools/vm_verify_sentinel_bundle.py" ]]; then echo "[FAIL] Sentinel verifier not found: $REPO_ROOT/tools/vm_verify_sentinel_bundle.py" >&2 exit 2 fi if [[ ! -f "$REPO_ROOT/tools/check_sentinel_contract_parity.py" ]]; then echo "[FAIL] Parity gate not found: $REPO_ROOT/tools/check_sentinel_contract_parity.py" >&2 exit 2 fi echo "[RUN] Sentinel contract parity gate" "$PYTHON_BIN" "$REPO_ROOT/tools/check_sentinel_contract_parity.py" echo "[RUN] MERIDIAN v1 conformance suite" set +e "$PYTHON_BIN" "$SUITE_DIR/run.py" --manifest "$SUITE_DIR/manifest.yaml" status=$? set -e report_txt="$SUITE_DIR/out/report.txt" fallback_txt="$SUITE_DIR/out/meridian_v1_conformance_report.txt" if [[ -f "$report_txt" ]]; then cat "$report_txt" elif [[ -f "$fallback_txt" ]]; then cat "$fallback_txt" else echo "[WARN] suite did not produce report.txt under $SUITE_DIR/out/" >&2 fi exit "$status"