An end user should not have ‘allow control of all devices’; that is a highly privileged role. CTI enabled, UCM End User, phones supporting connected transfer, and phones supporting rollover is what users should be assigned.
As for call histories: CUCM does not synchronize or centralize this. Each endpoint stores it locally (ie it must be registered to see the call at all) and chooses what to log. I’m not aware of a document that specifies the behavior here but I doubt you have missed a config setting. You could open a TAC case pointing out the difference in behavior but it will be a steep hill to climb if the DE seems that it’s working as designed.