ECS/MonoBehaviour Order of Execution

Should the Awake function of a monobehaviour be call before the OnUpdate of a ComponentSystem and before Entity Conversion takes place? Is there a better why than setting all the script execution order make sure this does happen?

Script Execution Order won’t help you because systems get called at different points in the player loop.

So I need to add a null check in OnUpdate

The way to ensure, you have control over ECS system execution, is to execute them manually.
Otherwise, Monobehaviour and ECS systems execution orders are not correlated in anyway.

I think simulation group which is the default destination of system already ensure it comes after all MonoBehaviour. This default suggest they want you to be able to interface from mono to ECS in the same frame but not the other way. (For that you could use intiialization group)

Based on my work, OnCreate and Covert happen either with or before Awake. I have debugged a few null ref and no value components to find that out.