Self-hosted runner's --configure-git gained session-scoped git hooks and hooksPath handling
The self-hosted runner's --configure-git setup now writes session-scoped git hooks/signing config, preserves an operator's existing hooksPath, and simplified how it picks the override.
What probably matters to youSection of the release
What
When --configure-git installs its own git hooks shim, it now checks whether the repo already has an operator-configured hooksPath and reports it back as operatorHooksPath instead of silently overwriting it.
Runner session setup gained a --configure-git-driven path that writes session-scoped git hooks and signing artifacts under a hooks subdirectory, pinning core.hooksPath, the gpg/ssh programs, and GIT_ALLOW_PROTOCOL specifically for git invoked from lifecycle hooks, separate from the git used for the main checkout.
The helper that decides the core.hooksPath override for these session-scoped artifacts was simplified from a symlink-resolution routine to just returning the configured hooksPath or a /dev/null default.
Why
This keeps an operator's own git hooks configuration intact while giving the runner's lifecycle hooks their own isolated, session-scoped git config.
How sure we are
One source agreesOne thing we can check says the same as this entry.
Anthropic's release notes agreeSelf-hosted runner: Fixed lifecycle-hook commits failing to sign under --configure-git