make check: include blogex in the cheap static gate

Root check now loops app then blogex then the pin check, mirroring the shape
the Lens pass will use. blogex gains a check target (compile with warnings
fatal + format); credo is a marked slot until its dep exists, and the gate
never claims a sensor it did not run.
This commit is contained in:
Willem van den Ende
2026-10-26 17:58:14 +00:00
parent ea588bd670
commit 0b815dc66a
2 changed files with 31 additions and 5 deletions
+9 -3
View File
@@ -1,11 +1,17 @@
# Makefile for Firehose monorepo
MISE_BIN ?= mise
.PHONY: check precommit deps compile test test-elisp format
# Common check target that runs all static analysis
# Cheap static gate over both apps, cheapest first. No database, no coverage:
# this is the loop you run freely while working and before every commit.
check:
@echo "Running static analysis..."
@make -C app MISE_BIN=mise check
@echo "==> check: app (credo --strict, format)"
@$(MAKE) -C app MISE_BIN=$(MISE_BIN) check
@echo "==> check: blogex (compile, format)"
@$(MAKE) -C blogex MISE_BIN=$(MISE_BIN) check
@echo "==> check: toolchain pins"
@bash scripts/check-pins.sh
# Precommit target for CI/pre-commit hooks
+21 -1
View File
@@ -3,13 +3,33 @@
MISE_BIN ?= mise
MISE_EXEC = $(MISE_BIN) exec --
.PHONY: deps test format
.PHONY: check precommit deps compile test format
# Cheap static gate for this library (no database, no coverage). Runs from the
# root `make check`, which loops app then blogex.
#
# Sensor slot: add `credo` once the "credo strict, tuned config (both apps)"
# yak lands blogex's credo dep + .credo.exs. Do not list it before then — a
# gate that claims a check it did not run is worse than no gate.
check: compile format
# Per-app precommit loop: same target name and alias shape as app/, so both
# apps share one habit (compile --warning-as-errors, format, test).
precommit:
$(MISE_EXEC) mix precommit
# Sync dependencies
deps:
$(MISE_EXEC) mix deps.get
# Compile the project (warnings are fatal)
compile:
$(MISE_EXEC) mix compile --warnings-as-errors
# Run the test suite
test: deps
$(MISE_EXEC) mix test
# Format code
format:
$(MISE_EXEC) mix format