Contribution campaign is not propagated to activity campaign under certain circumstances
When existing contributions with a non-completed activity status are updated via e.g. API3, and no explicit campaign_id
parameter is set in the API request (because the campaign has already been set previously), campaign_id
is not propagated to the created contribution activity. This is a common code path e.g. in CiviBanking.
This was introduced in 5.29 with this, so it's not a particularly recent regression.