Here is how I’m doing it (there are probably better ways)
[{"id":"689198e50c691b4a","type":"server-state-changed","z":"7b6b22ddc514d7d7","name":"State Changed on HACS","server":"3aa13fed.bf745","version":5,"outputs":2,"exposeAsEntityConfig":"","entityId":["update.alexa_media_player_update","update.apexcharts_card_update","update.badge_card_update","update.card_mod_update","update.clock_weather_card_update","update.drayton_wiser_integration_for_home_assistant_update","update.eufy_security_update","update.favicon_changer_update","update.govee_lan_control_update","update.govee_update","update.hildebrand_glow_dcc_update","update.layout_card_update","update.local_tuya_update","update.metrology_metro_fluent_windows_themes_by_mmak_es_update","update.mini_graph_card_update","update.mushroom_update","update.node_red_companion_update","update.presence_simulation_update","update.smartthinq_lge_sensors_update","update.sonoff_lan_update","update.vertical_stack_in_card_update"],"entityIdType":"list","outputInitially":false,"stateType":"str","ifState":"off","ifStateType":"str","ifStateOperator":"is_not","outputOnlyOnStateChange":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":150,"y":60,"wires":[["abf331f41553ab08","84af7e91d86133e9"],[]]},{"id":"abf331f41553ab08","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"Install Update {{ topic }}","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"update","service":"install","areaId":[],"deviceId":[],"entityId":["{{ topic }}"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":450,"y":40,"wires":[[]]},{"id":"aedbf473e018ca0a","type":"server-state-changed","z":"7b6b22ddc514d7d7","name":"All State Changed on HACS","server":"3aa13fed.bf745","version":5,"outputs":1,"exposeAsEntityConfig":"","entityId":["update.alexa_media_player_update","update.apexcharts_card_update","update.badge_card_update","update.card_mod_update","update.clock_weather_card_update","update.drayton_wiser_integration_for_home_assistant_update","update.eufy_security_update","update.favicon_changer_update","update.govee_lan_control_update","update.govee_update","update.hildebrand_glow_dcc_update","update.layout_card_update","update.local_tuya_update","update.metrology_metro_fluent_windows_themes_by_mmak_es_update","update.mini_graph_card_update","update.mushroom_update","update.node_red_companion_update","update.presence_simulation_update","update.smartthinq_lge_sensors_update","update.sonoff_lan_update","update.vertical_stack_in_card_update"],"entityIdType":"list","outputInitially":false,"stateType":"str","ifState":"","ifStateType":"str","ifStateOperator":"is_not","outputOnlyOnStateChange":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":160,"y":480,"wires":[["2bd95fce9ba0a378"]]},{"id":"2bd95fce9ba0a378","type":"debug","z":"7b6b22ddc514d7d7","name":"debug 63","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":400,"y":480,"wires":[]},{"id":"0dfeb7ba42156762","type":"change","z":"7b6b22ddc514d7d7","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"topic","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":760,"y":460,"wires":[["13199e88ddc27762"]]},{"id":"13199e88ddc27762","type":"debug","z":"7b6b22ddc514d7d7","name":"Test Topic Output 2","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":950,"y":460,"wires":[]},{"id":"bbd15dec6f7115ef","type":"comment","z":"7b6b22ddc514d7d7","name":"All Log, wait for time overnight, restart","info":"sensor.{{ phone }}_do_not_disturb_sensor","x":710,"y":520,"wires":[]},{"id":"dff0d5e95d959d7f","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"Notify PocoX5 Working","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"notify","service":"mobile_app_andypocox5","areaId":[],"deviceId":[],"entityId":[],"data":"{ \"message\": msg.topic, \"title\": \"HACS Updates Available\"}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":150,"y":400,"wires":[[]]},{"id":"c3bdb6881b475167","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"Restart Not Needed - Update Complete","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"logbook","service":"log","areaId":[],"deviceId":[],"entityId":[],"data":"{\"name\":\"HACS Update Completed\",\"message\":msg.topic, \"entity_id\":\"update.hacs_update\"}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":300,"wires":[["404ddebe8b6bc0a1"]]},{"id":"8fa1ce62f43e3bd5","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"Restart Needed - Waiting For Reboot","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"logbook","service":"log","areaId":[],"deviceId":[],"entityId":[],"data":"{\"name\":\"HACS Update - Reboot Needed\",\"message\":msg.topic, \"entity_id\":\"update.hacs_update\"}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":950,"y":200,"wires":[[]]},{"id":"964c164b7d757ba2","type":"api-current-state","z":"7b6b22ddc514d7d7","name":"","server":"3aa13fed.bf745","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"{{ topic }}","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":670,"y":100,"wires":[["36c11b8052f04cf2"]]},{"id":"da7f5c2e07fa352a","type":"debug","z":"7b6b22ddc514d7d7","name":"Restart Not Needed","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":660,"y":260,"wires":[]},{"id":"f5435aa762342947","type":"change","z":"7b6b22ddc514d7d7","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Restart Needed","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":380,"y":180,"wires":[["8fa1ce62f43e3bd5","49455eae9a8f9b54","aced84595de280bc"]]},{"id":"36c11b8052f04cf2","type":"switch","z":"7b6b22ddc514d7d7","name":"","property":"data.attributes.release_summary","propertyType":"msg","rules":[{"t":"eq","v":"<ha-alert alert-type='error'>Restart of Home Assistant required</ha-alert>","vt":"str"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":190,"y":180,"wires":[["f5435aa762342947"],["3827b63a50f0dd7c"]]},{"id":"3827b63a50f0dd7c","type":"change","z":"7b6b22ddc514d7d7","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"No Restart","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":400,"y":220,"wires":[["da7f5c2e07fa352a","c3bdb6881b475167"]]},{"id":"84af7e91d86133e9","type":"delay","z":"7b6b22ddc514d7d7","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":480,"y":100,"wires":[["964c164b7d757ba2"]]},{"id":"49455eae9a8f9b54","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"Set Helper to Indicate Reboot Needed","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"input_boolean","service":"turn_on","areaId":[],"deviceId":[],"entityId":["input_boolean.hacs_restart_needed"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":910,"y":160,"wires":[[]]},{"id":"aced84595de280bc","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"persistent_notification","service":"create","areaId":[],"deviceId":[],"entityId":[],"data":"{\t \"message\":msg.topic,\t \"title\":\"HACS Update Waiting for Reboot\"\t}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":940,"y":240,"wires":[[]]},{"id":"404ddebe8b6bc0a1","type":"api-call-service","z":"7b6b22ddc514d7d7","name":"","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"persistent_notification","service":"create","areaId":[],"deviceId":[],"entityId":[],"data":"{\t \"message\":msg.topic,\t \"title\":\"HACS Update Processed\"\t}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":680,"y":360,"wires":[[]]},{"id":"3e8d6d624e3c10fc","type":"group","z":"7b6b22ddc514d7d7","name":"Restart Home Assistant at 2am if needed","style":{"label":true},"nodes":["5f68acbede5fadda","941e7f35e88e8998","45ccd8316429b2fa","7066d0d656f53bc2","cd6035e558855333","9e0858e47cd9f964","4294cd3aad61dfda","d5985e5b73635f48"],"x":34,"y":571.5,"w":1032,"h":209.5},{"id":"5f68acbede5fadda","type":"switch","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"on","vt":"str"},{"t":"eq","v":"off","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":310,"y":620,"wires":[["45ccd8316429b2fa"],[]]},{"id":"941e7f35e88e8998","type":"bigtimer","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","outtopic":"","outpayload1":"on","outpayload2":"off","name":"At Time 2am","comment":"","lat":"51.453990","lon":"0.138320","starttime":"120","endtime":"135","starttime2":"0","endtime2":"0","startoff":"0","endoff":"15","startoff2":0,"endoff2":"0","offs":0,"outtext1":"","outtext2":"","timeout":1440,"sun":true,"mon":true,"tue":true,"wed":true,"thu":true,"fri":true,"sat":true,"jan":true,"feb":true,"mar":true,"apr":true,"may":true,"jun":true,"jul":true,"aug":true,"sep":true,"oct":true,"nov":true,"dec":true,"day1":0,"month1":0,"day2":0,"month2":0,"day3":0,"month3":0,"day4":0,"month4":0,"day5":0,"month5":0,"day6":0,"month6":0,"day7":0,"month7":0,"day8":0,"month8":0,"day9":0,"month9":0,"day10":0,"month10":0,"day11":0,"month11":0,"day12":0,"month12":0,"d1":0,"w1":0,"d2":0,"w2":0,"d3":0,"w3":0,"d4":0,"w4":0,"d5":0,"w5":0,"d6":0,"w6":0,"xday1":0,"xmonth1":0,"xday2":0,"xmonth2":0,"xday3":0,"xmonth3":0,"xday4":0,"xmonth4":0,"xday5":0,"xmonth5":0,"xday6":0,"xmonth6":0,"xday7":0,"xmonth7":0,"xday8":0,"xmonth8":0,"xday9":0,"xmonth9":0,"xday10":0,"xmonth10":0,"xday11":0,"xmonth11":0,"xday12":0,"xmonth12":0,"xd1":0,"xw1":0,"xd2":0,"xw2":0,"xd3":0,"xw3":0,"xd4":0,"xw4":0,"xd5":0,"xw5":0,"xd6":0,"xw6":0,"suspend":false,"random":false,"randon1":false,"randoff1":false,"randon2":false,"randoff2":false,"repeat":false,"atstart":false,"odd":false,"even":false,"x":130,"y":620,"wires":[["5f68acbede5fadda"],[],[]]},{"id":"45ccd8316429b2fa","type":"api-current-state","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"HACS Restart Needed?","server":"3aa13fed.bf745","version":3,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","entity_id":"input_boolean.hacs_restart_needed","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":370,"y":680,"wires":[["cd6035e558855333"],[]]},{"id":"7066d0d656f53bc2","type":"inject","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":140,"y":700,"wires":[["45ccd8316429b2fa"]]},{"id":"cd6035e558855333","type":"api-call-service","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"Reset Helper","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"input_boolean","service":"turn_off","areaId":[],"deviceId":[],"entityId":["input_boolean.hacs_restart_needed"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":570,"y":680,"wires":[["d5985e5b73635f48"]]},{"id":"9e0858e47cd9f964","type":"api-call-service","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"homeassistant","service":"restart","areaId":[],"deviceId":[],"entityId":[],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":940,"y":720,"wires":[[]]},{"id":"4294cd3aad61dfda","type":"inject","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":660,"y":740,"wires":[["9e0858e47cd9f964"]]},{"id":"d5985e5b73635f48","type":"api-call-service","z":"7b6b22ddc514d7d7","g":"3e8d6d624e3c10fc","name":"","server":"3aa13fed.bf745","version":5,"debugenabled":false,"domain":"persistent_notification","service":"create","areaId":[],"deviceId":[],"entityId":[],"data":"{\t \"message\":\"Restart of Home Assistant for HACS Update\",\t \"title\":\"HACS Update Processed\"\t}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":800,"y":640,"wires":[["9e0858e47cd9f964"]]},{"id":"3aa13fed.bf745","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30,"areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true}]