As mentioned, this isn't just about screen, tmux, and nohup (or
there's any other programs used in a similar context). *Any* command
run with a trailing & is commonly expected to survive logout, usually
from remote shells.
No. They get SIGHUP when you logout, and the default action for SIGHUP
is to exit.
So if programs want survive logout for whatever reason they have to
change the SIGHUP action to either a signal handler or set it to ignore.
And IMO systemd should continue to allow programs to stay around that
way in case lingering is enabled for the user.