# shellcheck shell=bash

_okstra_ctl_show() {
  if [[ $# -lt 1 ]]; then
    printf 'show: missing <runId-or-prefix>\n' >&2; exit 2
  fi
  OKSTRA_HOME_RESOLVED="$(okstra_central_home)" \
  OKSTRA_CTL_LIB_DIR="$SCRIPT_DIR" \
  OK_QUERY="$1" \
  python3 - <<'PY'
import os, sys
sys.path.insert(0, os.environ["OKSTRA_CTL_LIB_DIR"])
from pathlib import Path
from okstra_ctl import resolve_run_id, find_row_by_run_id, format_show, ResolveError
home = Path(os.environ["OKSTRA_HOME_RESOLVED"])
try:
    rid = resolve_run_id(home, os.environ["OK_QUERY"])
except ResolveError as e:
    print(f"show: {e}", file=sys.stderr)
    for c in e.candidates: print(f"  - {c}", file=sys.stderr)
    sys.exit(2)
row = find_row_by_run_id(home, rid)
if row is None:
    print(f"show: row not found for {rid}", file=sys.stderr); sys.exit(2)
print(format_show(row), end="")
PY
}
