To resolve an issue where some GH calls are timing out unexpectedly during validation, a new scheduled task was created, along with some updates to the DB models.
The new task uses the new revalidation flag on the tracking model to look up requests to see if they need to be revalidated, and rerun validation on the oldest set entry. When run, the last updated field will be updated regardless of success of validation. This will allow us to not get stuck on a single tracking request that is in a bad state potentially.
The DB model changes add 2 new fields to webhook tracking entries, allowing for tracking of if a scheduled revalidation needs to be run and how many times a given webhook validation needed to be rerun. This should give us both the flexibility to rerun as needed, manually flag errant entries, as well as capture data on how often this happens.