Idea Summary
APEX_ERROR.ADD_ERROR seems to trigger a"hidden" rollback later in the process. So it cannot (or should not) be used for processes which can be "partially successful", like processing a batch of changes.
It would be useful to be able to add messages (including errors but possibly also success messages) to be displayed in APEX, but without impacting the transaction.
Preferred Solution (Optional)
One possible way would be to add a parameter like “trigger_rollback”, which defaults to true, but can be set to false.
Another way would be a separate, more “neutral”, API to add positive or negative messages to be displayed - without implicit transaction handling.