I think there are more issues waiting to be discovered. For example, partially translated page shows up like this. This is an example of “The Monastic Law: how monastic communities should live” in Chinese. I don’t think I was the translator, I have no recollection of translating that. It’s quite probable that the previous translator translated earlier draft of the essay. With the new additional segments, previously untranslated segments would have English text instead. But now it becomes something like this
I think we should get forum moderator to move all these data structure related issues into a thread of its own and not distract the purpose of this thread, which is about the new 
3 Likes
This is a main site bug/regression instead of a Bilara v2 bug (although due to a related change) and those have all been in separate threads, so I made a request to move it for consistency and it has now been moved! Thank you to the mods!
Great observation; indeed it seems to have the same root cause as the other (variants) two (blurbs) regressions you found and a third (references) found by Charles.
Thanks again for finding all these and reporting them!
Aka the “Vinaya Guide” in Chinese, found at https://suttacentral.net/vinaya-guide-brahmali?lang=zh. The code for this page is different than variants and references as this is a static page and the logic is purely localization key to translation mapping. So the resulting bug must be in how the localization code treats empty string / blank translations, or rather how it doesn’t handle that case as it hadn’t existed before. And indeed your screenshot shows not just the Vinaya page with raw localization keys like vinaya:39 but also the top bar menu with interface:overview.
Also I’m not sure if you were aware of this, but you can also see browser console warnings when there’s a missing translation key. On this page I get:
missing translation key interface:overview
missing translation key interface:palitipitaka
missing translation key interface:overview
missing translation key autocomplete:change
missing translation key vinaya:14
missing translation key vinaya:23
[...]
missing translation key vinaya:72
missing translation key viewoption:showIllustrationsTitle
missing translation key publication:titleDescription
missing translation key publication:translationSubTitle
missing translation key publication:licenseDescription
missing translation key autocomplete:change
Which are produced by this line. It took me a bit to figure out how/why the English fallback values got overwritten by "" as this case is a bit different: the key-value pairs are merged earlier in the logic. The difference in the merge is subtle, but "" will override the English fallback, while previously there was no entry at all (no key) in a partial translation, so there was nothing for it to be overridden by.
This might have functioned differently if the JSON null were used instead of "". Although I still think a partial revert to the previous format (no key) might make more sense.
For now, I wrote up a small fix for this in: fix: show fallback lang when interface translation is blank by agilgur5 · Pull Request #3747 · suttacentral/suttacentral · GitHub.
It was merged on Friday and released soon thereafter, so you can already see the fix in prod.
5 Likes
Thank you very much for the work. 
3 Likes