For background, I primarily do work for pharmaceutical companies, where they say "you should have some level of anxiety when you are working in production environments".
Often, I have to create a list of PI tags, but there may be errors in the spreadsheet without me knowing. The only way to know would be to publish as a create and let the process error out halfway through the list.
Usually, if there is an error somewhere in the list, there is probably a problem with the entire list, including the PI tags you just created in production. But now you have to go back and either delete PI tags in a production environment (not allowed), or go through and edit tags already in production. The latter of which is captured in the audit log and could appear superfluous at best, or suspicious at worst, in the event of an audit.
You can already do the inverse: Type out a list of PI tags and then make sure they exist by executing a "retrieve". But doing this with "retrieve" would result in many errors. Regardless, this is an operation that is considered "safe" and does not affect the production environment at all. But you cannot go the other way and "check/verify" your list against the tags currently in PI to make sure there are no duplicates or any other errors that would conflict with tag creation.
For all of my folks out there with software engineering backgrounds: I would consider this similar to the Compile vs Execute/Run buttons.