Agreed. CI is that separate process, with the config under CODEOWNERS. Locally the launcher sits in a protected folder and fails closed if the tool was changed. First thing I'd log: every write attempt on guardrail paths, denied or applied. The silent one is a successful write that removes the hook, since it can't report on itself, which is why CI re-checks the diff.