Decrease potential for error notification spam
- Dominant language
- C++
- Stars
- 3.9k
- Forks
- 1k
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 127
Description
### How to use GitHub
* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are interested into the same feature.
* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
* Subscribe to receive notifications on status change and new comments.
---
## Feature request
**Which Nextcloud Version are you currently using:**
3.15.3
**Is your feature request related to a problem? Please describe.**
When an error causes a sync to fail and is not a one-off issue, the client will keep trying to sync and keep failing, creating an error notification for every single attempt. One notification every few seconds, sometimes faster than the timer for the notifications to disappear.
It's effectively a constant stream of messages where no information gets added that I didn't already get from the first one.
**Describe the solution you'd like**
A system like an exponential backoff function, where error messages of the same type get a shared timer that keeps increasing whenever it fires and decays when not.
E.g. after the same error message was shown two or three times, it will be suppressed for a minute. If it fires again after that minute, it gets suppressed for ten minutes. If it gets suppressed again, it gets an even higher timer, and so on. If the error message stops, the corresponding timer slowly decays. If it fires again before the timer reached zero, it gets increased again.
**Describe alternatives you've considered**
Nothing comes to mind that would allow me to temporarily disable notifications just this one type of notification.
**Additional context**

Contributor guide
Research direction
The issue names no files, tests, or entry points, so first locate where sync failures create notifications and where retry attempts are scheduled. Done means repeated errors no longer create a notification for every attempt, while suppression increases for recurring errors and decays after the error stops.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100