Hook state is built per session and cleared on dispose instead of living globally.
What's wrong with this entry?
The hook registry is now built fresh for each session, threaded through tool-use context, the submission-hook pass and assistant post-processing, and cleared on dispose along with read-file and tool state, rather than living as a module-wide global.
- A no-op registry ships for contexts where hooks are unavailable; its
addFunctionHookreturns the sentinel idfunction-hook-noop.
function-hook-noop
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.234
SessionEnd hooks lose the
bypass_permissions_disabledreasonBoth mention hook
-
v2.1.236
Hooks and Ctrl-C go quiet once shutdown has started
Both mention hook
-
v2.1.236
Shutdown seals transcript writes and gives SessionEnd hooks more time
Both mention hook