Imagine this as a scenario:
you write some code to work with the standard out-of-the-box process model.
Then you need to later run this code using a different process model (or changes are made to whatever process model you are using). With this new process model / changes to your existing process model you happen to have a new callback sequence, and that callback sequence happens to be named exactly the same as some other sequence in your client sequence file (that you wrote with no intention of it being a callback override).
Now, when you try to run your client sequence file, you will either get errors because the callback parameters do not match up (for this random sequence that wasn't supposed to be a callback override).
Granted this can be avoided by having good naming conventions for sequences in your client sequence file and any process model callbacks you add, but sometimes you are not in control of one or either of those.
I suggest adding a property of a sequence that flags it as "not available to be used as a callback override" -- this way you can configure all your "never intended to be a callback override" client sequence file sequences as such, and you won't end up in this trap.
Something like this:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I'm declining this idea due to lack of community support.