Ever had a Declare Expression silently not fire and you’re left wondering why?
Here’s a real head-scratcher:
Problem:
You defined a backward-chaining expression to set .CalculatedScore, but the value isn’t updating when dependencies change.
The hidden reason?
Pega won’t re-evaluate a Declare Expression unless the target property is unset or null.
That’s right:
If .CalculatedScore already has a value — even an old or incorrect one — Pega may skip running the expression altogether.
Why?
Because backward chaining only kicks in when the system is trying to access the value, and it thinks it’s already there.
How to Fix It:
Use Property-Remove before accessing the calculated property again. Or: consider switching to forward chaining if you want the expression to react to changes in source properties immediately.

