This seems intentional to me. ON OPEN triggers before ON TEXT, so if you halt the opening of the window, the ON TEXT will not fire.

This makes sense: ON TEXT is not a direct representation of raw packets from your TCP connection, it is an event that fires when a line of text has been (or is being) added to a window buffer. If the window is not opening, there is no line of text being added to any buffer, so no event should fire.

If you want to handle the raw messages, you will want to look at ON PARSELINE.