#!/usr/bin/env bash
# mr-number trigger service launcher (dev/manual). In PROD the service runs on the
# redroid box as the systemd unit `mr-number-service` (see deploy/deploy-service.sh);
# that unit gets its env from /etc/mr-number-service.env, not this script.
#
# Use this for local dev/testing on plum (fennel). Secrets are 0600 files under
# ~/.config/cocotte-secrets/ (env wins if already set):
#   mr-number.service-token   inbound auth Prospector presents (MRNUMBER_SERVICE_TOKEN)
#   people-service.token      recording auth for mr_lookup.py (PEOPLE_SERVICE_TOKEN)
set -euo pipefail

HERE="$(cd "$(dirname "$0")" && pwd)"
SECRETS="$HOME/.config/cocotte-secrets"

# File → env, only if the env var isn't already set. Tokens stay out of argv.
[ -n "${MRNUMBER_SERVICE_TOKEN:-}" ] || { [ -f "$SECRETS/mr-number.service-token" ] && export MRNUMBER_SERVICE_TOKEN="$(cat "$SECRETS/mr-number.service-token")"; }
[ -n "${PEOPLE_SERVICE_TOKEN:-}" ]   || { [ -f "$SECRETS/people-service.token" ]   && export PEOPLE_SERVICE_TOKEN="$(cat "$SECRETS/people-service.token")"; }
export PEOPLE_BASE_URL="${PEOPLE_BASE_URL:-http://10.9.0.5:3061}"
export MR_NUMBER_DEVICE="${MR_NUMBER_DEVICE:-45.55.191.82:5555}"   # plum dev drives the box remotely; on-box prod uses localhost:5555
export MRNUMBER_PORT="${MRNUMBER_PORT:-8787}"
[ -n "${CLAUDE_CODE_BATCH_SDK_PATH:-}" ] || export CLAUDE_CODE_BATCH_SDK_PATH="$HOME/Code/@quinn/@applications/ml/@packages/@py/claude-code-batch-sdk/src"

cd "$HERE"
exec bun run index.ts
