3DV1 Record gate was not executable on the first commit
record
2026-11-11: c1d51dd committed while .githooks/commit-msg lacked +x, so git skipped it. That commit had no km3d/ code, so nothing bypassed the rule. Fixed (chmod +x, mode tracked in git) and tested: a km3d/ change without pins.json is refused.