Hi @Krivatri,
sorry for coming back late. I was part of the organisation team in this event https://neoscon.io/, but I now found time to test. Again many thanks for the implementation. At the moment I am trying to understand what is going on. Here my results.
I have now a script like the one from your example in the documentation. It works, and looks like
alias: clean_update_s03
description: ""
sequence:
- variables:
s03_device_id: "{{ device_id('update.s03_firmware') }}"
- action: esphome_update_manager.clean_build_files
metadata: {}
data:
device_id:
- "{{ s03_device_id }}"
enabled: true
- action: esphome_update_manager.compile
metadata: {}
data:
device_id:
- "{{ s03_device_id }}"
enabled: false
which makes it easier for me to use my "speaking" ESP name, in this case S03. For testing and understanding, I disabled/enabled actions in the script.
In the log I get
s03
Status: success
Type: Clean Build Files
Version: 1.8.31 (ESPHome 2026.5.1)
Started: 2026-06-08T15:35:05.235098
Finished: 2026-06-08T15:35:06.388778
So compile works, except if I want to run the two services directly after each other. I see that in you demo YAML you wait a fixed time for the clean and assume an error, if the compile is not done after a certain time.
Is there a change to read actually the result of what the log is showing? Is there any sensor filled with this data for each ESP, that you update after either compile, or error of any esphome_update_manager task? If yes, one could wait for the "OK" result and than continue with the compile. And than one could have an automation, that is triggered by the "compiled ready", check for OK or false and either prepare the ESP for update on next wakeup or not.
Don't get me wrong: I think it will work with fixed time waiting, but I also think that one will use hunting edge cases, where the compile takes longer, as more than one device is compiling, or whatever else reason.
Another small issue I noticed:
I had a "Multiple update", ESP home changed from changed from 2026.5.1 t0 2026.5.3 and i made a firmware number update (Only firmware) of my ESP from 1.8.31 to 1.8.32 to see what happens. I cleaned the files, I than compiled and in the ESPHome Update Manager after the compile still was written:
2026.5.1 (1.8.31) → 2026.5.3 (1.8.31) -> so kept my 1.8.31 instead of 1.8.32
After the update, it showed everything as expected -> 2026.5.3 (1.8.32)
I do not know if this is an issue or intentionally, but if you want to check if the compile did work (next morning, befor doing the update), a "hint" what version the new compile led to would be IMHO good.
Many thanks
Juergen