I agree with your opinion. My customers also want to add bonus freely. As you point out, the important thing is to keep bonus history (log).
Previously, I developed Point Trade plugin. This plugin supports SO bounty feature and point exchange feature between users. The most important feature of these functions is that the total point of all users does not change. In other words, points are only exchanged between users. This is also the limit of this feature. And one thing, user's points of Q2A must be able to recalculate according to certain rules. Therefore, what used the concern in development is the Q2A point re-calculation feature. If we record changes to the bonus in the history, we will be able to recalculate correctly.
I hope these things will be useful for developing New Bonus Feature.