feat(auditing): add audit_pipeline.sh one-command wrapper
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# VeriPath Audit Pipeline
|
||||
# Usage: ./audit_pipeline.sh "Business Name" "City, ST" [output-dir]
|
||||
# Sequence: multi_scraper.py → audit_engine.py → findings + report in target folder
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
BUSINESS="${1:?Usage: audit_pipeline.sh \"Business Name\" \"City, ST\" [output-dir]}"
|
||||
LOCATION="${2:?Usage: audit_pipeline.sh \"Business Name\" \"City, ST\" [output-dir]}"
|
||||
OUTPUT_DIR="${3:-}"
|
||||
|
||||
# Temporary working dir for this run
|
||||
WORK_DIR=$(mktemp -d /tmp/veripath.XXXXXX)
|
||||
trap 'rm -rf "$WORK_DIR"' EXIT
|
||||
|
||||
SCRAPER_OUT="$WORK_DIR/multi_surface.json"
|
||||
ENGINE_ARGS=("--md")
|
||||
|
||||
echo "[$(date +%T)] Scraping: $BUSINESS @ $LOCATION"
|
||||
|
||||
# Step 1: Multi-surface extraction
|
||||
uv run python3 "$SCRIPT_DIR/multi_scraper.py" "$BUSINESS" "$LOCATION" "$SCRAPER_OUT"
|
||||
if [ ! -s "$SCRAPER_OUT" ]; then
|
||||
echo "[FAIL] multi_scraper.py produced no output" >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "[OK] Extraction complete: $SCRAPER_OUT"
|
||||
|
||||
# Step 2: Audit engine
|
||||
if [ -n "$OUTPUT_DIR" ]; then
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
ENGINE_ARGS+=("--output-dir" "$OUTPUT_DIR")
|
||||
echo "[$(date +%T)] Auditing (output: $OUTPUT_DIR)"
|
||||
uv run python3 "$SCRIPT_DIR/audit_engine.py" "$SCRAPER_OUT" "${ENGINE_ARGS[@]}"
|
||||
echo "[DONE] Findings written to $OUTPUT_DIR/"
|
||||
else
|
||||
echo "[$(date +%T)] Auditing (stdout)"
|
||||
uv run python3 "$SCRIPT_DIR/audit_engine.py" "$SCRAPER_OUT" "${ENGINE_ARGS[@]}"
|
||||
fi
|
||||
Reference in New Issue
Block a user