#!/bin/bash
# keep-mcp sudo diagnostic

TOKEN="aas_et/AKppINZVUKZSu7EhyGFuJ1oxCpoGMKdI9mGoMZ8mjlyNBJna-fNIQJAHJXT2DWK4IIClvVanDnbKpRid6lHR-CaFBi25bRXRlw-SMtnXM1OVX4izxFU10M8uXTrJ1oUE6oNmZ6Fox0SJJUydQT_peJ-Ri4C1HhdDQYYm7uNklqo-NtzFeVouhk2k_t1ZNsZcQQV95TOnczeDtKYP10PWX4U="
EMAIL="majstors@gmail.com"
INPUT=$(printf '{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}\n{"jsonrpc":"2.0","method":"notifications/initialized","params":{}}\n{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}\n')

# MCP SDK version
echo "MCP SDK version:"
/opt/keep-mcp-env/bin/python3 -c "import mcp; print(mcp.__version__)" 2>/dev/null || echo "unknown"
echo ""

SEP="=========================================="

echo "$SEP"
echo "TEST 1: sudo iz ROOT konteksta"
echo "$SEP"
echo "$INPUT" | \
  HOME=/root \
  GOOGLE_EMAIL="$EMAIL" \
  GOOGLE_MASTER_TOKEN="$TOKEN" \
  UNSAFE_MODE=true \
  PYTHONUNBUFFERED=1 \
  sudo /opt/keep-mcp-env/bin/keep-mcp 2>/tmp/diag2-stderr-1.log
echo "--- stderr ---"
cat /tmp/diag2-stderr-1.log

echo ""
echo "$SEP"
echo "TEST 2: sudo iz WWW-DATA konteksta (simulira PHP-FPM)"
echo "$SEP"
echo "$INPUT" | \
  su -s /bin/bash www-data -c \
  "HOME=/root GOOGLE_EMAIL=$EMAIL GOOGLE_MASTER_TOKEN=$TOKEN UNSAFE_MODE=true PYTHONUNBUFFERED=1 sudo /opt/keep-mcp-env/bin/keep-mcp" \
  2>/tmp/diag2-stderr-2.log
echo "--- stderr ---"
cat /tmp/diag2-stderr-2.log

echo ""
echo "$SEP"
echo "TEST 3: direktno kao root, HOME=/root (treba raditi)"
echo "$SEP"
echo "$INPUT" | \
  HOME=/root \
  GOOGLE_EMAIL="$EMAIL" \
  GOOGLE_MASTER_TOKEN="$TOKEN" \
  UNSAFE_MODE=true \
  PYTHONUNBUFFERED=1 \
  /opt/keep-mcp-env/bin/keep-mcp 2>/tmp/diag2-stderr-3.log
echo "--- stderr ---"
cat /tmp/diag2-stderr-3.log

echo ""
echo "$SEP"
echo "DONE"
echo "$SEP"
