Therefore, tools themselves need to follow concrete rules about their operation if they assist in the design or verification process of production code. They should always err on the side of caution, only proceeding with removing human interaction if there is a complete guarantee that it does not introduce new errors, or conceal existing ones.