There’s been some changes to how Part surfaces work. You can read about it here and in the linked articles.
When moving parts via scripts, you might be able to use Workspace.JoinToOutsiders to get them to weld to touching parts. I’d recommend creating weld instances between parts from the script explicitly, to get exact control over which parts do and don’t weld together.