Новая версия движка правил

Коллеги ничего не понимаю. но у меня не работает простой скрипт по инкрементированию значения виртуального устройства по появлению

Version: 2.6.0

defineVirtualDevice("WaterCount", {
    title: "WaterCount",
    cells: {
      "HW99": {//ГВС кв99
	    type: "value",
	    value: 15,
        forceDefault: true,
	    },
      "CW99": {//ХВС кв99
	    type: "value",
	    value: 55,
        forceDefault: true,        
	    },
      "HW100": {//ГВС кв100
	    type: "value",
	    value: 34580,
        forceDefault: true,        
	    },
      "CW100": {//ХВС кв100
	    type: "value",
	    value: 32000,
        forceDefault: true,        
	    }
	}
});

function WaterCount(name, control, virt, count) {
defineRule(name, { 
  whenChanged: control, //при новом импульсе
  then: function (newValue, devName, cellName) { //выполняй следующие действия
    // прибавляем к текущему значению +1
    if (newValue) {
    	var test = dev[virt][count] + 1;
    	dev[virt][count] = test;
	    log.info("rules = " + name + "   count = " + dev[virt][count]);
    }
  }
});
}

WaterCount("CW99Count", "wb-gpio/EXT2_IN6","WaterCount", "СW99");
WaterCount("HW99Count", "wb-gpio/EXT2_IN7", "WaterCount","HW99");
WaterCount("CW100Count","wb-gpio/EXT2_IN8","WaterCount","СW100");
WaterCount("HW100Count","wb-gpio/EXT2_IN9","WaterCount","HW100");

при работе скрипта вывод ниже, что бы я не делал как бы я не обращался к виртуальному устройству

dev["WaterCount/СW99"]
dev["WaterCount"]["СW99"]

Результат работы скрипта:
2021-03-26 12:33:42rules = CW99Count count = null

При этом в соседнем файле скрипта нормально работают правила с другим виртуальным устройством определенном в другом скрипте.

например

defineVirtualDevice("Termostat", {
    title: "Termostat",
    cells: {
      // =============== Прихожая теплый пол
      "R01-TS16-1-mode": {//режим 0-ручной 1-по расписанию
	    type: "switch",
	    value: false,
	    },
      "R01-TS16-1-setpoint": {//уставка
	    type: "range",
	    value: 25,
        max: 30,
        readonly: false
	    },
      "R01-TS16-1-lock": {//блокировка в визуализации 0-снята 1-заблокирована
	    type: "switch",
	    value: false,
	    },.......

var hysteresis = 0.5;
function Termostat(name, temp, setpoint, TS, TS_onoff) {
defineRule(name, { 
  whenChanged: temp, //при изменении состояния датчика
  then: function (newValue, devName, cellName) { //выполняй следующие действия
    if (dev[TS_onoff]) {
    	if ( newValue < dev[setpoint] - hysteresis) { //если температура датчика меньше уставки - гистерезис
      	dev[TS] = true;
    	}
    	if ( newValue > dev[setpoint] + hysteresis) { //если температура датчика больше виртуальной уставки + гистерезис
      	dev[TS] = false;
    	}
    }
    else dev[TS] = false;
  }
});
}

Termostat("R01-TS16-1", "A60-M1W3/External Sensor 1", "Termostat/R01-TS16-1-setpoint", "wb-gpio/EXT4_R3A1", "Termostat/R01-TS16-1-onoff"); // Прихожая теплый пол