Stale Decision Context Exception
class StaleDecisionContextException(val elementName: String, val member: String, val decisionsSince: Long) : IllegalStateException(source)
Thrown when a DecisionContext is read outside the action call that supplied it.
§4.5.3 stated the rule and the design relied on rules obeying it. The failure it prevents is silent: a policy that stashes the context in a field and reads simulationTime from a background thread, or at the next epoch, gets a well-formed number belonging to a different decision. There is nothing to notice.