Write a decision rule that returns null as a decision object.
Run the workflow(registration/enrolment/encounter) that invokes the rule written in step 1 on the android app.
If the rule is written in the old style then the app will crash but if the rule is written in a new style then the rule will be ignored silently and there will be a cryptic error in RuleFailureTelemetry.
Expected Behaviour
This is an error that we can easily validate so we should notify the implementer using rule failure telemetry with a clear message that their rule returns null object so they can fix their rule. Right now the app behaviour is to crash(if old rule) or ignore silently and give cryptic null pointer error message in rule failure telemetry(if new rule).
Reproduction steps
Expected Behaviour This is an error that we can easily validate so we should notify the implementer using rule failure telemetry with a clear message that their rule returns null object so they can fix their rule. Right now the app behaviour is to crash(if old rule) or ignore silently and give cryptic null pointer error message in rule failure telemetry(if new rule).
See RuleEvaluationService.js
Error