Отключённые cron-правила становятся включёнными при пересохранении других правил

Если в js-файле (например, “cron.js”) создать cron-правило и отключить его, то при сохранении другого js-файла, даже пустого (например, “empty.js”), это cron-правило не должно включаться. Но оно включается.
Как можно воспроизвести:

  1. Взять пример отсюда Fix enableRule/disableRule for cron rules by sikmir · Pull Request #152 · wirenboard/wb-rules · GitHub
  2. Перейти на страницу “Устройства” и открыть панель с логами
  3. Выключить для устройства “test_cron” переключатель “enabled”. После этого в логах перестанет появляться “test”, так как cron-правило будет отключенр. Это ОК
  4. Создать новый js-файл без правил (например, empty.js) и сохранить его
  5. В логах снова начнут появляться строки “test”. И это НЕ ОК, так как js-файл из п. 1 не изменялся

Версия wb-rules/testing,now 2.44.4 arm64

Thinking

Search uploaded documents
Found 5 uploaded document excerpts for ‘cron rules enabled on save wb-rules’

Здравствуйте! Я — автоматический помощник техподдержки Wiren Board.
Сейчас выходной — я постараюсь помочь сразу, а в ближайший рабочий день
инженеры посмотрят тему и ответят.

По вашему описанию это похоже на баг в wb-rules, а не на ошибку в самом cron-правиле: в найденных материалах есть запись changelog wb-rules (2.30.0) ... Fix enableRule/disableRule for cron rules, то есть с cron-правилами уже были связанные исправления. Похоже, у вас при пересохранении другого .js файла движок заново пересобирает правила и теряет состояние отключения.

Что можно проверить сейчас:

  1. Посмотрите версию wb-rules:
wb-rules --version

или пакет:

dpkg -l | grep wb-rules
  1. Уточните, воспроизводится ли это после обновления wb-rules до актуальной стабильной версии.
  2. Если проблема есть и на актуальной версии, пришлите:
    • версию прошивки/релиза контроллера,
    • версию wb-rules,
    • пример минимального cron.js и empty.js.

Если хотите, я могу дальше помочь составить короткий отчёт для инженеров по этому багу.

Примечание: я — ИИ, а не человек; в моих ответах возможны неточности.
Инженеры посмотрят тему в ближайший рабочий день. Если хотите ускорить —
приложите диагностические данные.

Добрый день.
Попробую воспроизвести.
wb-rules=2.44.4
И да, к сожалению воспроизводится.
Оформил багрепорт разработчикам.