This is just an architecturally ugly part of the engine to do with welds.
There are ways this could potentially be solved but they all come with such significant performance or memory overhead that it’s unlikely most developers would prefer that over having to deal with this edge case.
The recommended solution is to use WeldConstraint instead of Welds for new work where you want to explicitly specify joints, as WeldConstraint is designed to not have the same issue.