We have created a Circumstance Template and 2 definitions in it. Now a rule (Section/data transform etc) reference the definitions in its 3 versions. One is the base version, one is with definition 1 and another with definition 2. The version of the rule is picked up based on a property (version, an integer property). The definitions looks like these,
Definition 1 : Version >=3.0
Definition 2 : Version >=4.0
With the 3 versions of the same rule present during run time those are picked up according to circumstance definitions. But if one the rule is deleted (or not even created based on the definition)always the base rule is picked up, ignoring the version 1 of the rule.
For more details, please refer the attached document, it has all the steps described with screen shots.
You have to delete the Template definition i.e you have to delete CircumstanceTesting_V2 definition in your case with the Data transform which has CircumstanceTesting_V2 definition in it.
Otherwise what happens is after deleting the data transform, if the value is >= 4 which satisfies the second definition (CircumstanceTesting_v2) and the rule assembler tries to find the rule associated with this definition , since no rule is associated it picks up the base rule.