#!/usr/bin/env bash set -euo pipefail ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" cd "$ROOT_DIR" TMP_DIR="$(mktemp -d)" trap 'rm -rf "$TMP_DIR"' EXIT BAD_FILE="$TMP_DIR/bad-phase6.txt" cat > "$BAD_FILE" <<'EOF' [WARN] window_gate_result=WARN 最近 7 次采集成功率未达 95%(仅外部文档站失败:external_provider_failure_only;stability_label=recovered-external-incident) EOF set +e bash scripts/review/release_semantics_guard.sh "$BAD_FILE" >/tmp/release_semantics_bad.out 2>&1 BAD_RC=$? set -e [[ "$BAD_RC" -ne 0 ]] grep -q 'missing release semantics summary' /tmp/release_semantics_bad.out GOOD_FILE="$TMP_DIR/good-phase6.txt" cat > "$GOOD_FILE" <<'EOF' [WARN] window_gate_result=WARN 最近 7 次采集成功率未达 95%(仅外部文档站失败:external_provider_failure_only;stability_label=recovered-external-incident) RELEASE_SEMANTICS class=degraded-external-provider gate=window_gate policy=release-allowed-with-warning EOF bash scripts/review/release_semantics_guard.sh "$GOOD_FILE" >/tmp/release_semantics_good.out 2>&1 grep -q 'RELEASE_SEMANTICS_GUARD: PASS' /tmp/release_semantics_good.out