This is so strange. I have a long-running flow in Prod that has a simple expression to update a date field on a SP list and it works.
if(
equals(items('Apply_to_each_-_Outcome')?['ArtifactStatus']?['Value'],'In Review'),
utcNow(),
''
)

I do the same exact thing on another flow and it fails...

Error Text: The runtime value '""' to be converted doesn't have the expected format 'String/date'.
I don't know why it isn't like the null value in this context. I've looked at other threads and they suggest the same formula, I've tried passing in null variables, and all sorts off different things. As best I can tell it seems like it thinks it is undefined instead of null, but I have no idea why it would do that even when I hardcode in null.