SHELL := /bin/sh

GOCACHE ?= $(CURDIR)/.tmp/go-build
GO := env GOCACHE=$(GOCACHE) go
COMPOSE := docker compose
SUPABASE_DIR := deploy/supabase

.PHONY: dev dev-down dev-logs migrate test lint build frontend-build verify clean

dev:
	cd $(SUPABASE_DIR) && $(COMPOSE) up -d

dev-down:
	cd $(SUPABASE_DIR) && $(COMPOSE) down

dev-logs:
	cd $(SUPABASE_DIR) && $(COMPOSE) logs -f

migrate:
	@echo "No migrations configured yet. E2-T01 will wire golang-migrate."

test:
	env GOCACHE="$(GOCACHE)" go test ./platform/... ./backend/... ./worker/... ./console-proxy/...

lint:
	env GOCACHE="$(GOCACHE)" go vet ./platform/... ./backend/... ./worker/... ./console-proxy/...
	npm run lint --prefix frontend

build:
	env GOCACHE="$(GOCACHE)" go build ./backend/cmd/api ./worker/cmd/worker ./console-proxy/cmd/console-proxy

frontend-build:
	npm run build --prefix frontend

verify: lint test build frontend-build

clean:
	rm -rf frontend/dist ".tmp/go-build"
