There has to be a better solution. We're dragging the quality of Plasma down simply because SDDM isn't on par with it. If there's no other way, hardcoded font sizes should only be present in SDDM.

I'm actually not really sure about this being a bad solution.
Hardcoding font sizes gives us total control over our environment, which might not be a bad thing in the long run (in case we want to hard-code settings that point to a .conf file, for greater versatility).
As far as the lock screen goes, if you separate the SDDM font sizes from the lock screen font sizes, there's a glaring inconsistency between them.

There has to be a better solution. We're dragging the quality of Plasma down simply because SDDM isn't on par with it. If there's no other way, hardcoded font sizes should only be present in SDDM.

I'm actually not really sure about this being a bad solution
Hardcoding font sizes gives us total control over our environment, which might not be a bad thing in the long run (in case we want to hard-code settings that point to a .conf file, for greater versatility).

What hardcoding font sizes gives us are 2 places in Plasma losing their flexibility and not taking the user's preferences into consideration = SDDM-ing it. The core reason isn't strong enough either, especially given that SDDM is not a pre-requisite for using Plasma.

As far as the lock screen goes, if you separate the SDDM font sizes from the lock screen font sizes, there's a glaring inconsistency between them.

Frankly I'd rather have inconsistency than hardcoded font sizes in Plasma.

I don't think we should use hardcoded font sizes in either place. Maybe what we should do is have both of them use font.pointSize: theme.defaultFont.pointSize + 1 (etc.). That way they will both use the same font sizes unless the user changes that. There will be some inconsistency if the user does change the font size, but that's unavoidable right now. And even if we hardcode sizes for both of them, we'd never be able to match the actual font itself in the case that the user changes it. It's currently an unsolvable problem.

Long term, what I would like to do is that when there is only a single user on the system, SDDM automatically reads font, cursor, and theme information from the user's account. For security, maybe the way this is implemented is that when that user makes any changes to those settings, they get copied into the SDDM user's home directory rather than SDDM reading from the user's home directory. This behavior should be user-configurable and able to be turned off, and automatically turn itself (with no ability to turn it back on) off when there is more than one user on the system.

Otherwise there will always be a measure of inconsistency between the lock and login screens.

I don't think we should use hardcoded font sizes in either place. Maybe what we should do is have both of them use font.pointSize: theme.defaultFont.pointSize + 1 (etc.).

Yes that was the idea in D19547, but we can't because sddm doesn't recognize theme.defaultFont.pointSize.
So the point of this patch was to hardcode them in the sddm theme and let the lock screen do its own thing.