Custom object process always auto-starts when the condition is to auto-start on Update, when the value of a lookup custom attribute is different than the previous one, even if the value has not changed. This occurs from both the UI and from XOG, even if the attribute is not even included in the request.
Steps to Reproduce:
- Create a master custom object (e.g.: custom_obj). Make it Event/Copy/Export/View All Enabled.
- Create a custom attribute based on a lookup (e.g.: custom_attr, based on BROWSE_INV lookup). Make it Presence Required and set an API Attribute ID.
- Create a new process based on the custom object, with an auto-start condition of ( custom_obj custom_attr != custom_obj custom_attr [Previous Value] ), with the only step to "Finish".
- Create a new custom_obj instance.
- Set a value for the custom_attr, and Save.
- The process will trigger (expected, as the custom_attr value has changed).
- Save again.
Expected Results: The process does not trigger, as the custom_attr value has not changed.
Actual Results: The process will trigger.