I have no idea how to make this work, I need my level to finish generating before the level scans, otherwise there is no “obstacles” and my pathfinding is completely useless.
I have not used recast graphs before, but maybe try
AstarPath.active.Scan() after generating the level
though this can be quite time intensive for some types of graph
also if the level generates the same way each time you can look into saving and loading graphs
Just like @ConfusedIntern said. But you also likely want to disable A* Inspector → Settings → Scan On Awake to avoid scanning twice.