WTH am I expected to spell out entity names?

Or rather, WTH does so much depend on entity IDs.

For me, the lack of semantic features is the biggest showstopper for automating more in my home. There are groups, there are areas, some custom Lovelace cards that allow entity ID wildcards, but most examples of automations, cards etc. show concrete entity names spelled out (and generating a list of entities dynamically is only possible through experimental features, very limited entity ID wildcard matching, or not at all). Perhaps I’m not representative because I’m just beginning to set up my HA and it doesn’t matter for a more stable setup, but I really do not want to list all my smart locks, window sensors, … etc. And I also don’t want to create groups for them for a certain use case.

I want dashboard cards that show and automations that refer to “all my <device type> <sensor type> entities [<in a certain area or zone>]”. All my Aqara window sensors’ battery levels, all my smart lock lock states, all window contact states upstairs etc. Listing individual entities, sure, maybe for things like the oven range, the fireplace, … but not for those “mass” devices.

Labels seem a pretty obvious way to improve things, combined with the ability to do a selection based on multiple label values (logical AND), the point is that I want to configure the labels in an entity- or device-centric way. Bonus points for inheriting device labels in the respective entities, and for allowing to automatically attach labels based on properties or other labels (e.g., assigning a label based on a device model).

As an aside, I really don’t want anything to depend on entity IDs, so wildcard selection (like supported by the auto-entities card) is a bit of an anti-pattern IMHO. Establishing a consistent naming scheme that is also pleasant to use requires a lot of thought, and prefix/substring/suffix matching suffer from ambiguity traps.