I followed the steps that you outlined above, and used the sample code you provided, and the event node worked fine for me. Specifically, these are the exact steps that I followed:
Created a new code First Person project.
Built the project in Visual Studio.
Opened the project in the Editor.
Added a new Actor class to the project named MyActor.
Closed the Editor.
Added the code you provided to the new actor class.
Built the project in Visual Studio.
Opened the project in the Editor.
Created a new Blueprint derived from MyActor.
Right-clicked in the event graph of the new Blueprint and typed “My Event”.
The My Event node was visible and could be selected/added to the event graph.
Do you see anything I am doing differently from what you are doing?
Then I thought maybe it has to do with existing objects. So I saved the blueprint, added MyOtherEvent, and recompiled in the editor. Then neither “My Event” nor “My Other Event” were present in the context menu. Then I shut down the editor, and started it again from Visual Studio. After VS recompiled then both events showed up.
Yes, and I have also observed that hot reload removes existing events too. So not only does it not work, it further breaks existing events if you add a new one.
This does indeed appear to be a new issue related to Hot Recompiling in the Editor. I was able to see the same results that you described when I performed a Hot Recompile instead of shutting down the Editor and building in Visual Studio. I have entered a ticket for this issue to have it investigated further (UE-6944).