I think its kind of like when in Clojure, you only activate validation on the boundaries of your program in production, and disable the validation in the internals of the program.
Because a factory would still test its input, or the input would have been tested by the supplier.
Because a factory would still test its input, or the input would have been tested by the supplier.