Tap “Simulate save” — toy model: with a guard, each click adds 1 pass. Without a guard, each click adds 4 (simulated cascade).
Cumulative “trigger passes” (toy)
0
public class OppTriggerHandler {
private static Boolean ran = false;
public static void run() {
if (ran) return;
ran = true;
try {
// updates that might re-fire trigger
} finally {
ran = false;
}
}
}Also consider: one-time Id sets, workflow-off patterns, and platform events — pick what matches your architecture.