Skip to content

Community Health Score Dashboard#4189

Merged
mathjazz merged 56 commits into
mozilla:mainfrom
functionzz:chs_dashboard
Jun 30, 2026
Merged

Community Health Score Dashboard#4189
mathjazz merged 56 commits into
mozilla:mainfrom
functionzz:chs_dashboard

Conversation

@functionzz

@functionzz functionzz commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

Community Health for Pontoon is currently manually managed via a series of scripts and Google Sheets by TPMs. This dashboard is meant to offload manual script running and give clearer pictures on community health.

The backend consists of a cron job that creates a snapshot of the current CHS state, with several variables tracked. This automation is run monthly, on the first of each month.

The snapshot, called LocaleChsSnapshot is then displayed thru various formats, namely the CHS Dashboard, Insights (per locale) and Global Insights (all locales).

TODO

  • Implement cron job with full data parity to existing scripts
  • Implement dashboard (confirm visuals with team)
  • Consider edge cases of various forms
  • Implement Locale,Global Insights graphs
  • Implement Locale,Global Insights changes

Comment thread pontoon/insights/chs.py Outdated
Comment thread pontoon/insights/chs.py Outdated
Comment thread pontoon/insights/chs.py Outdated
Comment thread pontoon/insights/chs.py Outdated
@functionzz functionzz changed the title Community Health Dashboard Community Health Score Dashboard Jun 4, 2026
@codecov-commenter

codecov-commenter commented Jun 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 86.27451% with 56 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.16%. Comparing base (6727ff3) to head (dfb2fc8).
⚠️ Report is 6 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.

@functionzz functionzz marked this pull request as ready for review June 24, 2026 03:56
@functionzz functionzz requested a review from mathjazz June 24, 2026 03:57

@mathjazz mathjazz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work. Left a couple more nits.

Two more questions:

  1. Are we adding tooltips to the table header? At least for "Contr. 1" and "Contr. 2" we probably should.
  2. Should we add "All" / "Overall" to the "Team community health score" chart and only enable that option by default, same as on the pretranslation charts?

Comment thread pontoon/insights/templates/insights/config.html Outdated
Comment thread pontoon/insights/templates/insights/config.html
class="button"
id="edit-config"
href="{{ url('pontoon.insights.config') }}"
>Edit Configuration

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not clear from the position of this button and the copy on the page it leads to, that it impacts the spreadsheet and the first chart.

Perhaps we should move them both to the same panel?

See this quick mockup, which obviously needs work:

Image

@functionzz

functionzz commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator Author
  1. Tooltips are fine, I'll to all headers for consistency
  2. I'll use All as an average to the team community health chart for consistency with the other 2 charts.

@functionzz functionzz requested a review from mathjazz June 29, 2026 17:53

@mathjazz mathjazz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work!

I feel like a title for the spreadsheet is missing. Something along the lines of "(Team) Community health activity"?

Comment thread pontoon/insights/templates/insights/insights.html Outdated
@functionzz functionzz requested a review from mathjazz June 30, 2026 13:10
@mathjazz

Copy link
Copy Markdown
Collaborator

I feel like a title for the spreadsheet is missing. Something along the lines of "Community health activity"?

Thanks for the update! Note that this one is still missing.

@mathjazz mathjazz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked at most of the code and left comments inside. Please let me know if you have any questions.

One additional change we should do is create a more user friendly view when no locales are selected (just show the title of the table, "Please select communities to track" text and the EDIT CONFIGURATION button). You can also file a followup issue for this.

We should also (but this should be a followup for sure) drop the standalon configuration page and instead show locale configuration in the panel, with a UX pattern similar to Request more projects / new languages.

Comment thread documentation/docs/dev/deployment.md Outdated
Comment thread documentation/docs/dev/deployment.md Outdated
Comment thread pontoon/base/models/user_profile.py Outdated
Comment thread pontoon/base/forms.py Outdated
Comment thread pontoon/settings/base.py Outdated
Comment thread pontoon/insights/static/js/insights.js Outdated
Comment thread pontoon/insights/static/js/insights.js Outdated
Comment thread pontoon/insights/templates/insights/widgets/locale_list.html Outdated
Comment thread pontoon/insights/templates/insights/widgets/locale_list.html Outdated
@functionzz functionzz requested a review from mathjazz June 30, 2026 16:55

@mathjazz mathjazz left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work - let's land this!

Please file the followup issues mentioned above:
#4189 (review)

@mathjazz mathjazz merged commit 3222ef3 into mozilla:main Jun 30, 2026
5 checks passed
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