End Activity incorrectly updating jobhead UD Columns SOMETIMES

I have something very strange going on and I am at a loss. I have a UD Column that is updated on the MES screen after they enter a value. About half of the time after they end activity that value gets cleared to zero. I can see JobHead set correctly in the trace log and also see the data in the database. However when it gets set back to zero there is nothing in the tracelog for JobHead. I can see in the change log also it getting set and then back to zero at times. Its just making no sense to me how this can even happen and not be in the trace?

How is the UD field being updated (when it is supposed to)? UI customization, MD, or DD?