#!/usr/bin/env bash
set -euo pipefail

mode="${CODEX_MACOS_AGENT_STUB_CLICLICK_MODE:-ok}"
if [[ "$mode" == "timeout" ]]; then
  sleep 2
fi

if [[ -n "${CODEX_MACOS_AGENT_STUB_COUNTER_FILE:-}" ]]; then
  count=0
  if [[ -f "$CODEX_MACOS_AGENT_STUB_COUNTER_FILE" ]]; then
    count="$(cat "$CODEX_MACOS_AGENT_STUB_COUNTER_FILE")"
  fi
  count=$((count + 1))
  printf '%s' "$count" > "$CODEX_MACOS_AGENT_STUB_COUNTER_FILE"
  fail_until="${CODEX_MACOS_AGENT_STUB_CLICLICK_FAIL_UNTIL:-0}"
  if (( count <= fail_until )); then
    echo "cliclick transient failure #$count" >&2
    exit 2
  fi
fi

if [[ "$mode" == "fail" ]]; then
  echo "cliclick failed" >&2
  exit 2
fi

if [[ -n "${CODEX_MACOS_AGENT_STUB_LOG:-}" ]]; then
  printf 'cliclick %s\n' "$*" >> "$CODEX_MACOS_AGENT_STUB_LOG"
fi

exit 0
