# ============================================================
# Factorio AI Defense – Root-Level Makefile (for /ai folder)
# ============================================================

PYTHON=python3
VENV=ai/venv
REQ=ai/requirements.txt
AI_DIR=ai

# Default target
all: init primer

# ------------------------------------------------------------
# Create virtual environment INSIDE ai/
# ------------------------------------------------------------
$(VENV):
	cd $(AI_DIR) && $(PYTHON) -m venv venv

init: $(VENV)
	. $(VENV)/bin/activate && pip install --upgrade pip && pip install -r $(REQ)
	@echo "✓ Virtual environment ready in ai/venv"
	@echo "✓ Dependencies installed"

# ------------------------------------------------------------
# Generate primer.json inside ai/
# ------------------------------------------------------------
primer:
	. $(VENV)/bin/activate && cd $(AI_DIR) && $(PYTHON) primer_generator.py
	@echo "✓ Primer memory generated at ai/primer.json"

# ------------------------------------------------------------
# Run the AI loop (interpreter → risk → executive)
# ------------------------------------------------------------
run:
	. $(VENV)/bin/activate && cd $(AI_DIR) && $(PYTHON) run_ai.py
	@echo "✓ AI loop running."

# ------------------------------------------------------------
# Format files (optional)
# ------------------------------------------------------------
format:
	. $(VENV)/bin/activate && black ai

# ------------------------------------------------------------
# Nuke venv + primer
# ------------------------------------------------------------
clean:
	rm -rf ai/venv
	rm -f ai/primer.json
	@echo "✓ Cleaned ai/venv and ai/primer.json"

help:
	@echo "Available make commands:"
	@echo "  make init      – Create AI venv & install requirements"
	@echo "  make primer    – Generate primer.json"
	@echo "  make run       – Run AI loop"
	@echo "  make clean     – Remove AI venv + primer"