The current name ShouldRun may indicate that the implementation should take into account ConditionMode (Include vs Exclude). But in fact, the implementation shouldn't check the ConditionMode as the adapter itself inverts the ShouldRun based on ConditionMode.
The API seems to be confusing on its current form.