zing
zing copied to clipboard
Submitting translations removes quality check submissions
When a unit contains submissions related to changes in quality checks (mute/unmute), these are properly reflected in the timeline.
However, when a new translation is provided (including an empty string), quality checks for that unit are deleted, and with that, due to the ON DELETE CASCADE
behavior, the Submission
s for the unit are deleted as well. After this, the timeline no longer reflects the past changes to muting/unmuting quality checks.
Changing the ON DELETE
behavior to SET NULL
wouldn't help because we need to have access to the quality check name, which is in the now-removed QualityCheck
. We can alternatively denormalize the check name into Submission
, but we should be aware that that requires increasing the size of the submissions table for a limited use case, plus schema and data migrations.