#!/bin/bash
# CC Task Assignment Functions for Rivet

REPO_PATH="/root/rateright-growth"
CC_DIR="$REPO_PATH/.claude"

cc_assign_task() {
  local task_id="$(date '+%Y%m%d-%H%M%S')-$RANDOM"
  local task_type="$1"
  local priority="$2"
  local description="$3"
  
  cd "$REPO_PATH"
  
  # Add task to PENDING section
  sed -i "/^## PENDING$/a\\
### Task: $task_id\\
**Type**: $task_type\\
**Priority**: $priority\\
**Assigned**: $(date)\\
**Description**: $description\\
" "$CC_DIR/INBOX.md"
  
  git add "$CC_DIR/INBOX.md"
  git commit -m "Assigned task $task_id" 2>/dev/null || true
  git push origin main 2>/dev/null || true
  
  echo "Task $task_id assigned to CC"
}

cc_status() {
  if [ -f "$CC_DIR/STATUS.md" ]; then
    grep "Current Status" "$CC_DIR/STATUS.md" | cut -d: -f2 | tr -d ' '
  else
    echo "unknown"
  fi
}

cc_check_outbox() {
  if [ -f "$CC_DIR/OUTBOX.md" ]; then
    # Get latest output
    sed -n '/^## Latest Output$/,/^##/p' "$CC_DIR/OUTBOX.md" | tail -n +2 | head -n -1
  fi
}

cc_queue_count() {
  if [ -f "$CC_DIR/INBOX.md" ]; then
    sed -n '/^## PENDING$/,/^##/p' "$CC_DIR/INBOX.md" | grep -c "^\#\#\# Task:"
  else
    echo "0"
  fi
}
