bluewave-labs / bluewave-labs/Checkmate
Implement notifications for Maintenances
- Dominant language
- TypeScript
- Stars
- 10.8k
- Forks
- 1.2k
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 68
Description
**Is your feature request related to a problem? Please describe.**
Currently, when a monitor‘s Status Changes to "Maintenance", Checkmate does not send a notification to the notification channels.
**Describe the solution you'd like**
When creating a Maintenance window, add the Notification category to select a Notification channel and three checkboxes that look as follows:
[ ] Notify \ minutes/seconds before start
[ ] Notify at start
[ ] Notify at end
The first one will enable sending a message which says that maintenance is planned for \ and for the affected systems/monitors that were selected in the creation process.
The second one will send a message which says that the maintenance has started (at the time at which it was scheduled, obviously)
The third one is similar to the second one but gets sent at the end of a maintenance window to let users know that the maintenance has concluded.
**Describe alternatives you've considered**
Writing an announcement for each maintenance plan, start and ending but this would get very annoying over time.
**Additional context**
Sending a message at the creation of the window was my original suggestion but this wouldn’t really work as expected for repeated maintenance windows
Contributor guide
Research direction
No files or tests are named. Start by tracing maintenance-window creation, notification-channel selection, and existing scheduled notification handling; done means the three configurable notifications work for repeated maintenance windows and cover the requested start, end, and pre-start messages.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- backend-api-design, full-stack
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100