- Fix kanban board columns not adapting to available width (w-64 → flex-1) - Fix workspace name not updating in sidebar after save in settings - Fix comments leaking across issues when navigating between issue details - Fix duplicate issue appearing on create (race between callback and WebSocket) - Add real-time WebSocket listeners for agents and inbox pages - Add `make check` one-click verification pipeline (typecheck + tests + E2E) - Add E2E test fixtures for self-contained test data setup/teardown - Add settings E2E test and updateWorkspace unit test - Make `make start/setup` reuse existing PostgreSQL if already running - Update CLAUDE.md with AI agent verification loop and E2E test patterns Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
85 lines
2.1 KiB
Makefile
85 lines
2.1 KiB
Makefile
.PHONY: dev daemon build test migrate-up migrate-down sqlc seed clean setup start stop check
|
|
|
|
# ---------- One-click commands ----------
|
|
|
|
# First-time setup: install deps, start DB, run migrations, seed data
|
|
setup:
|
|
@echo "==> Installing dependencies..."
|
|
pnpm install
|
|
@echo "==> Starting PostgreSQL..."
|
|
@if pg_isready -h localhost -p 5432 -U multica > /dev/null 2>&1; then \
|
|
echo " PostgreSQL already running, skipping docker compose up."; \
|
|
else \
|
|
docker compose up -d; \
|
|
echo "==> Waiting for PostgreSQL to be ready..."; \
|
|
until docker compose exec -T postgres pg_isready -U multica > /dev/null 2>&1; do \
|
|
sleep 1; \
|
|
done; \
|
|
fi
|
|
@echo "==> Running migrations..."
|
|
cd server && go run ./cmd/migrate up
|
|
@echo "==> Seeding data..."
|
|
cd server && go run ./cmd/seed
|
|
@echo ""
|
|
@echo "✓ Setup complete! Run 'make start' to launch the app."
|
|
|
|
# Start all services (backend + frontend)
|
|
start:
|
|
@if pg_isready -h localhost -p 5432 -U multica > /dev/null 2>&1; then \
|
|
echo "PostgreSQL already running, skipping docker compose up."; \
|
|
else \
|
|
docker compose up -d; \
|
|
until docker compose exec -T postgres pg_isready -U multica > /dev/null 2>&1; do \
|
|
sleep 1; \
|
|
done; \
|
|
fi
|
|
@echo "Starting backend and frontend..."
|
|
@trap 'kill 0' EXIT; \
|
|
(cd server && go run ./cmd/server) & \
|
|
pnpm dev:web & \
|
|
wait
|
|
|
|
# Stop all services
|
|
stop:
|
|
@echo "Stopping services..."
|
|
@-lsof -ti:8080 | xargs kill -9 2>/dev/null
|
|
@-lsof -ti:3000 | xargs kill -9 2>/dev/null
|
|
docker compose down
|
|
@echo "✓ All services stopped."
|
|
|
|
# Full verification: typecheck + unit tests + Go tests + E2E
|
|
check:
|
|
@bash scripts/check.sh
|
|
|
|
# ---------- Individual commands ----------
|
|
|
|
# Go server
|
|
dev:
|
|
cd server && go run ./cmd/server
|
|
|
|
daemon:
|
|
cd server && go run ./cmd/daemon
|
|
|
|
build:
|
|
cd server && go build -o bin/server ./cmd/server
|
|
cd server && go build -o bin/daemon ./cmd/daemon
|
|
|
|
test:
|
|
cd server && go test ./...
|
|
|
|
# Database
|
|
migrate-up:
|
|
cd server && go run ./cmd/migrate up
|
|
|
|
migrate-down:
|
|
cd server && go run ./cmd/migrate down
|
|
|
|
sqlc:
|
|
cd server && sqlc generate
|
|
|
|
seed:
|
|
cd server && go run ./cmd/seed
|
|
|
|
# Cleanup
|
|
clean:
|
|
rm -rf server/bin server/tmp
|