If you are using captures() for your failure messages in your Scorecard rules, you might come across an entity that is failing a Scorecard rule, but the capture value does not appear in the Scorecard failure message, even though the rule evaluates correctly. This often occurs when multiple CQL expression checks are occurring in one Scorecard rule.
Cortex evaluates rule conditions left-to-right and stops when a condition fails.
If captures() comes after a failing condition, it will never run, so nothing is stored for the failure message.
Our recommended fix for this is to move the captures() expression to the beginning of the rule so it always evaluates.