DenverCoder1 / DenverCoder1/github-readme-streak-stats
[Bug]: Streak count not consistent, algorithm sometimes counts off-days randomly
- Dominant language
- PHP
- Stars
- 7.1k
- Forks
- 1.8k
- Avg merge
- 9d 6h
- Merged PRs (30d)
- 2
Description
**Describe the bug**
The streak count sometimes counts the days I did not make any contributions on Github randomly. One day it decides to not count, say, July 17th, and then another day passes and suddenly it counts off-days into the streaks which artificially boosts the count up.
**To Reproduce**
I have found no way to manually reproduce the bug, this is a behavior that can only be observed time to time. However you can observe this behavior on my profile.
1. Visit: https://github.com/oswwwaldo
2. My current streak is counted at 31, from July 17th to August 16th.
3. I did not make any contributions on Github on July 19th, so the accurate count would be 28.
**Expected behavior**
For the streak counter to count only days that are counted as active on the Github contributions graph, or at the very least remain consistent in its count. It adds the extra days (July 17th, 18th and 19th) sometimes and then doesn't count them later on.
I can't imagine what might be causing this, I thought of maybe time zones but I can't really see that being the issue.
**Screenshots**
**Desktop:**
- OS: Windows 11
- Browser: Microsoft Edge
- Version: Version 151.0.4129.86
**Notes:**
If this issue remains open and persists, I'll update the images section with a screenshot showing that the count will change from
Jul 17 - Aug 16
To
Jul 20 - Aug 16
THIS ISSUE IS NOT related to #919
No contribution activity was recorded on Jul 19th in my instance so it should have reset my streak.
Contributor guide
Research direction
Start by comparing the reported profile's streak range with the GitHub contributions graph, especially the missing activity on July 19 and the later shift from July 17 to July 20. No source file, test, or reproducible trigger is identified, so first isolate whether the inconsistency can be reproduced and whether timezone or contribution-fetching behavior is involved. Done means inactive days consistently reset the streak.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100