#!/bin/bash
set +e
CEL=/home/tiara/workspace/byteb4rb1e/cel
DD=$CEL/sek.ddist
XSEK=$CEL/xsek.byteb4rb1e
export VENV_PY=/home/tiara/.local/share/virtualenvs/sek.ddist-JE-PxZHd/bin/python
export SEK_MODEL="phi3:3.8B-instruct"
export SEK_MODEL_URL="http://localhost:4000/v1"
export SEK_API_KEY="sk-litellm-dev"
N=5; SECS=120
cd "$DD" || { echo CD_FAIL; exit 0; }

log(){ echo "[$(date +%H:%M:%S)] $*"; }

prep(){   # $1 = seed config (c0/c1/c4/c6)   $2 = stop (yes/no)
  pkill -9 -f byteb4rb1e.sek.ddist 2>/dev/null; sleep 1
  if [ "$2" = "yes" ]; then git -C "$XSEK" checkout 9407df3 >/dev/null 2>&1
  else                     git -C "$XSEK" checkout 5b2b1c6 >/dev/null 2>&1; fi
  "$VENV_PY" set_seed.py "$1" >/dev/null
  rm -rf "$DD/src/byteb4rb1e/sek/ddist/rootfs"
  "$VENV_PY" -m byteb4rb1e.sek.ddist install >/dev/null 2>&1
  log "$1 (stop=$2): reinstalled, xsek=$(git -C "$XSEK" rev-parse --short HEAD)"
}

log "PHI3-INSTRUCT LADDER START  N=$N  secs=$SECS  model=$SEK_MODEL"
prep c0 no  ; "$VENV_PY" _repl_driver.py phi_i_c0 $N $SECS
prep c1 no  ; "$VENV_PY" _repl_driver.py phi_i_c1 $N $SECS
prep c4 no  ; "$VENV_PY" _repl_driver.py phi_i_c4 $N $SECS
prep c4 yes ; "$VENV_PY" _repl_driver.py phi_i_c5 $N $SECS    # C5 = C4 seed + stop-at-newline
prep c6 no  ; "$VENV_PY" _repl_driver.py phi_i_c6 $N $SECS
git -C "$XSEK" checkout 5b2b1c6 >/dev/null 2>&1             # restore no-stop
"$VENV_PY" set_seed.py c4 >/dev/null                        # restore C4 working tree
log "PHI3-INSTRUCT LADDER DONE"
exit 0
