Factoring out common behaviour for (async) factsheet updater.