#!/usr/bin/env bash set -euo pipefail RES_DIR="${RES_DIR:-./infra/volumes/tool-exec/results_out}" CORE_IN_DIR="${CORE_IN_DIR:-./infra/volumes/handoff/inbound-to-core}" QUAR_DIR="${QUAR_DIR:-./infra/volumes/handoff/quarantine}" VALIDATOR="${VALIDATOR:-./tools/validate_tool_result.py}" mkdir -p "${RES_DIR}" "${CORE_IN_DIR}" "${QUAR_DIR}" shopt -s nullglob for f in "${RES_DIR}"/*.md; do echo "Validating tool result: ${f}" if "${VALIDATOR}" "${f}" >/tmp/threegate_toolres_validate.out 2>/tmp/threegate_toolres_validate.err; then echo "ACCEPT -> CORE inbound: ${f}" mv -- "${f}" "${CORE_IN_DIR}/" else echo "REJECT: ${f}" base="$(basename "${f}")" stamp="$(date -u +%Y%m%d-%H%M%SZ)" mkdir -p "${QUAR_DIR}/${stamp}-${base}" mv -- "${f}" "${QUAR_DIR}/${stamp}-${base}/" mv -- /tmp/threegate_toolres_validate.out "${QUAR_DIR}/${stamp}-${base}/validator.out" || true mv -- /tmp/threegate_toolres_validate.err "${QUAR_DIR}/${stamp}-${base}/validator.err" || true fi done