Skip to content

Conversation

@functionzz
Copy link
Collaborator

Summary

This PR addresses Part 2 of the Community Health OKR where we change completion metrics to exclude pretranslations, which will provide a more accurate picture of if a project/locale is finished being localized.

The new completion formula is as follows:
total == approved + warnings instead of total == approved + pretranslated + warnings.

Changes to the missing_strings formula are also noted.
missing_strings == total - approved - pretranslated instead of
missing_strings == total - approved - pretranslated - warnings - errors.

@codecov-commenter
Copy link

Codecov Report

❌ Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 77.81%. Comparing base (8225644) to head (f2590a1).
⚠️ Report is 3 commits behind head on main.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@flodolo
Copy link
Collaborator

flodolo commented Jan 31, 2026

Let's wait for @mathjazz, but I have a feeling this might be going in the wrong direction.

The goal is to stop counting pretranslated strings towards the completion level, i.e. not display a project as 100% if there are pretranslated strings. Not to change the underlying values.

Take French for example:

  • translated: 73845
  • pretranslated: 19
  • warnings: 5
  • errors: 0
  • missing: 59

I never noticed we don't count warnings as translated, but that's not a problem for this work.

Thunderbird has 2 warnings, but it's showing up as 100%. That's correct.
Mozilla Accounts CMS has 1 pretranslated string out of 101, and showing up as 100% (it should be 99%).

@functionzz
Copy link
Collaborator Author

I think I understand what you are saying here - the displays are what we want to change over the values themselves. The problem is, we also need to assign is_complete to projects and locales. If the display says 100% yet is_complete is false, some confusion may arise.

@mathjazz
Copy link
Collaborator

mathjazz commented Feb 2, 2026

The current formula is: total = translated + pretranslated + warnings + errors + missing. Each of the 5 translation statuses that add up to total are represented with their own color and plotted on the "pie" chart. I believe this should stay the same.

KR2 says "Stop counting pretranslations toward completion", but completion is a different thing. It's currently calculated as completion = (translated + pretranslated + warnings) / total and we want to change that to completion = (translated + warnings) / total. That's what this PR should address.

Also, given that it's practically impossible to submit a string with errors... should we drop the Errors status at some point?

@flodolo
Copy link
Collaborator

flodolo commented Feb 2, 2026

Also, given that it's practically impossible to submit a string with errors... should we drop the Errors status at some point?

Can I string with error come in from VCS, or is it rejected during import?

I would keep it around for now, to avoid adding complexity.

@mathjazz
Copy link
Collaborator

mathjazz commented Feb 2, 2026

Can I string with error come in from VCS, or is it rejected during import?

No, the same checks run on sync. If we show an error permanently, we have a bug.

I would keep it around for now, to avoid adding complexity.

I would just file an issue - it would come in handy design-wise if we were to introduce a new status.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants