The old method of creating a file with “touch /forcefsck” should still work on modern systems even though it is a hangover from the old sysvinit days, however it obviously relies on the root partition being mountable in order to read that flag.
I have found a new method mentioned on lists.fedoraproject.org which I can confirm works perfectly on Fedora(30).
At the grub boot menu, use “e” to edit the boot entry to be used, and at the end of the boot parameter line add fsck.mode=force , this will fsck all the filesystems which is useful if the root partition was not mountable at boot time.
Posted here for my later reference as it is the sort of thing I will need again.