Need advice on an appliance completioin automation

So I have a simple little table top dishwasher. I am monitoring the power consumption through a smart plug. I want to make a notification that goes off when the cycle ends. the default setting on the dishwasher takes 2.5 hours to complete. All I want to do is read when the consumption goes high during the beginning cycle. then 2.5 hours later send me a notification. Ive tried the blueprint for monitoring appliances by using their power consumption over time, the only problem is that this dishwasher uses the heat from the last cycle ty dry the the dishes for like 40 minutes of the running cycle, which means it stops using power for longer than any other cycle that uses power, so my base power reading would have to be greater than the drying cycle, so the blueprint would mean id have to wait almost an hour after the last cycle which is only like 30 seconds of pumping to drain. so if i use the blueprint it takes almost 4 hours to get a completion notification. so i just need to start a timer and when it goes off it sends a notification. I can use a simple delay, but im afraid that the automation will be restarted every time the power goes low. So how do i make an automation that can run once and then not give a shit until the timer is over which will also turn off the power to the appliance to stop parasitic power loads. so i could also use the power on/off setting as a condition/trigger.

If you create an automation which purely uses the power consumption you wonโ€™t even have to start anything to get it to give you notifications.

Here is a modification of something I have that you can use if you change the entities and current values to suit your setup.

alias: Dishwasher finished notification
trigger:
  - platform: numeric_state
    entity_id: sensor.dishwasher_power_current_consumption
    above: 5
    for: '00:00:05'
action:
  - wait_for_trigger:
      - platform: numeric_state
        entity_id: sensor.dishwasher_power_current_consumption
        below: 5
        for: '00:45:00'
  - service: notify.mobile_phones
    data:
      message: The dishwasher has finished
      data:
        ttl: 0
        priority: high

the problem with this as this is kinda wht my blueprint does, is that at the end of very long cycle with no power there is a very small spike right at the end which would restart the beginning trigger. thats what makes my current automations not really worth it. I really just need a way to allow the timer to run to completion before any other automation can run again. hmm i guess i could run the thing, wait to see if there is any cycle that draws more power than any other and make a note of how long into the cycle it does, then subtract the remaining time and add that as a timer. that would stop the issue with the automation restarting every time the device uses more than 5W

So set your initial trigger to be below this power value.

Also, using the for: '00:00:05' in the trigger allows you to tune this value to eliminate spikes.

Give it a try.

I need to actually run a cycle to get some more data points. but using the UI i got a little more creative with your initial example

alias: Dishwasher finished notification
trigger:
  - type: power
    platform: device
    device_id: a11f1094ecc7577e2edacb6a876396df
    entity_id: sensor.dishwasher_current_consumption
    domain: sensor
    above: 5
    for:
      hours: 0
      minutes: 0
      seconds: 5
action:
  - wait_for_trigger:
      - type: power
        platform: device
        device_id: a11f1094ecc7577e2edacb6a876396df
        entity_id: sensor.dishwasher_current_consumption
        domain: sensor
        below: 5
        for:
          hours: 0
          minutes: 45
          seconds: 0
  - service: tts.cloud_say
    data:
      entity_id: media_player.livingroom_wall_media_player
      message: Dishwasher complete
      cache: true
  - service: tts.cloud_say
    data:
      entity_id: media_player.bedroom_wall_media_player
      message: Dishwasher complete
      cache: true

so here is my most recent attempt at a working automation using the data ive accrued so far. A little more precise.

alias: Dishwasher finished notification
trigger:
  - type: power
    platform: device
    device_id: a11f1094ecc7577e2edacb6a876396df
    entity_id: sensor.dishwasher_current_consumption
    domain: sensor
    above: 710
    for:
      hours: 0
      minutes: 0
      seconds: 0
action:
  - wait_for_trigger:
      - type: power
        platform: device
        device_id: a11f1094ecc7577e2edacb6a876396df
        entity_id: sensor.dishwasher_current_consumption
        domain: sensor
        below: 0.8
        for:
          hours: 0
          minutes: 24
          seconds: 30
  - delay:
      hours: 0
      minutes: 0
      seconds: 30
      milliseconds: 0
  - service: tts.cloud_say
    data:
      entity_id: media_player.livingroom_wall_media_player
      message: Dishwasher complete
      cache: true
  - service: tts.cloud_say
    data:
      entity_id: media_player.bedroom_wall_media_player
      message: Dishwasher complete
      cache: true