Why must everything be YAML now? I’ve been playing with ESPHome recently, the device support/build pipeline is amazing but I really hate that it’s all built around a precarious stack of YAML with embedded C++ (no, that’s not a typo).
There’s all sorts of clever pre-processor hacks and extension points to make the YAML somewhat composable but please, just use a real programming language.