Some odd errors on start up : when is Time.now() guaranteed to be valid?

Hi,

I'm seeing some really weird errors on device when compared to sim that I have finally traced to Time.now() being invalid. EG: The error is that it is not a Time.Moment!

How far into the lifecycle do I need to go before that is no longer the case?

Thanks,
G