Ctrl K
ComunidadGuías…

Makefile

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
.POSIX:

.PHONY: help registries test-sync test-scorer lint-app test-app lint-shell \
	test-shell smoke acceptance-scorer acceptance-quiz-only \
	acceptance-classic-only acceptance-ai-only dev-up dev-down

# Thin wrappers around the commands in AGENTS.md — that file is the
# authority on what CI runs; this just saves retyping the `cd`s. Pick the
# area you touched. There is deliberately no full-repo `test` target: CI's
# `changes` job path-filters per area, and one target that runs everything
# would undo that discipline locally.
help:
	@echo "Targets (pick the area you touched; AGENTS.md is the authority):"
	@echo "  registries            target lists must agree; no Docker"
	@echo "  test-sync             sync unit tests"
	@echo "  test-scorer           scorer unit tests, vacuous-pass gate, offline acceptance loop"
	@echo "  lint-app              app: install + eslint"
	@echo "  test-app              app: install + eslint + vitest"
	@echo "  lint-shell            shellcheck over scripts/, setup/, entrypoints, deploy/fly, deploy/aws-terraform"
	@echo "  test-shell            bats over setup/test/, deploy/fly/test/, deploy/aws-terraform/test/, scripts/test/"
	@echo "  smoke                 the full poll pipeline, end to end, offline"
	@echo "  acceptance-scorer     scorer's offline acceptance loop"
	@echo "  acceptance-quiz-only  quiz-only compose bring-up"
	@echo "  acceptance-classic-only  classic-only compose bring-up"
	@echo "  acceptance-ai-only    ai-only compose bring-up"
	@echo "  dev-up                local dev-stack up (throwaway secrets, seeded demo board)"
	@echo "  dev-down              local dev-stack down"
	@echo ""
	@echo "Not wrapped here: the app's live Lua/upstash suite (needs a real"
	@echo "redis + srh — see AGENTS.md) and the two real-target scoring gates,"
	@echo "./scripts/acceptance-target.sh and ./scripts/acceptance-patched.sh"
	@echo "(Docker, pulls upstream images, minutes per row — see AGENTS.md)."

registries:
	node scripts/check-module-registries.mjs

test-sync:
	cd sync && npm ci && npm test

test-scorer:
	(cd scorer && npm ci && npm test) && (cd scorer && node tools/vacuous-sweep.mjs) && ./scripts/acceptance-scorer.sh

lint-app:
	cd apps/web && corepack enable && corepack pnpm install --frozen-lockfile && corepack pnpm lint

test-app:
	cd apps/web && corepack enable && corepack pnpm install --frozen-lockfile && corepack pnpm lint && corepack pnpm test

lint-shell:
	shellcheck scripts/*.sh scripts/lib/*.sh scripts/dev-stack setup/*.sh scorer/entrypoint.sh sync/docker-entrypoint.sh \
	  deploy/fly/deploy.sh deploy/fly/render-compose.sh deploy/aws-terraform/deploy.sh
	shellcheck -s sh --exclude=SC2034 scorer/entrypoints/*.sh

test-shell:
	bats setup/test/ && bats deploy/fly/test/ && bats deploy/aws-terraform/test/ && bats scripts/test/

smoke:
	./scripts/smoke.sh

acceptance-scorer:
	./scripts/acceptance-scorer.sh

acceptance-quiz-only:
	./scripts/acceptance-quiz-only.sh

acceptance-classic-only:
	./scripts/acceptance-classic-only.sh

acceptance-ai-only:
	./scripts/acceptance-ai-only.sh

dev-up:
	./scripts/dev-stack up

dev-down:
	./scripts/dev-stack down