I've created an update rule that updates CDO fields based on a lookup table. This lookup table takes the SFDC 18 digit values and replaces them with the actual name of one of our sales agents (ex: replace 0018A00000fXt13QAD with Jane Doe).

I've added this update rule to an existing CDO Program Canvas that updates a different field. The update rule I am referring to is the second one on the canvas. (Update Opportunity Owner). See screenshot below:

Once this is complete I want to sales agent name displayed in an email via a field merge.

However, I've come across CDO's that have entered this program as recently as 3 hours ago that do not have their fields updated. I've checked multiple CDO's and confirmed that the SFDC value does match a value in the lookup table. I'm not sure what I'm doing wrong here.

For point #1, yes, the CDO matches a SFDC ID value in the lookup table, so I don't think that is the problem.

Your next point makes a bit more sense, with regards to what I am seeing. Yes, the CDO field (Opportunity Owner) does have a value in it. It looks something like "0018A00000fXt13QAD". The article you included with your post says that "Data priority rules are not applied if the contact is updated using update rules via program build or CDO services".

As a follow up... what I built works some of the time... maybe even most of the time. But not 100% of the time like I expect.

Notice in the attached screenshot below that the records modified at 13:14 on 1/23/2019 we had the Opportunity Owner field updated properly. All the CDOs that were modified at 14:00 on the same day do not have that field updated but then, at 14:14 the records had the same field updated.

To clarify, I am not using a Lookup Table at the moment. I tried but the solution was not working for me. Instead, I created a large update rule set with conditional rules for each agent value and name.

I have created the new CDO field (Owner Name) and then a Lookup Table (Agent Name and Value). I've configured the new update rule below, but I believe it is incorrect. Can you tell me what I've done wrong here?

Alternatively, I believe I can use my existing update rule with the below configuration.

I'm not sure how to correctly configure the Lookup Table update rule and I am thinking the existing update rule with the revised configuration might work.