safer caching, and reenabling async caching

tested with email reports and regular reports locally, and should prevent future bugs of the same type in the future