#!/bin/bash # Pre-commit metadata gate: block commits that break the MD-DDL domain. # Install with: make install-hooks set -euo pipefail REPO_ROOT="$(git rev-parse --show-toplevel)" METADATA_DIR="$( python3 - "$REPO_ROOT/deploy/domain.config.yml" <<'PY' import sys, yaml print(yaml.safe_load(open(sys.argv[1]))["metadata_dir"]) PY )" echo "pre-commit: running MD-DDL pre-flight on '$METADATA_DIR'…" if ! python3 "$REPO_ROOT/.github/scripts/preflight.py" "$METADATA_DIR"; then echo "pre-commit: metadata pre-flight FAILED — commit blocked." >&2 echo " Fix the findings above, or bypass with 'git commit --no-verify'." >&2 exit 1 fi echo "pre-commit: metadata OK."