github FezVrasta/cafe-hass v0.9.0
C.A.F.E. v0.9.0

3 hours ago

Automations with two or more triggers are transpiled with the state-machine strategy, and that path was losing information in both directions. This release fixes it.

If you have a multi-trigger automation that behaved oddly, this is the release to update to — open it in C.A.F.E. and save it again to regenerate the YAML.

Bug fixes

Actions branching to several next steps now all run (#228)
A node with more than one outgoing connection only ran the first one; the rest were left as unreachable dead code. They are now emitted as a Home Assistant parallel: block and all run. Note this needed two triggers to show up — with a single trigger the other strategy already handled it correctly.

"Set Variables" nodes survive a round-trip (#212)
They came back as empty Action nodes when you re-opened an automation, silently losing their variables. The state machine writes its own bookkeeping with the same variables: key, and the two were indistinguishable on the way back in.

OR / AND condition groups keep every branch (#209)
A condition like A or B was read back as just A — the remaining branches were discarded on import.

Conditions can branch to several nodes from one output (#242)
A second connection from the same true/false handle was silently dropped and became dead code.

Triggers sharing a target no longer break each other (#241)
With one trigger fanning out to two nodes and another trigger pointing at one of them, the second trigger stopped working entirely — with no error, and a diagram that still looked correct.

Validation errors no longer outlive the node (#238)
Deleting a node that had a validation error left the error behind permanently, so saving stayed blocked with a count that no visible node explained and no way to clear it. The message now also names the offending nodes and selects the first one, instead of asking you to fix "highlighted nodes" that may be scrolled off-screen.

Other changes

  • Flows whose parallel branches re-join, or loop back on themselves, cannot be run in parallel by the state machine. Rather than silently dropping a branch, C.A.F.E. now warns and names the nodes involved.
  • current_node is reserved as a variable name — it is what the state machine uses internally, and a user variable of the same name was silently misread.
  • Fixed lint and formatting failures that had left CI red on main since v0.8.0.

Known limitations

  • Parallel branches that re-join still run the shared steps once per branch, or fall back to sequential. The state machine has no way to express a true join.
  • Conditions using complex Jinja templates do not round-trip in multi-trigger automations (#245).

Full changelog: v0.8.0...v0.9.0

Don't miss a new cafe-hass release

NewReleases is sending notifications on new releases.