Since we determined that we shouldn't depend on ORES in T359050: Investigate hard ORES dependency for AutoModerator pilot, we should run our score fetching and revert code from jobs.
We can use ORES as a template since it is already working well at scale:
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/ORES/+/refs/heads/master/includes/Services/FetchScoreJob.php
Note that ORES fetches the score from a job and then runs a hook that provides the score. If we create a near-identical job + hook, it will make implementing ORES as a soft dependency (to avoid requesting the same score twice) an easier optimization in the future. In this arrangement, our revert code would be run from an implementation of our hook that provides the score.