Significant changes in a source message should invalidate all its translations
In bug 1977144, a Fluent source message changed from
custom-avatar-alt =
.alt = Custom avatar
to
custom-avatar-alt = Custom
without an id change or data migration.
Normally we allow source message changes with no impact on translations, as we assume that it's a typo fix or something similar, but a change like this is clearly not that.
We should have some heuristic that can notice a sufficiently significant change in a source message, and reject all of its translations when it happens.
To catch this specific case, adding/removing patterns in a Fluent message should qualify as "sufficiently significant", but we could go beyond that as well, and e.g. define some minimum edit distance in the source that would trigger rejections.
See also: #3500.
This is a bit different from #3500, though, as that's about noticing better when entities don't change.
Agreed, left that here in order not to make the problem described in #3500 worse.