Keeping self-replicating nanobots in check

EDIT: after reading a comment by Thomas Kwa, I feel my idea probably isn’t necessary. Checksums (plus error correction code) are probably enough. :/​

This is a random unimportant idea to prevent a grey goo scenario, where self replicating nanobots accidentally go out of control and consume everything.

My idea is that self replicating nanobots should never replicate their “DNA,” or self replication instructions. Instead, each nanobot can only “download” these self replication instructions from a higher level nanobot.

I’m not sure if this idea is new.

Hierarchical mutation prevention

Every complex thing that self replicates, from humans to bacteria to viruses to computer viruses, have some kind of instruction, be it DNA or computer code, that relies on some general purpose interpreter, be it gene expression or code execution. This is probably the case for self replicating nanobots too.

The self replicating nanobots should never replicate their self replication instructions, but receive new copies from a “master nanobot” which uses one “master copy” to create new copies.

To ensure a mutated master copy can never create another master copy, the master copy has a different format. For example, the master copy might be a set of instructions for outputting a normal copy.

When a new “master nanobot” is built, and needs a new master copy, it must get its master copy from a bigger, second order master nanobot. This is a ” nanobot,” which uses a ” copy” of the instructions, to mint master copies of the instructions.

In this way, no copy of the instructions can create another copy at the same level of itself. It can only create copies on a lower level. So if the self replication instructions mutate anywhere, the mutated version cannot sustain itself. The self replication instructions are “downloaded, not replicated.”

Conclusion

In theory, this is safer than having the self replicating nanobots check their instructions for mutations, since a large mutation might disable the checking process while preserving the self replication process. This hierarchical mutation prevention system only breaks if a large mutation creates an entirely new process of replicating the instructions, which seems less likely.

This idea isn’t very important, because I feel an AGI that’s so good at engineering (and inventing) that it can make self replicating nanobots, can probably think of this. The humans using it are probably wise enough to ask for solutions to the problem.