opensearch-project / opensearch-metrics

OpenSearch Metrics
https://metrics.opensearch.org
Apache License 2.0
2 stars 4 forks source link

[FEATURE] Maintainer dashboard #57

Open dblock opened 1 month ago

dblock commented 1 month ago

Is your feature request related to a problem?

  1. We have maintainers that have not been active for over a year listed in MAINTAINERS.md across repos that may give the impression the folks in the list are engaged.
  2. Some people were assigned to repos as maintainers during the fork and have moved on.

What solution would you like?

  1. A metrics dashboard that shows repos, maintainers, their affiliation, and last time they contributed.
  2. A way to see maintainers that are MIA for a very long time, sorted by when they contributed last.
  3. A bot that opens PRs moving maintainers that have not contributed for X time to emeritus.

Acceptance criteria:

[ ] Maintainers status should be continued if maintainers continue to committing, reviewing PR or other kinds of contributing. [ ] https://github.com/opensearch-project/opensearch-metrics/issues/57#issuecomment-2254312652

getsaurabh02 commented 1 month ago

Thanks @dblock for opening this up. I agree this will be super useful for maintaining active working group maintainers for all repos. Adding @prudhvigodithi @bshien who will be helping take this forward in near time.

prudhvigodithi commented 1 month ago

[Triage]

Thanks, @dblock. I assume the consideration for 'contributions' here refers to committing code within the last X time period before moving to the emeritus section.

  1. We can have the MAINTAINERS.md for each repo transformed and indexed to the metrics cluster.

  2. For each user alias, we can get the total contributions using API https://api.github.com/repos/opensearch-project/opensearch-metrics/contributors and contributor latest commit date using the API https://api.github.com/repos/opensearch-project/opensearch-metrics/commits?author=prudhvigodithi&per_page=1 (committer date).

  3. Once we have the above data, we can have a visualization to display the repos, maintainers, their affiliation, total contributions and last time they contributed.

  4. A process can that can query the cluster to get the information if not contributed for X time (based on the committer date) and raise a PR to update the MAINTAINERS.md, codeowners, later an admin should update the collaborators section to baseline the repo.

getsaurabh02 commented 3 weeks ago

@bshien Lets think of having sectional layout in the same Ops Board&_a=(description:'OpenSearch%20Ops%20Metrics',filters:!(),fullScreenMode:!f,options:(hidePanelTitles:!f,useMargins:!t),query:(language:kuery,query:''),timeRestore:!t,title:'OpenSearch%20Ops%20Metrics',viewMode:view)) and group related metrics together, such as for Issues, PRs, Contributions, Code Coverage, Integ Tests and so on. Having one board will be easy to maintain and use.