#!/bin/bash
# install-guardian.sh — npm postinstall script
# 每次 npm install 都把 upgrade-guardian.sh 强制覆盖到 ~/.grix/bin/，
# 保证老用户也能拿到新版 guardian（不再以 "用户可能自改" 为由跳过覆盖）。

set -e

GRIX_HOME="${GRIX_CONNECTOR_HOME:-$HOME/.grix}"
GUARDIAN_DEST="$GRIX_HOME/bin/upgrade-guardian.sh"

# Locate source: INIT_CWD is set by npm to the package root during lifecycle scripts
GUARDIAN_SRC="${INIT_CWD:-$(dirname "$0")}/scripts/upgrade-guardian.sh"
if [ ! -f "$GUARDIAN_SRC" ]; then
  # Fallback: try relative to this script
  GUARDIAN_SRC="$(cd "$(dirname "$0")" && pwd)/upgrade-guardian.sh"
fi

if [ ! -f "$GUARDIAN_SRC" ]; then
  echo "grix-connector postinstall: guardian source not found, skipping" >&2
  exit 0
fi

mkdir -p "$GRIX_HOME/bin"
cp "$GUARDIAN_SRC" "$GUARDIAN_DEST"
chmod +x "$GUARDIAN_DEST"
