.PHONY: canon-lineage check exception-fixtures layer-conformance reference-fixtures test

check: test reference-fixtures exception-fixtures layer-conformance

test:
	PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover -s tests -v

layer-conformance:
	PYTHONDONTWRITEBYTECODE=1 python3 tools/check_layer_conformance.py

reference-fixtures:
	PYTHONDONTWRITEBYTECODE=1 python3 tools/resolve_zones.py --manifest fixtures/manifests/reference.yaml --control-profile profiles/netkingdom-build-v0.1.yaml >/dev/null

exception-fixtures:
	PYTHONDONTWRITEBYTECODE=1 python3 tools/check_zone_exceptions.py fixtures/exceptions/valid-active.yaml --policy fixtures/exceptions/policy.yaml --at 2026-08-23T10:00:00Z >/dev/null
	! PYTHONDONTWRITEBYTECODE=1 python3 tools/check_zone_exceptions.py fixtures/exceptions/invalid-overlap.yaml --policy fixtures/exceptions/policy.yaml --at 2026-08-23T11:30:00Z >/dev/null

canon-lineage:
	PYTHONDONTWRITEBYTECODE=1 python3 tools/check_canon_lineage.py --manifest docs/canon-lineage.yaml --canon-root "$(CANON_ROOT)"
