Do not let off-schedule check-ins mark the monitor as OK
- Dominant language
- Python
- Stars
- 44.8k
- Forks
- 4.9k
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 624
Description
There is a scenario in the current implementation of Crons monitors where we probably should not be letting the user know "everything is okay"
Imagine a crontab monitor configured as `0 * * * *`. This cron monitor should run on the hour every hour.

What is happening here?
* The first checkin happens at `12:00`. This is on time and successful
* The second run happens at `1:00`. This is on time and successful.
* There are now five additional checkins which are sent **before** the next expected checkin at `2:00`.
### Current world
Right now record these as simply "Okay". The monitor is successful and in the UI you can see all these additional checkins.
### Proposed world
If I have a monitor that runs once an hour, **it may be crucial for me that it ONLY runs once per hour**. This scenario is an error.
We should warn the user that they are **sending unexpected checkins**.
### Technical implementation proposal
Instead of recording each subsequent checkin that is before the next expected checkin, we can bucket these with the most recent checkin and simply record that they happened. We can also update the status of the monitor to be `extranious_checkins` or something like that.
This additionally helps us **reduce the number of rows** within the `monitorcheckin` table, which is something we are currently keeping an eye on, since we are currently receiving many extraneous checkins.
Contributor guide
Assessment
This issue has not been assessed yet.