scriptOutcome method

void scriptOutcome(
  1. PresentationOutcome outcome
)

Queues an outcome for the next deliver, applied synchronously before the handle is returned.

This models core rejecting a trigger outright — an unknown campaign key, an invalid config, a frequency gate that answers immediately. The plugin gets back an already-settled presentation, which is the whole point of deliver being total: one caller code path either way.

For an outcome that arrives later (a dismissal, a deferred verdict), don't script it — deliver normally and call settle when the scenario says so.

Implementation

void scriptOutcome(PresentationOutcome outcome) => _scripted.add(outcome);