Distinguish between user changing the price vs. Epicor changing the price

I feel like this is not possible but maybe there is a way that somebody else has figured out. Currently using classic order entry and hoping to avoid any further customization to the UI at this point, but if that is the only way to do it maybe I would consider it.

If I place a BPM on the update method and check for unit price changed from any to any other, that seems to capture a bunch of different events: Epicor populating the price, the user typing in the price, the user changing something else on the order that triggers epicor to repopulate the price, like changing the order date or the quantity. Is there any way to capture ONLY when the user manually types in the price and not any of those other things? It all goes into the change log under the user’s own userid so that has not been helpful.

Shot in the dark - maybe this trick works for identifying what is changing the SO field: