I have added the cbactivity content plugin to multiple kinds of pages and it was working fine until the recent major version update.
One page type was JEvents Event pages. The only way to make the comments unique to the event was to change the ArticleId (now ContentId) to a combination of ev_id and repeat_id because all events can be repeats. I had to change plugins/content/cbactivitybot/cbactivitybot.php to handle a string instead of integer.
I had to make some changes for the major version update to still work but I could correctly display previously stored comments. But now the unique asset string was being ignored when storing comments.
It has taken me days to dig thru what was happening where, and I found a fix that works for me. I knew this unique asset string would have to be stored in form's action, and indeed, I see you are storing an encoded version of the correct string - but you are not ever using it!
In plug_cbactivity/library/Controller/CommentsController.php function save() , I added:
$asset = StringHelper::decodeString( $this->input->getString( 'asset', '' ) );
and then used that $asset in $row->setAsset() ( if it exists) . I hoping that has not messed up comments within CB itself.
Hope this helps anyone with similar problems.