Hot reload restrictions

Are there some restrictions on when hot reload can and can’t be used? I’m seeing some really strange results when I try to do things like add/remove components from an actor in code, or change the root component. These problems go away if I shut down the editor and do a proper code build instead of a hot reload.

Are these bugs that I should log? Or are these just things you shouldn’t do when using hot reload? And if so, are these restrictions documented anywhere?

In my experience hot reload is always buggy. There are a lot of cases were it does not work correctly… Changing an enum and recompiling could break blueprints completly. Typically when i see strange stuff i just close the editor, compile and restart it again… solid as a rock.

Me too. I see really strange things as well.
Completely wrong mapped variables showing just sort of garbage values or return 0/NULL while nothing
has changed to those parts of the code.
Recompiling usually fixes this indeed.
Unfortunately this is still as of 10.4…while most of the issue I experience have been there since I started in 4.6