#!/usr/bin/env bash
# Enable Phase 1 early win (progressive trap → DyzineFrame fireworks) in fixture-bridge.env.
#
#   bash enable_early_win_phase1_env.sh          # enable
#   bash enable_early_win_phase1_env.sh --off    # disable
#   bash enable_early_win_phase1_env.sh --dry-run  # log only, no HTTP fireworks

if grep -q $'\r' "${BASH_SOURCE[0]}" 2>/dev/null; then
  sed -i 's/\r$//' "${BASH_SOURCE[0]}"
  exec bash "${BASH_SOURCE[0]}" "$@"
fi

set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# shellcheck source=ethergold_paths.sh
source "${SCRIPT_DIR}/ethergold_paths.sh"

DEST="${FIXTURE_BRIDGE_ENV:-${ETHERGOLD_ROOT}/fixture-bridge.env}"
OFF=0
DRY=0
for arg in "$@"; do
  case "${arg}" in
    --off) OFF=1 ;;
    --dry-run) DRY=1 ;;
  esac
done

grep -v -E '^FIXTURE_EARLY_WIN_|^DYZINEFRAME_FLAG_BASE=' "${DEST}" 2>/dev/null > "${DEST}.tmp" || true
mv "${DEST}.tmp" "${DEST}"

if [[ "${OFF}" == "1" ]]; then
  echo "Cleared FIXTURE_EARLY_WIN_* from ${DEST}"
  exit 0
fi

{
  echo "FIXTURE_EARLY_WIN_PHASE1=1"
  echo "FIXTURE_EARLY_WIN_DEDUPE_MS=5000"
  echo "FIXTURE_EARLY_WIN_MAX_LOOPS=6"
  echo "DYZINEFRAME_FLAG_BASE=http://127.0.0.1:31234"
  if [[ "${DRY}" == "1" ]]; then
    echo "FIXTURE_EARLY_WIN_DRY_RUN=1"
  fi
} >> "${DEST}"

echo "Phase 1 early win enabled in ${DEST}:"
grep '^FIXTURE_EARLY_WIN_\|^DYZINEFRAME_FLAG_BASE=' "${DEST}"
