To put this more concretely, if some packages I’m requiring in my init file transitively requires tramp, then I go to the package menu and install a new package, my customs file will not only have saved the new package in package-selected-packages, but also these gigantic connection-local-*-alist variables. This is just too much surprises.
Again, I think if tramp needs to cache the values of these variables, they should be written to a file in user-emacs-directory, not hacked in a customizable variable.