Ok, i was working on cleaning the code and i've found the reason (now it will be great to understand why :))
As i'm working with code from an open source platform, i have these lines in my example: KnowledgeAgentConfiguration aconf = KnowledgeAgentFactory.newKnowledgeAgentConfiguration(); aconf.setProperty("drools.agent.newInstance", "false"); When i remove the second line, it works (i can see the "not working" rule firing). When i put it back, the "not working" rule is not fired. I've read that this property is related to new instances of KnowledgeBase when resources changes... c&p from: http://grepcode.com/file/repository.jboss.org/maven2/org.drools/drools-api/5.0.0.M4/org/drools/agent/KnowledgeAgentFactory.java /aconf.setProperty( "drools.agent.newInstance", "true" ); // resource changes results in a new instance of the KnowledgeBase being built, // this cannot currently be set to false for incremental building/ So, why is this property changing the behaviour of the rules? -- View this message in context: http://drools.46999.n3.nabble.com/rules-users-Truth-maintenance-and-RHS-variables-tp3722632p3729035.html Sent from the Drools: User forum mailing list archive at Nabble.com. _______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users