afterSave event not fired on joinTable

I am using CakePHP 3.6.15 with lifecycle callbacks.

I have Model A and Model B with belongsToMany association using the Model C as joinTable.

When I do a save on model A which modifies content of model C (add data, for example) the afterSave event of model C is never fired. But if I add data directly on model C and then call save on the model, the afterSave event is fired.

Is this the normal behavior? I think yes. So, how can I fire afterSave event on model C when the data of this model is modified, even if the change is done by saving on another model?

Possibly this is a case for belongsToMany through?

https://book.cakephp.org/4/en/orm/associations.html#using-the-through-option

Just an untested guess

Yes! I have this option configured but still not works

How about using afterSaveCommit() https://book.cakephp.org/4/en/orm/table-objects.html#aftersavecommit

This could get you the entire saved package instead of the individual entities. Then you could do the steps you need