A single Publish node doesn't work. The status button Topic is set to esp32/door/status with a Payload string set to null. The single Publish node has no way of knowing it should listen for the publish topic esp32/door/stat-return that comes from the ESP32 when the status button is pressed. That publish topic is sent by the ESP32 when it receives the esp32/door/status topic from the Status pushbutton. If there is a way to do that, let me know how and I will test it.
I know the Retain flag works as I have tested that. The question I have is how is that flag saved? Is it saved to the SD card each time the value changes? If I leave the house and a power failure occurs 30 minutes later, is that value correct when power comes back on the the Pi reboots?
Assume the garage door is open when the power failure occurs. When I connect 2 hours later and read the Retained flag value, will it return a message indicating the door is closed or will the message indicate the door is open?