I think this is something where the application author is going to have to consider all the possible failure modes and decide what makes sense in their case. What it ultimately comes down to is the following: "if I can't have what I really want [unlimited entropy, instantly] what do I want to happen instead?" You have a few different options: potentially poor entropy, denial of service, etc., and you have to balance between them. The answer will frequently vary even between different usages in the same application.
However, the dearth of entropy on startup is a real problem unless you have a working HWRNG and applications really should take that into consideration.