1. A computer-implemented method of operating a product configurator that comprises a constraint network having a plurality of nodes, the method comprising: receiving a first user choice during an interactive configuration session with the product configurator; retracting one or more default decisions, wherein the default decisions were automatically asserted by the product configurator before receiving the first user choice and wherein a retracting of a default decision comprises restoring a prior state of one or more affected nodes that were changed when the default decision was asserted and propagated through the constraint network; asserting the first user choice after retracting the default decisions; reasserting the default decisions after asserting the first user choice; for each default decision being reasserted, determining if there is a conflict in the constraint network; and if there is the conflict, generating and propagating a negated default decision instead of the default decision, wherein the negated default decision is a constraint that is a negation of the corresponding default decision that caused the conflict and prevents the corresponding default decision from being propagated during the interactive configuration session; wherein asserting the first user choice comprises determining one or more affected nodes of the plurality of nodes that are changed by the first user choice propagating through the constraint network; and for each affected node, storing a first prior domain state of the node and associating the first stored prior domain state with the first user choice.