Prometheus label in legend is interpreted literally when == empty string

I have a Prometheus time series with a label. As it goes with Prometheus, the label can’t “not exist” but it can be the empty string. I have this label be part of a Grafana legend, like so:

({{setup}})

Now, when the setup label has an actual value, everything is well and good, but when it’s the empty string, it renders as

(setup)

(The same happens when the label isn’t defined, but that makes marginally more sense.)

I would expect it to render as

()

But, ideally, I would like it to not render at all.