Tip: PermissionRequest hooks now fire under claude -p, and SessionEnd hooks respect the global timeout
Claude Code Changelog·medium signal
Before 2.1.268, PermissionRequest hooks silently did not fire in --print mode. So a headless run guarded by that hook had no guard. CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS also failed to extend SessionEnd hooks that had no per-hook timeout, and those were killed after 1.5 seconds. If your cleanup or permission logic runs in -p jobs, re-test it on 2.1.268. Earlier versions skipped it.