diff --git a/.githooks/pre-commit b/.githooks/pre-commit new file mode 100755 index 000000000..61221d6a3 --- /dev/null +++ b/.githooks/pre-commit @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +set -e + +branch=$(git rev-parse --abbrev-ref HEAD) + +# Only enforce preflight on dev and main +if [ "$branch" != "dev" ] && [ "$branch" != "main" ]; then + exit 0 +fi + +# Only run preflight if Go files were staged +if git diff --cached --name-only | grep -q '\.go$'; then + echo "Go files staged on $branch — running make preflight..." + make preflight +else + echo "No Go files staged, skipping preflight." +fi