Outcome of evaluate_effects: the phase’s decision plus taints emitted
by any plugin steps that ran. Taints are accumulated even when the
phase ultimately denies — audit needs to see what the plugins
reported before the deny landed. Empty taints is the common case
(most steps are predicates / PDP calls, not label emitters).