The issue turned out to be this code that was present in one of my performance config patches:
Any time Translate.Text() was called, it would permanently delete the dictionary.dat file until the dictionary got published again.
Seems like you have directly created a language version of an item before adding the new language in Sitecore system settings.
You need to follow the below steps to add a language to Sitecore system settings:
In the Content Editor, go to /sitecore/System/Languages.
Right-click and then click Insert, Language.
In the Add a New Language dialog box, in the ...