just recently I ran into the issue again, that the naming code is actually executed before CatalogItemInitialization populates the provisioning object with the user provided data. Also, during VM naming the requester is always EVM-SuperAdministrator.
I would like to understand why this part of Automate always runs prior to the actual Catalog item entry point. This way is confusing and requires the actual naming code to be put into a different stage of the provisioning state machine (I usually put it into CustomizeRequest which has the provisioning object fully populated).
Maybe this design would make more sense to me, if I would better understand the rational behind it.