I think I found the main problem (among others): At the end of Runtime.persistent_insert_rule (agnostic.py), the case of having no-changes-made-but-some-disabled is conflated with no-changes-made-and-none-disabled.
Code snippet: changes = self._safe_process_policy_update(rule, policy_name) if len(changes) > 0: ... ...
# change not accepted means it was already there raise exception.PolicyRuntimeException( name='rule_already_exists')
I think I found the main problem (among others): persistent_ insert_ rule (agnostic.py), the case of having no-changes- made-but- some-disabled is conflated with no-changes- made-and- none-disabled.
At the end of Runtime.
Code snippet: process_ policy_ update( rule, policy_name)
changes = self._safe_
if len(changes) > 0:
...
...
# change not accepted means it was already there PolicyRuntimeEx ception(
name=' rule_already_ exists' )
raise exception.