AmadeusITGroup / otter

The Otter project is a highly modular framework whose goal is to provide a common platform to accelerate and facilitate the development of runtime customizable Angular based Web Applications
https://amadeusitgroup.github.io/otter/
BSD 3-Clause "New" or "Revised" License
51 stars 38 forks source link

[Feature]: Implementing Deadlock Detection Mechanism for Rule Execution #2494

Open impy88 opened 6 days ago

impy88 commented 6 days ago

Context

Hello,

We need to implement a mechanism for detecting deadlocks during rule execution. This occurs when a rule triggers and the application responds by requesting the rules to be executed again.

Proposal

Our expectation is that rules should operate continuously; however, if the same rule executes more than a specified number of times (N) with performing the same operation, it should raise an exception and stop executing that rule but continue to others. This exception should include debug information, such as the fact name and, if possible, a trace.

This solution could significantly enhance the stability and robustness of our user interface, especially in cases of poorly written code or unexpected scenarios.