Climate.set_temperature service not working correctly for ecobee

According to this documentation the climate.set_temperature service supports setting the hvac_mode. But when I try it with my Ecobee device it doesn’t work.

This post reports a similar issue for another thermostat

Here’s my action:

service: climate.set_temperature
data:
  temperature: 74
  hvac_mode: cool
target:
  entity_id: climate.my_ecobee3
enabled: true

I’m testing using “Run Actions”, so it’s not related to the trigger. Here’s the Trace:

Executed: August 13, 2022 at 4:45:47 PM
Result:
params:
  domain: climate
  service: set_temperature
  service_data:
    temperature: 74
    hvac_mode: cool
    entity_id:
      - climate.my_ecobee3
  target:
    entity_id:
      - climate.my_ecobee3
running_script: false
limit: 10

But my thermostat ends up in heat_cool mode with max temp 79 and min temp 63. It is overriding the thermostat settings, just not to the requested state - before running the action it was in heat_cool with limits 63 and 74. I don’t know where those limits came from. When I change the target temp to 73 the new max temp becomes 78, so it’s like it’s setting the max to target + 5.

Finally, if I do it from Services in Developer Tools instead of Run Action from my Automation I get the exact same result:

service: climate.set_temperature
data:
  temperature: 73
  hvac_mode: cool
target:
  entity_id: climate.my_ecobee3

As a workaround I’m calling set_hvac_mode first followed by set_temperature without any hvac_mode, which works, but it seems like there is either a bug or the documentation is wrong

Yes Confirmed the same annoying behavior