← Back to Archive

Assemblies break where parts do not

Mates, references, and the fragility of relationships between files.

Assemblies break where parts do not because a mate belongs to neither part on its own. It is a stored relationship between two of them, and that relationship can fail even when both parts, opened alone, are perfectly correct. A part file can be entirely valid, every feature calculating cleanly and every dimension exactly as intended, and still cause a dozen broken mates the moment it is opened inside the assembly that references it, because the specific face, edge or point that another file was counting on has moved.

A relay handoff between two good runners

Two sprinters running relay legs can each be running a perfectly correct race, with good form and good pace. The handoff between them only succeeds if both are inside the same narrow exchange zone at the same moment, moving at matching speed, so that one hand meets the other exactly where and when it needs to. If the incoming runner changes their stride pattern in training, covering the same distance in the same time but reaching the exchange zone half a stride earlier than before, the baton can be dropped or missed, even though either runner watched alone would look completely fine.

An assembly mate depends on that kind of matched relationship, and a part edited safely on its own can arrive at the assembly half a stride early in precisely the same way.

Mates written against named faces

An assembly file holds links to its parts, together with a set of mates that describe how the linked parts should sit relative to one another: this face flush against that one, this hole's axis aligned with that one, this edge a fixed distance from that edge. Every mate is written against a specific, named piece of geometry inside a specific part. If that face is deleted, moved or replaced by a differently shaped one during an ordinary edit, the mate has no way of knowing that something equivalent still exists.

The part's designer, working in isolation, cannot see which mates in which other files depend on which of their features, because that information lives in the assembly file. A change that looks completely safe from inside one part can therefore surface as a wall of broken mate errors the next time somebody opens the assembly. One clean edit to fix a problem local to one part can register as several dozen errors scattered across parts nobody touched, and that mismatch of one small edit against a screenful of red icons usually convinces a beginner they have broken something. The assembly is faithfully reporting every relationship the edit disturbed.

The same edit can also be harmless in one place and destructive in another. A feature that nothing in the assembly references can be reshaped freely, while an outwardly identical feature that a dozen mates depend on cannot be touched without consequences spreading well beyond its own file, and the part itself carries no record of who is relying on it.

Mating to references that will not move

Once the failure is understood as a broken relationship, the fix changes from a search through the edited part for a mistake that is not there into a search through the assembly for the reference each failed mate was built against. Mating to stable, deliberately chosen references, such as a part's origin planes, a named datum, or a feature unlikely to be reshaped later, instead of whichever face happened to be convenient at the time, is the habit that most reduces how often an unrelated edit ripples outward into somebody else's file. It costs a little extra care when the mate is first built, in exchange for a dependency that survives far more of the edits made to the part afterwards.

It also changes how a team assigns responsibility for a broken assembly. The useful question becomes which reference should never have been relied on so directly. A part edited correctly to solve its own problem has done nothing wrong by breaking a distant mate, since the assembly built a fragile dependency on that exact geometry long before the edit arrived, and the edit only revealed it.

Mates that are meant to be tight

Some relationships are meant to be tight and specific: a bearing seated against one exact shoulder, a pin located by one exact hole. Loosening those references to make them more forgiving would let the assembly go together in a way it was never meant to, so some broken mates are the assembly correctly objecting to a change that matters.

The aim is to recognise which relationships in a given assembly are load-bearing in that sense and deserve a tight reference, and which are incidental conveniences mated to the nearest available face because it happened to be there. One way to tell them apart is to ask whether the design would still work if that particular face were redrawn slightly; where the answer is no, the reference carries real meaning and deserves to stay tight. Those incidental ones would have been better mated to something chosen on purpose, and they are the ones that break for no good reason.

More on Teaching it