Hello
I observed this behavior too while using the C# SDK.
When a module receives a twin update, a copy of the module twin is kept by the EdgeHub.
So, you are able to request your 'last' module twin on startup, even if the device is not connected to the cloud anymore.
As seen here, I actively read the module twin from the edgeHub:
Can you try this using your SDK too?