AgendaItem item = ( AgendaItem ) activation;
item.removeAllBlockersAndBlocked(agenda);
if ( agenda.isDeclarativeAgenda() && activation.getFactHandle() == null ) {
// This a control rule activation, nothing to do except update counters. As control rules are not in agenda-groups etc.
agenda.decreaseDormantActivations(); // because we know ControlRules fire straight away and then become dormant
return;
} else {
// we are retracting an actual Activation, so also remove it and it's handle from the WM.
agenda.removeActivation( (AgendaItem) activation );
}