🛑 The Problem
A contributor who made 1,000 commits 5 years ago is far less relevant to the current 'Resilience' of a project than a contributor who made 50 commits yesterday. If we don't account for time, our Health Scores will falsely report abandoned projects as highly resilient.
💡 The Solution
We must apply an exponential time-decay formula to a contributor's weight.
🛠️ Implementation Details
- Implement the mathematical formula:
Weight = InitialValue * Math.exp(-lambda * timeElapsed).
- Define the half-life (e.g., 180 days). This means a commit made 6 months ago is worth exactly half of a commit made today.
- Apply this multiplier to the raw commit counts before passing them into the Bus Factor and Maintenance algorithms.
✅ Acceptance Criteria
Ready to tackle this? Comment .take below to get automatically assigned!
🛑 The Problem
A contributor who made 1,000 commits 5 years ago is far less relevant to the current 'Resilience' of a project than a contributor who made 50 commits yesterday. If we don't account for time, our Health Scores will falsely report abandoned projects as highly resilient.
💡 The Solution
We must apply an exponential time-decay formula to a contributor's weight.
🛠️ Implementation Details
Weight = InitialValue * Math.exp(-lambda * timeElapsed).✅ Acceptance Criteria
Ready to tackle this? Comment
.takebelow to get automatically assigned!