Files
magnus919_agent-skills/Makefile
T
Magnus HedemarkandGitHub 37acf4968a fix(validation): align README and core test filtering
Align README runtime requirements and local core-test filtering with required CI semantics.\n\nCo-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-09-01 22:37:34 -04:00

68 lines
3.2 KiB
Makefile

.PHONY: dev lint typecheck test complexity deps coverage security dep-age runbooks docs validate
# Keep local core tests aligned with the required CI coverage selection.
CORE_TESTS := $(shell grep -Ev '^[[:space:]]*\#|^[[:space:]]*$$' scripts/core-test-files.txt)
# ─── Development Setup ──────────────────────────────────────────
dev: .venv
@echo "Development environment ready. Run 'make validate' to run all checks."
.venv:
python3 -m venv .venv
.venv/bin/python3 -m pip install --upgrade pip
.venv/bin/python3 -m pip install -r requirements-dev.txt
@echo "Virtual environment created at .venv/"
# ─── Linting & Formatting ───────────────────────────────────────
lint:
.venv/bin/python3 -m ruff check scripts/ eval_runner/
format-check:
.venv/bin/python3 -m ruff format --check scripts/ eval_runner/
format:
.venv/bin/python3 -m ruff format scripts/ eval_runner/
# ─── Type Checking ──────────────────────────────────────────────
typecheck:
.venv/bin/python3 -m mypy scripts/ eval_runner/
# ─── Complexity ─────────────────────────────────────────────────
complexity:
.venv/bin/python3 -m radon cc scripts/ eval_runner/ --min B --total-average
# ─── Testing ────────────────────────────────────────────────────
test:
.venv/bin/python3 -m pytest $(CORE_TESTS) -v --durations=10
test-integration:
.venv/bin/python3 -m pytest tests/integration/ -v --durations=10
test-cov:
.venv/bin/python3 -m pytest $(CORE_TESTS) tests/integration/ -v --durations=10 --cov=scripts --cov=eval_runner --cov-fail-under=60 --cov-report=term-missing
test-parallel:
.venv/bin/python3 -m pytest $(CORE_TESTS) -n auto -v --durations=10
# ─── Dependencies ───────────────────────────────────────────────
deps:
.venv/bin/python3 -m deptry .
# ─── Security ───────────────────────────────────────────────────
security:
.venv/bin/python3 -m bandit -r scripts/ -f txt --severity-level high
dep-age:
.venv/bin/python3 scripts/check-dependency-age.py
# ─── Documentation ──────────────────────────────────────────────
docs:
ruby scripts/validate-skills.rb
ruby scripts/validate-skill-quality.rb --base origin/main
python3 scripts/test-eval-validation.py
python3 scripts/validate-evals.py
# ─── Full Validation ────────────────────────────────────────────
validate: lint format-check typecheck complexity deps dep-age test-cov
@echo "All checks passed."