Yeah, so my magic keys all resolve to an alias under the hood which is a guid in most cases. I basically hold a separate value in the component which holds the guid. On any changes, I resolve it and put the result in a display value for the user.
Currently quite stuck to my own package