I can use list membership as a trigger in a workflow to assign specific tasks to users when a contact gains an association label for the first time, but I've run into this problem:
We have an association label for contacts who are supposed to receive billing information for a specific client. We have contacts who are associated to multiple clients (deals) and are supposed to receive billing info for some and not others. When they are moved to a billing role on an additional deal, we need to assign specific tasks to specific users that include information about who got billing permissions and for which client (deal), but we can't use list membership to trigger this because these contacts are already part of the billing list because of other deals. Likewise, each deal usually has more than one billing contact, so we can't count on something that only looks at whether the deal uses this label either.
For properties, I've been able to build workflows that can assign a task to any user telling them what the old value was, what the new value is, and what they need to do about the change, including if a value was cleared. I'd love the find a way to do this with associatinon labels, even if it requires building complex workflows as we've done for properties.
It would look something like having the ability to create tasks with tokens:
{contact} was given the {association label} role for {deal name}. Take actions xyz...
For client {deal name}, {contact}'s roles have been changed from {former association labels} to {current association labels}
The following permissions were removed from {contact} for client {deal name}: {removed association labels}