#!/usr/bin/env bash
# Deploy the ArchForge-sourced external website redirect monitoring fix, without
# resetting the database, admin account, secrets, or Caddy configuration.
set -Eeuo pipefail
[[ $EUID -eq 0 ]] || { echo '[ERROR] Run as root: sudo bash ./apply-monitor-fix.sh' >&2;exit 1; }
ROOT=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)
[[ -r "$ROOT/package.json" && -r "$ROOT/src/probes.js" ]] || { echo '[ERROR] Not an ArchForge External Status source checkout.' >&2;exit 1; }
/usr/bin/node -e 'const p=require(process.argv[1]);if(p.version!=="1.0.4")process.exit(1)' "$ROOT/package.json" || { echo '[ERROR] Expected v1.0.4 source. Run git pull --ff-only first.' >&2;exit 1; }
echo '[*] Deploying v1.0.4 from your ArchForge checkout; backup and rollback are handled by deploy.sh.'
bash "$ROOT/scripts/deploy.sh" "$ROOT"
printf '\n[OK] Updated code deployed. The monitor needs two successful checks to close a confirmed outage (usually about two minutes).\n'
printf '     Previous measurements and incident history are retained.\n'
