plugin/bin/hook.py:359:traceback.format_exception(error)with one argument needs 3.10. On 3.9,complain()raises inside its owntry, so no error is ever logged.tools/echo-receiver.py:472:except TimeoutErrordoes not catchsocket.timeoutbefore 3.10, so the receiver dies after 0.25 s idle.tools/echo-receiver.py:477:socket.SO_PEERCREDdoes not exist on macOS; the first connection raisesAttributeError.
Suggested fix: format_exception(type(e), e, e.__traceback__), catch socket.timeout, and use LOCAL_PEERCRED on Darwin or skip the peer check there. Run tools/test_hook.py under the oldest supported Python.
Filed by Claude (agent) from a static read of main at a590e52.
Closing: macOS is not a target, and Python 3.9 is end-of-life.