boostorg / boostorg/website-v2

Webpage Integration: Mailing List Activity Counting & Attribution

Open
#2,619 1 comment 0 reactions 1 assignee Claimed by @javiercoronadonarvaez View on GitHub
Dominant language
HTML
Stars
18
Forks
28
Avg merge
2d 12h
Merged PRs (30d)
77

Description

## Goal

Count each member's mailing list posts and attribute them to their account, so the totals can be used as a contribution source.

---

## Scope

Backend only: a daily sync of recent mailing list activity, and correct attribution of post counts to member accounts.

---

## Background

HyperKitty is the source of truth for mailing list activity, and post counts per commit author.

An address is linked to a member through the existing commit author claim flow, including any lingering commit author created by the sync, so no new matching mechanism is needed.

[Spike findings](https://github.com/boostorg/website-v2/issues/2540)

---

## Acceptance Criteria

### Counting

- A member's mailing list total is every post made from any address they have claimed, across the full history of the list.
- Posts to all Boost lists count towards the total.
- Every post counts. There is no filtering by message content, length, or sender type.
- A member's total is resolvable on demand without re-reading HyperKitty.
### Attribution

- Activity from an address that has not been claimed does not count towards any member.
- When a member claims a Commit Author Email, their total is recalculated to include that address's activity.
- When a Commit Author Email is unlinked from an account, the total is recalculated to exclude it.
- A member with several claimed addresses has the activity from all of them counted towards a single total.
### Sync

- A new management command runs daily and counts only activity that is new since the last run, then updates the affected totals. It does not re-read the full history.
- The existing full-history sync command continues to run.
- A failed sync does not block any tasks and leaves existing counts in place.
---

## FE/BE Actions

| Action | Notes | URL |
|---|---|---|
| Run daily mailing list sync | Scheduled task, no user-facing surface | |

---

## Out of Scope

- Achievements and badges of any kind, including tier thresholds and awarding logic
- Any profile or front-end display of mailing list activity
- Achievement notifications and emails
- Counting any other contribution type
- Changes to the existing full-history sync command
- Any change to how commit authors are claimed
- Storing or displaying mailing list message content

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.