Looking for advice on how to set up multi-step tool assembly game sequence

I am looking for the best way/library to set up multi-step assembly in unity. Think like assembling a tool. Part a needs to snap into a specific position on part b. This combined part needs to snap together with part c.
How should I go about this?

One thing I have tried is deleting and replacing. So when a touches b, make them both disappear and spawn a new object that looks like the two of them combined. This is just very cumbersome to build and looks jarring.

I’d just use a tree structure to determine part order and use gameobjects. Unless there’s loads of parts or you’re targeting very low spec devices, the performance hit will be negligible. The rest you can probably handle with simple animations rather than blinking things out of existence.

I’ve considered making a kinda of Lego-ish system where parts fit onto other parts at certain points. My idea was to put a node at the points that they connect that has information about what kind of part could fit there (if there are multiple kinds) and how it orients. If the user moves 2 parts in such a way that the nodes from both sides connect and they match data, then snap them to that position. (If they can rotate/etc, then maybe also supply some gismos to help them do that.)

I haven’t actually tried to make a system like that yet, though.