Broken system after interrupted upgrade to F38

I was following the official cli upgrade instruction to upgrade my laptop from Fedora 37 to 38 and was in the phase where the upgrades are actually installed (the big animated loading screen), when my laptop decided that it overheated and needed to force turn off (it has never done this before).
After this, the display manager doesn’t seem to load (no login screen), but switching to a different tty and logging in on the console works. At least a partial upgrade seems to have been done as grep complains about egrep being obsolescent, which it didn’t to in F37.

I tried to just manually restart the upgrade following the normal instructions but sudo dnf system-upgrade download --releasever=38 fails saying

Error:
 Problem: The operation would result in removing the following protected packages: grub2-tools-minimal, systemd, systemd-udev
(try to add '--skip-broken' to skip uninstallable packages)

Can anyone help me at least bring back the display manager?

And yes, of course I didn’t think of making a btrfs snapshot beforehand.

Your priority list should be: 1) reduce chances of repeat overheating, 2) backup important files, and 3) try to recover the system.

Laptop overheating is often due to accumulated dust (or in parts of N. America, recent wildfire smoke). The standard fix is too open the case and use “canned air” to blow dust off fans and heatsink fins, maybe with a vacuum cleaner running nearby so the dust doesn’t settle where it can get back into your laptop.

You may want to make a backup of important files by booting the Live Fedora 38 Installer and copying them to an USB drive before attempting repairs.

I appreciate your help, but the computer really isn’t the problem. The laptop is clean and cool

I found my solution in this Reddit thread.

tldr;

dnf remove --duplicates --releasever=38 --allowerasing
dnf distrosync --releasever=38 --allowerasing
dnf reinstall "kernel*"

Those 2 statements are at direct odds with each other.
I always suggest going with the option that prevents a possible repeating problem rather than assuming it won’t ever happen again.

You could have a rare case of a faulty sensor, but you should consider if there
are areas where cooling may not be adequate. Upgrading SSD often runs into
problems as the original cooling may not be adequate for a higher capacity SSD.
Overheating is enough of a problem that you can find many apps to display
temperature values. It is worth checking to see if any sensors seem out of line
with the general trends.