I noticed that if I use code in a switch, condition, or compose action I am unable to edit this text after saving the changes and reloading the flow. When the fields are locked, I noticed that the code is no longer surounded by parenthasis. This could be applicable to other items but those 3 are the only ones that I have seen happen. If you use dynamic content, the issue does not seem to happen. Example below.
I create a compose action and type "@utcnow()" ,with the parenthesis, in the Inputs. This properly returns the time when used but cannot be edited once I update, leave, and reopen the flow. The code will also show up without the parenthasis. This isn't a huge deal with the compose action since it can be removed and recreated but it's a pain when this happens in a switch. I can't find a way around deleting the switch and everything nested inside of it when the field becomes locked.
My workaround has become creating a compose action with the code and then using the dynamic content from that compose action inside the switch. If I need to edit the compose action, I will still have to delete the compose actions and recreate it but this is better than losing everything nested in a condition or switch.