Cancel Recurring Contribution activity should has a source record id
Method CRM_Contribute_BAO_ContributionRecur::cancelRecurContribution()
creates new activity with type "Cancel Recurring Contribution". Field source_record_id should contains id of recurring contribution but it doesn't
// current, invalid
'source_record_id' => CRM_Utils_Array::value('source_record_id', $activityParams),
// fixed
'source_record_id' => $dao->recur_id,