Page MenuHomePhabricator

Improve translation workflow for sites with rapid language update needs
Open, Needs TriagePublic


Translation workflow was the biggest pain point of fixcopyrightwiki. The workflow was something like

  • add / tweak English version in git
  • translate in
  • maintainers manually export to gerrit once a day via script
  • merge patch after legal review (of certain languages)
  • LocalisationUpdate runs once a day (except on weekends - T203737) and copies from git to target wiki

For a campaign that's rapidly changing in the last days before the vote, this is excruciatingly slow (about a day to go live if the gerrit export and L10nUpdate are well coordinated, about two days if they aren't). Especially so for English so people edit it in the wiki DB directly, which causes all translations of that message to revert to English - oops. (I'm not entirely sure if that's due to fallback order, as in T3495, or due to LocalisationUpdate skipping messages where a local override exists and is different.) Also the whole thing is somewhat fragile (as shown in T204040: Outdated message stuck on fixcopyrightwiki).

We need to come up with a better workflow that allows near-realtime update of translations while stills makes it possible to hold back changes in select languages for review.

Event Timeline

I agree with everything except:

while stills makes it possible to hold back changes in select languages for review.

It is not clear to me why people advocate for pre-review. It does not scale and I have not seen evidence of it bringing additional value to overcome the delays. It can be considered anti-wiki (although, I believe some wikis have pre-review with flagged revs). It seems much more natural to make it easy and fast to fix things once noticed, and improve automated checking to exclude certain kind of issues altogether.

These translations were used to send emails to MEPs by the thousands. An incorrect or even just embarrassingly unprofessional translation could be a major problem there.

A somewhat related problem is translating MessMessage messages: people do that on Meta with Translate, but that works for that wiki only, not on the wikis where the message is sent, so the process for sending translated messages is super messy, and it's not possible to improve the translation once sent. That could be solved with some kind of cross-wiki Translate functionality, and maybe that would be a better match than git here as well. (That would mean that if a review workflow is needed, that would have to be implemented in Translate, but it already sort of has review functionality for proofreading so it would not be that much of a stretch.)